checkCPMVector() actually checks CPM_VECTORS now
This commit is contained in:
parent
5b6f6756a2
commit
87d4c75712
5 changed files with 120 additions and 111 deletions
|
|
@ -112,7 +112,7 @@ function ROM(parmsROM)
|
|||
|
||||
Component.subclass(ROM);
|
||||
|
||||
ROM.FAKECPM_VECTORS = [0x0000, 0x0005];
|
||||
ROM.CPM_VECTORS = [0x0000, 0x0005];
|
||||
|
||||
/*
|
||||
* NOTE: There's currently no need for this component to have a reset() function, since
|
||||
|
|
@ -337,16 +337,16 @@ ROM.prototype.addROM = function(addr)
|
|||
if (this.fWritable && addr == 0x100) {
|
||||
/*
|
||||
* Here's where we enable our "Fake CP/M" support, triggered by the user loading a "writable ROM" image
|
||||
* at offset 0x100. Fake CP/M support works by installing HLT opcodes at well-known hard-coded CP/M offsets
|
||||
* at offset 0x100. Fake CP/M support works by installing HLT opcodes at well-known CP/M addresses
|
||||
* (namely, 0x0000, which is the CP/M reset vector, and 0x0005, which is the CP/M system call vector) and
|
||||
* then telling the CPU to call us whenever a HLT occurs, so we can check PC for one of these vectors.
|
||||
* then telling the CPU to call us whenever a HLT occurs, so we can check PC for one of these addresses.
|
||||
*/
|
||||
for (i = 0; i < ROM.FAKECPM_VECTORS.length; i++) {
|
||||
this.bus.setByteDirect(ROM.FAKECPM_VECTORS[i], CPUDef.OPCODE.HLT);
|
||||
for (i = 0; i < ROM.CPM_VECTORS.length; i++) {
|
||||
this.bus.setByteDirect(ROM.CPM_VECTORS[i], CPUDef.OPCODE.HLT);
|
||||
}
|
||||
|
||||
this.cpu.addHaltCheck(function(rom) {
|
||||
return function(addr) {rom.checkHalt(addr)};
|
||||
return function(addr) {rom.checkCPMVector(addr)};
|
||||
}(this));
|
||||
|
||||
this.cpu.setReset(addr);
|
||||
|
|
@ -360,18 +360,21 @@ ROM.prototype.addROM = function(addr)
|
|||
};
|
||||
|
||||
/**
|
||||
* checkHalt(addr)
|
||||
* checkCPMVector(addr)
|
||||
*
|
||||
* @this {ROM}
|
||||
* @param {number} addr (of the HLT opcode)
|
||||
* @return {boolean} true if special processing performed, false if not
|
||||
*/
|
||||
ROM.prototype.checkHalt = function(addr)
|
||||
ROM.prototype.checkCPMVector = function(addr)
|
||||
{
|
||||
if (this.dbg) {
|
||||
this.println("CP/M vector " + str.toHexWord(addr));
|
||||
this.cpu.setPC(addr); // this is purely for the Debugger's benefit, to show the HLT
|
||||
this.dbg.stopCPU();
|
||||
var i = ROM.CPM_VECTORS.indexOf(addr);
|
||||
if (i >= 0) {
|
||||
if (this.dbg) {
|
||||
this.println("CP/M vector " + str.toHexWord(addr));
|
||||
this.cpu.setPC(addr); // this is purely for the Debugger's benefit, to show the HLT
|
||||
this.dbg.stopCPU();
|
||||
}
|
||||
return true;
|
||||
}
|
||||
return false;
|
||||
|
|
|
|||
|
|
@ -50,7 +50,7 @@ m.save=function(){var a=new I(this);K(a,0,[this.j,this.L,this.P,this.M,this.R,th
|
|||
m.restore=function(a){var b=a[0];this.j=b[0];this.L=b[1];this.P=b[2];this.M=b[3];this.R=b[4];this.N=b[5];this.S=b[6];this.ba=b[7]&65535;H(this,b[8]);Ac(this,b[9]);b=a[1];this.A=b[0];this.J=b[1];sc(this,b[3]);a:{b=this.D;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.aa){for(var f=0,h=Array(b.aa),g=0;g<e.length-1;)for(var k=e[g++],l=e[g++];k--;)h[f++]=l;e=h}f=b.D[d];if(!f||!f.restore(e)){t("Unable to restore memory block "+d);b=!1;break a}}b=!0}return b};
|
||||
m.pa=function(a,b,c){var d=!1;switch(b){case "A":case "B":case "C":case "BC":case "D":case "E":case "DE":case "H":case "L":case "HL":case "SP":case "PC":case "PS":case "SF":case "ZF":case "AF":case "PF":case "CF":this.T[b]=c;this.ja++;d=!0;break;default:d=this.parent.pa.call(this,a,b,c)}return d};function Dc(a){return a.L<<8|a.P}function Ec(a,b){a.L=b>>8&255;a.P=b&255}function Fc(a){return a.M<<8|a.R}function Gc(a,b){a.M=b>>8&255;a.R=b&255}function L(a){return a.N<<8|a.S}
|
||||
function M(a,b){a.N=b>>8&255;a.S=b&255}function H(a,b){a.O=b&65535}function Hc(a){return a.G&256?1:0}function Ic(a){return nb[a.X&255]?4:0}function Jc(a){return(a.X^a.fa)&16?16:0}function Kc(a){return a.G&255?0:64}function Lc(a){return a.X&128?128:0}function Cc(a){return a.oa&-214|Lc(a)|Kc(a)|Jc(a)|Ic(a)|Hc(a)}function Ac(a,b){a.G=a.X=a.fa=0;b&1&&(a.G|=256);b&4||(a.X|=1);b&16&&(a.fa|=16);b&64||(a.G|=255);b&128&&(a.X^=192);a.oa=a.oa&-513|b&512|2}
|
||||
function Mc(a,b){a.fa=a.j^b;return(a.G=a.X=a.j+b)&255}function Nc(a,b){a.fa=a.j^b;return(a.G=a.X=a.j+b+(a.G&256?1:0))&255}function gd(a,b){return a.G=a.X=a.fa=a.j&b}function hd(a,b){a.fa=a.j^b;a.G=a.X=a.j-b}function id(a,b){a.fa=b;b=(a.X=b-1)&255;a.G=a.G&-256|b;return b}function jd(a,b){a.fa=b;b=(a.X=b+1)&255;a.G=a.G&-256|b;return b}function kd(a,b){return a.G=a.X=a.fa=a.j|b}function ld(a,b){a.fa=a.j^b;return(a.G=a.X=a.j-b)&255}function md(a,b){a.fa=a.j^b;return(a.G=a.X=a.j-b-(a.G&256?1:0))&255}
|
||||
function Mc(a,b){a.fa=a.j^b;return(a.G=a.X=a.j+b)&255}function Nc(a,b){a.fa=a.j^b;return(a.G=a.X=a.j+b+(a.G&256?1:0))&255}function Oc(a,b){return a.G=a.X=a.fa=a.j&b}function hd(a,b){a.fa=a.j^b;a.G=a.X=a.j-b}function id(a,b){a.fa=b;b=(a.X=b-1)&255;a.G=a.G&-256|b;return b}function jd(a,b){a.fa=b;b=(a.X=b+1)&255;a.G=a.G&-256|b;return b}function kd(a,b){return a.G=a.X=a.fa=a.j|b}function ld(a,b){a.fa=a.j^b;return(a.G=a.X=a.j-b)&255}function md(a,b){a.fa=a.j^b;return(a.G=a.X=a.j-b-(a.G&256?1:0))&255}
|
||||
function nd(a,b){return a.G=a.X=a.fa=a.j^b}m.V=function(a){return this.la[(a&this.K)>>>this.Z].Ka(a&this.H,a)};function od(a,b){var c=b&a.H,d=(b&a.K)>>>a.Z;if(c<a.H)return a.la[d].Rb(c,b);c=a.la[d].Ka(c,b);return c|=a.la[d+1&a.Y].Ka(0,b+1)<<8}function N(a,b,c){a.la[(b&a.K)>>>a.Z].Za(b&a.H,c&255,b)}function pd(a,b,c){var d=b&a.H,e=(b&a.K)>>>a.Z;d<a.H?a.la[e].Tb(d,c&65535,b):(a.la[e++].Za(d,c&255,b),a.la[e&a.Y].Za(0,c>>8&255,b+1))}function O(a){var b=a.V(a.O);H(a,a.O+1);return b}
|
||||
function P(a){var b=od(a,a.O);H(a,a.O+2);return b}function R(a){var b=od(a,a.ba);a.ba=a.ba+2&65535;return b}function S(a,b){a.ba=a.ba-2&65535;pd(a,a.ba,b)}function T(a,b,c,d){d=d||2;a.T[b]&&(void 0===c&&(lb(a,"Value for "+b+" is invalid"),a.da()),c=!a.w.ia||a.w.Jb?q(c,d):"--------".substr(0,d),a.T[b].textContent!=c&&(a.T[b].textContent=c))}
|
||||
m.qa=function(a){this.ja&&(a||!this.w.ia||this.w.Jb)&&(T(this,"A",this.j),T(this,"B",this.L),T(this,"C",this.P),T(this,"BC",Dc(this),4),T(this,"D",this.M),T(this,"E",this.R),T(this,"DE",Fc(this),4),T(this,"H",this.N),T(this,"L",this.S),T(this,"HL",L(this),4),T(this,"SP",this.ba,4),T(this,"PC",this.O,4),a=Cc(this),T(this,"PS",a,4),T(this,"SF",a&128,1),T(this,"ZF",a&64,1),T(this,"AF",a&16,1),T(this,"PF",a&4,1),T(this,"CF",a&1,1));if(a=this.T.speed)a.textContent=this.w.ia&&this.i.Ga?this.i.Ga.toFixed(2)+
|
||||
|
|
@ -69,14 +69,14 @@ this.R;this.b-=5},function(){this.S=this.N;this.b-=5},function(){this.b-=5},func
|
|||
this.A|=16;this.b-=7;this.C&&hb(this,-2147483648)?(H(this,a),this.C.da()):this.oa&512||(this.C&&H(this,a),this.da())},function(){N(this,L(this),this.j);this.b-=7},function(){this.j=this.L;this.b-=5},function(){this.j=this.P;this.b-=5},function(){this.j=this.M;this.b-=5},function(){this.j=this.R;this.b-=5},function(){this.j=this.N;this.b-=5},function(){this.j=this.S;this.b-=5},function(){this.j=this.V(L(this));this.b-=7},function(){this.b-=5},function(){this.j=Mc(this,this.L);this.b-=4},function(){this.j=
|
||||
Mc(this,this.P);this.b-=4},function(){this.j=Mc(this,this.M);this.b-=4},function(){this.j=Mc(this,this.R);this.b-=4},function(){this.j=Mc(this,this.N);this.b-=4},function(){this.j=Mc(this,this.S);this.b-=4},function(){this.j=Mc(this,this.V(L(this)));this.b-=7},function(){this.j=Mc(this,this.j);this.b-=4},function(){this.j=Nc(this,this.L);this.b-=4},function(){this.j=Nc(this,this.P);this.b-=4},function(){this.j=Nc(this,this.M);this.b-=4},function(){this.j=Nc(this,this.R);this.b-=4},function(){this.j=
|
||||
Nc(this,this.N);this.b-=4},function(){this.j=Nc(this,this.S);this.b-=4},function(){this.j=Nc(this,this.V(L(this)));this.b-=7},function(){this.j=Nc(this,this.j);this.b-=4},function(){this.j=ld(this,this.L);this.b-=4},function(){this.j=ld(this,this.P);this.b-=4},function(){this.j=ld(this,this.M);this.b-=4},function(){this.j=ld(this,this.R);this.b-=4},function(){this.j=ld(this,this.N);this.b-=4},function(){this.j=ld(this,this.S);this.b-=4},function(){this.j=ld(this,this.V(L(this)));this.b-=7},function(){this.j=
|
||||
ld(this,this.j);this.b-=4},function(){this.j=md(this,this.L);this.b-=4},function(){this.j=md(this,this.P);this.b-=4},function(){this.j=md(this,this.M);this.b-=4},function(){this.j=md(this,this.R);this.b-=4},function(){this.j=md(this,this.N);this.b-=4},function(){this.j=md(this,this.S);this.b-=4},function(){this.j=md(this,this.V(L(this)));this.b-=7},function(){this.j=md(this,this.j);this.b-=4},function(){this.j=gd(this,this.L);this.b-=4},function(){this.j=gd(this,this.P);this.b-=4},function(){this.j=
|
||||
gd(this,this.M);this.b-=4},function(){this.j=gd(this,this.R);this.b-=4},function(){this.j=gd(this,this.N);this.b-=4},function(){this.j=gd(this,this.S);this.b-=4},function(){this.j=gd(this,this.V(L(this)));this.b-=7},function(){this.j=gd(this,this.j);this.b-=4},function(){this.j=nd(this,this.L);this.b-=4},function(){this.j=nd(this,this.P);this.b-=4},function(){this.j=nd(this,this.M);this.b-=4},function(){this.j=nd(this,this.R);this.b-=4},function(){this.j=nd(this,this.N);this.b-=4},function(){this.j=
|
||||
ld(this,this.j);this.b-=4},function(){this.j=md(this,this.L);this.b-=4},function(){this.j=md(this,this.P);this.b-=4},function(){this.j=md(this,this.M);this.b-=4},function(){this.j=md(this,this.R);this.b-=4},function(){this.j=md(this,this.N);this.b-=4},function(){this.j=md(this,this.S);this.b-=4},function(){this.j=md(this,this.V(L(this)));this.b-=7},function(){this.j=md(this,this.j);this.b-=4},function(){this.j=Oc(this,this.L);this.b-=4},function(){this.j=Oc(this,this.P);this.b-=4},function(){this.j=
|
||||
Oc(this,this.M);this.b-=4},function(){this.j=Oc(this,this.R);this.b-=4},function(){this.j=Oc(this,this.N);this.b-=4},function(){this.j=Oc(this,this.S);this.b-=4},function(){this.j=Oc(this,this.V(L(this)));this.b-=7},function(){this.j=Oc(this,this.j);this.b-=4},function(){this.j=nd(this,this.L);this.b-=4},function(){this.j=nd(this,this.P);this.b-=4},function(){this.j=nd(this,this.M);this.b-=4},function(){this.j=nd(this,this.R);this.b-=4},function(){this.j=nd(this,this.N);this.b-=4},function(){this.j=
|
||||
nd(this,this.S);this.b-=4},function(){this.j=nd(this,this.V(L(this)));this.b-=7},function(){this.j=nd(this,this.j);this.b-=4},function(){this.j=kd(this,this.L);this.b-=4},function(){this.j=kd(this,this.P);this.b-=4},function(){this.j=kd(this,this.M);this.b-=4},function(){this.j=kd(this,this.R);this.b-=4},function(){this.j=kd(this,this.N);this.b-=4},function(){this.j=kd(this,this.S);this.b-=4},function(){this.j=kd(this,this.V(L(this)));this.b-=7},function(){this.j=kd(this,this.j);this.b-=4},function(){hd(this,
|
||||
this.L);this.b-=4},function(){hd(this,this.P);this.b-=4},function(){hd(this,this.M);this.b-=4},function(){hd(this,this.R);this.b-=4},function(){hd(this,this.N);this.b-=4},function(){hd(this,this.S);this.b-=4},function(){hd(this,this.V(L(this)));this.b-=7},function(){hd(this,this.j);this.b-=4},function(){Kc(this)||(H(this,R(this)),this.b-=6);this.b-=5},function(){Ec(this,R(this));this.b-=10},function(){var a=P(this);Kc(this)||H(this,a);this.b-=10},td,function(){var a=P(this);Kc(this)||(S(this,this.O),
|
||||
H(this,a),this.b-=6);this.b-=11},function(){S(this,Dc(this));this.b-=11},function(){this.j=Mc(this,O(this));this.b-=7},function(){S(this,this.O);H(this,0);this.b-=11},function(){Kc(this)&&(H(this,R(this)),this.b-=6);this.b-=5},ud,function(){var a=P(this);Kc(this)&&H(this,a);this.b-=10},td,function(){var a=P(this);Kc(this)&&(S(this,this.O),H(this,a),this.b-=6);this.b-=11},vd,function(){this.j=Nc(this,O(this));this.b-=7},function(){S(this,this.O);H(this,8);this.b-=11},function(){Hc(this)||(H(this,R(this)),
|
||||
this.b-=6);this.b-=5},function(){Gc(this,R(this));this.b-=10},function(){var a=P(this);Hc(this)||H(this,a);this.b-=10},function(){var a=O(this);Ib(this.D,a,this.j);this.b-=10},function(){var a=P(this);Hc(this)||(S(this,this.O),H(this,a),this.b-=6);this.b-=11},function(){S(this,Fc(this));this.b-=11},function(){this.j=ld(this,O(this));this.b-=7},function(){S(this,this.O);H(this,16);this.b-=11},function(){Hc(this)&&(H(this,R(this)),this.b-=6);this.b-=5},ud,function(){var a=P(this);Hc(this)&&H(this,a);
|
||||
this.b-=10},function(){var a=O(this);this.j=Fb(this.D,a)&255;this.b-=10},function(){var a=P(this);Hc(this)&&(S(this,this.O),H(this,a),this.b-=6);this.b-=11},vd,function(){this.j=md(this,O(this));this.b-=7},function(){S(this,this.O);H(this,24);this.b-=11},function(){Ic(this)||(H(this,R(this)),this.b-=6);this.b-=5},function(){M(this,R(this));this.b-=10},function(){var a=P(this);Ic(this)||H(this,a);this.b-=10},function(){var a=R(this);S(this,L(this));M(this,a);this.b-=18},function(){var a=P(this);Ic(this)||
|
||||
(S(this,this.O),H(this,a),this.b-=6);this.b-=11},function(){S(this,L(this));this.b-=11},function(){this.j=gd(this,O(this));this.b-=7},function(){S(this,this.O);H(this,32);this.b-=11},function(){Ic(this)&&(H(this,R(this)),this.b-=6);this.b-=5},function(){H(this,L(this));this.b-=5},function(){var a=P(this);Ic(this)&&H(this,a);this.b-=10},function(){var a=L(this);M(this,Fc(this));Gc(this,a);this.b-=5},function(){var a=P(this);Ic(this)&&(S(this,this.O),H(this,a),this.b-=6);this.b-=11},vd,function(){this.j=
|
||||
(S(this,this.O),H(this,a),this.b-=6);this.b-=11},function(){S(this,L(this));this.b-=11},function(){this.j=Oc(this,O(this));this.b-=7},function(){S(this,this.O);H(this,32);this.b-=11},function(){Ic(this)&&(H(this,R(this)),this.b-=6);this.b-=5},function(){H(this,L(this));this.b-=5},function(){var a=P(this);Ic(this)&&H(this,a);this.b-=10},function(){var a=L(this);M(this,Fc(this));Gc(this,a);this.b-=5},function(){var a=P(this);Ic(this)&&(S(this,this.O),H(this,a),this.b-=6);this.b-=11},vd,function(){this.j=
|
||||
nd(this,O(this));this.b-=7},function(){S(this,this.O);H(this,40);this.b-=11},function(){Lc(this)||(H(this,R(this)),this.b-=6);this.b-=5},function(){var a=R(this);Ac(this,a);this.j=a>>8;this.b-=10},function(){var a=P(this);Lc(this)||H(this,a);this.b-=10},function(){this.oa&=-513;this.b-=4},function(){var a=P(this);Lc(this)||(S(this,this.O),H(this,a),this.b-=6);this.b-=11},function(){S(this,Cc(this)&255|this.j<<8);this.b-=11},function(){this.j=kd(this,O(this));this.b-=7},function(){S(this,this.O);H(this,
|
||||
48);this.b-=11},function(){Lc(this)&&(H(this,R(this)),this.b-=6);this.b-=5},function(){this.ba=L(this)&65535;this.b-=5},function(){var a=P(this);Lc(this)&&H(this,a);this.b-=10},function(){this.oa|=512;this.b-=4},function(){var a=P(this);Lc(this)&&(S(this,this.O),H(this,a),this.b-=6);this.b-=11},vd,function(){hd(this,O(this));this.b-=7},function(){S(this,this.O);H(this,56);this.b-=11}];
|
||||
function V(a){u.call(this,"ChipSet",a,V,32768);var b=a.model;b&&!wd[b]&&t("Unrecognized ChipSet model: "+b);this.Ra=wd[b];a.sound&&(this.W=null,window&&(this.W=window.AudioContext||window.webkitAudioContext),this.W&&new this.W);B(this)}x(V);var wd={SI1978:1978.1};m=V.prototype;m.pa=function(){return!1};
|
||||
|
|
@ -89,7 +89,7 @@ zd.prototype.wa=function(){if(this.xa){if(this.C){var a=this.C,b=this.id,c=this.
|
|||
function Ad(a,b,c,d){if(d)a.na("Unable to load system ROM (error "+d+": "+b+")");else{Xa(a.Hb,b,c);if("["==c.charAt(0)||"{"==c.charAt(0))try{var e=eval("("+c+")"),f=e.bytes,h=e.data;if(f)a.u=f;else if(h)for(a.u=Array(4*h.length),d=c=0;c<h.length;c++)a.u[d++]=h[c]&255,a.u[d++]=h[c]>>8&255,a.u[d++]=h[c]>>16&255,a.u[d++]=h[c]>>24&255;else a.u=e;a.xa=e.symbols;if(!a.u.length){t("Empty ROM: "+b);return}if(1==a.u.length){t(a.u[0]);return}}catch(g){a.na("ROM data error: "+g.message);return}else for(b=c.replace(/\n/gm,
|
||||
" ").replace(/ +$/,"").split(" "),a.u=Array(b.length),e=0;e<b.length;e++)a.u[e]=aa(b[e],16);Cd(a)}}
|
||||
function Cd(a){if(!kb(a))if(!a.H)B(a);else if(a.u&&a.D){a.A||(a.A=a.u.length);if(a.u.length!=a.A)lb(a,"ROM size (0x"+q(a.u.length)+") does not match specified size ("+("0x"+q(a.A))+")");else if(Dd(a,a.I)){var b=[];"number"==typeof a.F?b.push(a.F):null!=a.F&&a.F.length&&(b=a.F);for(var c=0;c<b.length;c++){for(var d=a,e=b[c],f=d.D,h=d.A,g=[],k=d.I>>>f.Z;0<h&&k<f.D.length;)g.push(f.D[k++]),h-=f.ma;f=d.D;d=d.A;h=0;for(e>>>=f.Z;0<d&&e<f.D.length;){k=g[h++];if(!k)break;f.D[e++]=k;d-=f.ma}}delete a.u}B(a)}}
|
||||
function Dd(a,b){if(tb(a.D,b,a.A,a.J?1:Pb)){var c;for(c=0;c<a.u.length;c++)wb(a.D,b+c,a.u[c]);if(a.J&&256==b){for(c=0;c<Bd.length;c++)wb(a.D,Bd[c],118);zc(a.b,function(a){return function(b){a.C&&(a.g("CP/M vector "+r(b)),H(a.b,b),a.C.da())}}(a));Bc(a.b,b)}return!0}return!1}Ia(function(){for(var a=A(document,"pc8080","rom"),b=0;b<a.length;b++){var c=a[b],d=y(c),d=new zd(d);eb(d,c)}});function Ed(a){u.call(this,"RAM",a,Ed);this.F=a.addr;this.A=a.size;this.u=!1}x(Ed);m=Ed.prototype;
|
||||
function Dd(a,b){if(tb(a.D,b,a.A,a.J?1:Pb)){var c;for(c=0;c<a.u.length;c++)wb(a.D,b+c,a.u[c]);if(a.J&&256==b){for(c=0;c<Bd.length;c++)wb(a.D,Bd[c],118);zc(a.b,function(a){return function(b){0<=Bd.indexOf(b)&&a.C&&(a.g("CP/M vector "+r(b)),H(a.b,b),a.C.da())}}(a));Bc(a.b,b)}return!0}return!1}Ia(function(){for(var a=A(document,"pc8080","rom"),b=0;b<a.length;b++){var c=a[b],d=y(c),d=new zd(d);eb(d,c)}});function Ed(a){u.call(this,"RAM",a,Ed);this.F=a.addr;this.A=a.size;this.u=!1}x(Ed);m=Ed.prototype;
|
||||
m.Aa=function(a,b,c,d){this.D=b;this.b=c;this.C=d;B(this)};m.wa=function(a,b){b||this.reset();return!0};m.va=function(a){return a?this.save():!0};m.reset=function(){!this.u&&this.A&&tb(this.D,this.F,this.A,1)&&(this.u=!0,this.status(Math.floor(this.A/1024)+"Kb allocated"));this.u||t("No RAM allocated")};m.save=function(){return null};m.restore=function(){return!0};Ia(function(){for(var a=A(document,"pc8080","ram"),b=0;b<a.length;b++){var c=a[b],d=y(c),d=new Ed(d);eb(d,c)}});
|
||||
function Fd(a){u.call(this,"Keyboard",a,Fd,65536);B(this)}x(Fd);Ia(function(){for(var a=A(document,"pc8080","keyboard"),b=0;b<a.length;b++){var c=a[b],d=y(c),d=new Fd(d);eb(d,c)}});function Gd(a){u.call(this,"Video",a,Gd,262144);this.Zb=a.interruptRate;this.ya=a.refreshRate||60;B(this)}x(Gd);Gd.prototype.Aa=function(a,b,c,d){this.u=a;this.D=b;this.b=c;this.C=d};
|
||||
Ia(function(){for(var a=A(document,"pc8080","video"),b=0;b<a.length;b++){var c=a[b],d=y(c),e=document.createElement("canvas");if(void 0===e||!e.getContext){c.innerHTML="<br/>Missing <canvas> support. Please try a newer web browser.";break}e.setAttribute("class","pcjs-canvas");e.setAttribute("width",d.screenWidth);e.setAttribute("height",d.screenHeight);e.style.backgroundColor=d.screenColor;e.style.height="auto";0<=oa().indexOf("MSIE")&&(c.onresize=function(a,b,c,d){return function(){b.style.height=
|
||||
|
|
@ -150,17 +150,17 @@ function le(a,b,c){var d=!0;try{b.length&&"end"!=b?c||a.g(">> "+b):(a.sa&&(a.g("
|
|||
n,void 0===f[2])a.g("begin assemble at "+Z(n.B)),a.sa=!0,G(a.b);else{var p;a.g("not supported yet");p=[];if(p.length){for(var z=0;z<p.length;z++)a.Ab(n,p[z],1);a.g(me(a,a.ka))}}break;case "b":a:{var C=f[0],v=f[1],Ea=b;if("?"==v)a.g("breakpoint commands:"),a.g("\tbi [p]\ttoggle break on input port [p]"),a.g("\tbo [p]\ttoggle break on output port [p]"),a.g("\tbp [a]\tset exec breakpoint at addr [a]"),a.g("\tbr [a]\tset read breakpoint at addr [a]"),a.g("\tbw [a]\tset write breakpoint at addr [a]"),
|
||||
a.g("\tbc [a]\tclear breakpoint at addr [a]"),a.g("\tbl\tlist all breakpoints"),a.g("\tbn [n]\tbreak after [n] instruction(s)");else{var D=C.charAt(1);if("l"==D){var Za=0,Za=Za+ke(a,a.A),Za=Za+ke(a,a.ca);(Za+=ke(a,a.I))||a.g("no breakpoints")}else if("n"==D)a.Ca=Re(a,v),a.g("break after "+a.Ca+" instruction(s)");else if(void 0===v)a.g("missing breakpoint address");else{var J=W();if("*"!=v&&(J=Y(a,v,!0),!J))break a;v=r(J.B);"c"==D?null==J.B?(Jd(a),a.g("all breakpoints cleared")):ie(a,a.A,J)||ie(a,
|
||||
a.ca,J)||ie(a,a.I,J)||a.g("breakpoint missing: "+Z(J.B)):"i"==D?a.g("breakpoint "+(Eb(a.D,J.B)?"enabled":"cleared")+": port "+v+" (input)"):"o"==D?a.g("breakpoint "+(Hb(a.D,J.B)?"enabled":"cleared")+": port "+v+" (output)"):null!=J.B&&(Yd(a,J,Ea),"p"==D?a.Ea(a.A,J):"r"==D?a.Ea(a.ca,J):"w"==D?a.Ea(a.I,J):a.g("unknown breakpoint command: "+D))}}}break;case "c":a.Fa&&(a.Fa.value="");break;case "d":a:{var $a,ab=f[0],sa=f[1],Ja=f[2],xf=f[3];if("?"==sa){var ta="";for($a in Rd)a.$a[$a]&&(ta&&(ta+=","),ta+=
|
||||
$a);ta+=",state,symbols";a.g("dump memory commands:");a.g("\tdb [a] [#] dump # bytes at address a");a.g("\tdw [a] [#] dump # words at address a");a.g("\tdd [a] [#] dump # dwords at address a");a.g("\tdh [#] [#] dump # instructions from history");ta.length&&a.g("dump extension commands:\n\t"+ta)}else if("state"==sa){var ne=bf(a.u,!0);"console"==Ja?console.log(ne):(a.Fa&&(a.Fa.value=""),a.g(ne))}else if("symbols"==sa)for(var Oc=0;Oc<a.J.length;Oc++){var Pc=a.J[Oc],cb;for(cb in Pc.xa)if("."!=
|
||||
cb.charAt(0)){var oe=Pc.xa[cb].o;if(void 0!==oe){var pe=Pc.xa[cb].l;pe&&(cb=pe);a.g(Z(oe)+" "+cb)}}}else{if("d"==ab){for($a in Rd)if(f[1]==$a){var qe=a.$a[$a];qe?(f.shift(),f.shift(),qe(f)):a.g("no dump registered for "+sa);break a}sa||(ab=a.fc||"db")}else a.fc=ab;if("dh"==ab){var re=sa,se=Ja,te="",ue=0,Q=a.ta,ua=a.W;if(ua.length){var U=+re||a.Lb,db=+se||10;isNaN(U)?U=db:te="more ";U>ua.length&&(a.g("note: only "+ua.length+" available"),U=ua.length);Q-=U;0>Q&&(null==ua[ua.length-1].B?(U=Q+U,Q=0):
|
||||
Q+=ua.length);var Qc=[];"call"==se&&(db=1E5,Qc=["CALL"]);for(void 0!==re&&a.g(U+" instructions earlier:");0<db&&Q!=a.ta;){var ve=ua[Q++];if(null==ve.B)break;var xb=W(ve.B),yf=U--,we=me(a,xb,"history",yf);(!Qc.length||0<=we.indexOf(Qc[0]))&&a.g(we);xb.sb&&(Q+=xb.sb,db-=xb.sb,U-=xb.sb);Q>=ua.length&&(Q=0);a.Lb=U;ue++;db--}}ue||(a.g("no "+te+"history available"),a.Lb=void 0)}else{var cc=Y(a,sa);if(cc){var dc=0;Ja&&("l"==Ja.charAt(0)&&(Ja=Ja.substr(1)||xf),dc=Re(a,Ja)>>>0,65536<dc&&(dc=65536));for(var Ka=
|
||||
"",zf=(dc||128)+15>>4||1,Rc="dd"==ab?4:"dw"==ab?2:1,xe=0;xe<zf;xe++){for(var ec=0,Sc=0,yb="",Tc="",sa=Z(cc.B),Uc=0;16>Uc;Uc++){var fc=a.V(cc,1),ec=ec|fc<<(Sc++<<3);Sc==Rc&&(yb+=q(ec,2*Rc),yb+=1==Rc?7==Uc?"-":" ":" ",ec=Sc=0);Tc+=32<=fc&&128>fc?String.fromCharCode(fc):"."}Ka&&(Ka+="\n");Ka+=sa+" "+yb+" "+Tc}Ka&&a.g(Ka);a.Fb=cc}}}}break;case "e":if("else"==f[0])break;var gc=1,ye=255,ze=a.V,Ae=a.Ab;"ew"==f[0]&&(gc=2,ye=65535,ze=a.mb,Ae=a.Ub);var Be=gc<<1,Ce=f[1];if(null==Ce)a.g("edit memory commands:"),
|
||||
a.g("\teb [a] [...] edit bytes at address a"),a.g("\tew [a] [...] edit words at address a");else{var hc=Y(a,Ce);if(hc)for(var ic=2;ic<f.length;ic++){var zb=Xd(a,f[ic]);if(void 0===zb){a.g("unrecognized value: "+f[ic]);break}zb&~ye&&a.g("warning: "+q(zb)+" exceeds "+gc+"-byte value");var Af=ze.call(a,hc);a.g("changing "+Z(hc.B)+" from 0x"+q(Af,Be)+" to 0x"+q(zb,Be));Ae.call(a,hc,zb,gc)}}break;case "f":We(a,f[1]);break;case "g":a:{var De=f[1],Bf=b;if(void 0!==De){var Vc=Y(a,De,!0);if(!Vc)break a;
|
||||
Yd(a,Vc,Bf);a.Ea(a.A,Vc,!0)}a.La(!0)||c||a.g("cpu busy or unavailable, run command ignored")}break;case "h":var Wc;a.w.ia?(Wc="halting",a.da()):Wc="already halted";c||a.g(Wc);break;case "i":if("if"==f[0]){var Xc;var Ab=b.substr(2),Ab=ha(Ab);Xd(a,Ab)?(c||a.g("true: "+Ab),Xc=!0):(c||a.g("false: "+Ab),Xc=!1);Xc||(d=!1);break}var Yc=f[1];if(Yc&&"?"!=Yc){var Zc=Re(a,Yc);if(void 0!==Zc){var Cf=Fb(a.D,Zc);a.g(r(Zc)+": "+("0x"+q(Cf,2)))}}else a.g("input commands:"),a.g("\ti [p]\tread port [p]"),a.g("warning: port accesses can affect hardware state");
|
||||
break;case "k":var Df=f[0];if("?"==f[1])a.g("stack trace commands:"),a.g("\tk\tshow frame addresses"),a.g("\tks\tshow symbol information");else{var $c=0,Ee=W(),Bb=W(a.b.ba);for(a.g("stack trace for "+Z(Bb.B));10>$c;){for(var La=null,Ef=256;65536>Bb.B>>>0;){Ee.B=a.mb(Bb,2);if(null==Bb.B||!Ef--)break;for(var Ff=a,jc=Ee,Fe=null,Cb=jc.B,Ge=Cb,ad=1;6>=ad&&Cb;ad++){if(2<ad){jc.B=Cb;var kc=me(Ff,jc);if(0<kc.indexOf("CALL")){var He=kc.indexOf(" ");if(Cb+(kc.indexOf(" ",He+1)-He-1)/2==Ge){Fe=kc;break}}}Cb--}jc.B=
|
||||
Ge;if(La=Fe)break}if(!La||null==La)break;var Ie=null;if("ks"==Df){var Je=La.match(/[0-9A-F]+$/);Je&&(Ie=Ye(a,Je[0]))}La=ga(La,50)+" ;"+(Ie||"stack="+Z(Bb.B));a.g(La);$c++}$c||a.g("no return addresses found")}break;case "l":if("ln"==f[0]){Ye(a,f[1],!0);break}break;case "m":a:{var va,wa=null,E=f[1];"?"==E&&(E=void 0);if(void 0!==E){var Ma=0;if("all"==E)Ma=1610481663,E=null;else if("on"==E)wa=!0,E=null;else if("off"==E)wa=!1,E=null;else{"keys"==E&&(E="key");"kbd"==E&&(E="keyboard");for(va in Rd)if(E==
|
||||
va){Ma=Rd[va];wa=!!(a.ga&Ma);break}if(!Ma){a.g("unknown message category: "+E);break a}}Ma&&("on"==f[2]?(a.ga|=Ma,wa=!0):"off"==f[2]&&(a.ga&=~Ma,wa=!1))}var Gf=0,Fa="";for(va in Rd)if(!E||E==va){var Hf=!!(a.ga&Rd[va]);if(null===wa||wa==Hf)Fa&&(Fa+=","),++Gf%10||(Fa+="\n\t"),"key"==va&&(va="keys"),Fa+=va}void 0===E&&a.g("message commands:\n\tm [category] [on|off]\tturn categories on/off");a.g((null!==wa?wa?"messages on: ":"messages off: ":"message categories:\n\t")+(Fa||"none"));Kd(a)}break;case "o":var bd=
|
||||
f[1],If=f[2];if(bd&&"?"!=bd){var cd=Re(a,bd,"port #"),dd=Re(a,If);void 0!==cd&&void 0!==dd&&(Ib(a.D,cd,dd),a.g(r(cd)+": "+("0x"+q(dd,2))))}else a.g("output commands:"),a.g("\to [p] [b]\twrite byte [b] to port [p]"),a.g("warning: port accesses can affect hardware state");break;case "p":if("print"==f[0]){$e(a,b.substr(5));break}var Ke="pr"==f[0]?1:0,Jf=1+Ke;if(a.ea)a.g("step in progress");else{var ed=W(a.b.O);switch(a.V(ed)){case 205:a.ea=Jf,Td(ed,3)}a.ea?(a.Ea(a.A,ed,!0),a.La()||(a.u&&a.u.jb(),a.ea=
|
||||
0)):af(a,Ke?"tr":"t")}break;case "r":if("reset"==b){a.u&&a.u.reset();break}fe(a,f);break;case "s":Ze(a,f);break;case "t":af(a,f[0],f[1]);break;case "u":ge(a,f[1],f[2],8);break;case "v":if("var"==f[0]){Xe(a,b.substr(3))||(d=!1);break}a.g("PC8080 version 1.21.7 ("+a.b.Ra+",RELEASE"+(mb?",TYPEDARRAYS":",LONGARRAYS")+")");a.g(oa());break;case "?":if(f[1]){$e(a,b.substr(1));break}var Db="commands:",fd;for(fd in Md)Db+="\n"+ga(fd,7)+Md[fd];qd(a)||(Db+="\nnote: frequency/history disabled if no exec breakpoints");
|
||||
$a);ta+=",state,symbols";a.g("dump memory commands:");a.g("\tdb [a] [#] dump # bytes at address a");a.g("\tdw [a] [#] dump # words at address a");a.g("\tdd [a] [#] dump # dwords at address a");a.g("\tdh [#] [#] dump # instructions from history");ta.length&&a.g("dump extension commands:\n\t"+ta)}else if("state"==sa){var ne=bf(a.u,!0);"console"==Ja?console.log(ne):(a.Fa&&(a.Fa.value=""),a.g(ne))}else if("symbols"==sa)for(var Pc=0;Pc<a.J.length;Pc++){var Qc=a.J[Pc],cb;for(cb in Qc.xa)if("."!=
|
||||
cb.charAt(0)){var oe=Qc.xa[cb].o;if(void 0!==oe){var pe=Qc.xa[cb].l;pe&&(cb=pe);a.g(Z(oe)+" "+cb)}}}else{if("d"==ab){for($a in Rd)if(f[1]==$a){var qe=a.$a[$a];qe?(f.shift(),f.shift(),qe(f)):a.g("no dump registered for "+sa);break a}sa||(ab=a.fc||"db")}else a.fc=ab;if("dh"==ab){var re=sa,se=Ja,te="",ue=0,Q=a.ta,ua=a.W;if(ua.length){var U=+re||a.Lb,db=+se||10;isNaN(U)?U=db:te="more ";U>ua.length&&(a.g("note: only "+ua.length+" available"),U=ua.length);Q-=U;0>Q&&(null==ua[ua.length-1].B?(U=Q+U,Q=0):
|
||||
Q+=ua.length);var Rc=[];"call"==se&&(db=1E5,Rc=["CALL"]);for(void 0!==re&&a.g(U+" instructions earlier:");0<db&&Q!=a.ta;){var ve=ua[Q++];if(null==ve.B)break;var xb=W(ve.B),yf=U--,we=me(a,xb,"history",yf);(!Rc.length||0<=we.indexOf(Rc[0]))&&a.g(we);xb.sb&&(Q+=xb.sb,db-=xb.sb,U-=xb.sb);Q>=ua.length&&(Q=0);a.Lb=U;ue++;db--}}ue||(a.g("no "+te+"history available"),a.Lb=void 0)}else{var cc=Y(a,sa);if(cc){var dc=0;Ja&&("l"==Ja.charAt(0)&&(Ja=Ja.substr(1)||xf),dc=Re(a,Ja)>>>0,65536<dc&&(dc=65536));for(var Ka=
|
||||
"",zf=(dc||128)+15>>4||1,Sc="dd"==ab?4:"dw"==ab?2:1,xe=0;xe<zf;xe++){for(var ec=0,Tc=0,yb="",Uc="",sa=Z(cc.B),Vc=0;16>Vc;Vc++){var fc=a.V(cc,1),ec=ec|fc<<(Tc++<<3);Tc==Sc&&(yb+=q(ec,2*Sc),yb+=1==Sc?7==Vc?"-":" ":" ",ec=Tc=0);Uc+=32<=fc&&128>fc?String.fromCharCode(fc):"."}Ka&&(Ka+="\n");Ka+=sa+" "+yb+" "+Uc}Ka&&a.g(Ka);a.Fb=cc}}}}break;case "e":if("else"==f[0])break;var gc=1,ye=255,ze=a.V,Ae=a.Ab;"ew"==f[0]&&(gc=2,ye=65535,ze=a.mb,Ae=a.Ub);var Be=gc<<1,Ce=f[1];if(null==Ce)a.g("edit memory commands:"),
|
||||
a.g("\teb [a] [...] edit bytes at address a"),a.g("\tew [a] [...] edit words at address a");else{var hc=Y(a,Ce);if(hc)for(var ic=2;ic<f.length;ic++){var zb=Xd(a,f[ic]);if(void 0===zb){a.g("unrecognized value: "+f[ic]);break}zb&~ye&&a.g("warning: "+q(zb)+" exceeds "+gc+"-byte value");var Af=ze.call(a,hc);a.g("changing "+Z(hc.B)+" from 0x"+q(Af,Be)+" to 0x"+q(zb,Be));Ae.call(a,hc,zb,gc)}}break;case "f":We(a,f[1]);break;case "g":a:{var De=f[1],Bf=b;if(void 0!==De){var Wc=Y(a,De,!0);if(!Wc)break a;
|
||||
Yd(a,Wc,Bf);a.Ea(a.A,Wc,!0)}a.La(!0)||c||a.g("cpu busy or unavailable, run command ignored")}break;case "h":var Xc;a.w.ia?(Xc="halting",a.da()):Xc="already halted";c||a.g(Xc);break;case "i":if("if"==f[0]){var Yc;var Ab=b.substr(2),Ab=ha(Ab);Xd(a,Ab)?(c||a.g("true: "+Ab),Yc=!0):(c||a.g("false: "+Ab),Yc=!1);Yc||(d=!1);break}var Zc=f[1];if(Zc&&"?"!=Zc){var $c=Re(a,Zc);if(void 0!==$c){var Cf=Fb(a.D,$c);a.g(r($c)+": "+("0x"+q(Cf,2)))}}else a.g("input commands:"),a.g("\ti [p]\tread port [p]"),a.g("warning: port accesses can affect hardware state");
|
||||
break;case "k":var Df=f[0];if("?"==f[1])a.g("stack trace commands:"),a.g("\tk\tshow frame addresses"),a.g("\tks\tshow symbol information");else{var ad=0,Ee=W(),Bb=W(a.b.ba);for(a.g("stack trace for "+Z(Bb.B));10>ad;){for(var La=null,Ef=256;65536>Bb.B>>>0;){Ee.B=a.mb(Bb,2);if(null==Bb.B||!Ef--)break;for(var Ff=a,jc=Ee,Fe=null,Cb=jc.B,Ge=Cb,bd=1;6>=bd&&Cb;bd++){if(2<bd){jc.B=Cb;var kc=me(Ff,jc);if(0<kc.indexOf("CALL")){var He=kc.indexOf(" ");if(Cb+(kc.indexOf(" ",He+1)-He-1)/2==Ge){Fe=kc;break}}}Cb--}jc.B=
|
||||
Ge;if(La=Fe)break}if(!La||null==La)break;var Ie=null;if("ks"==Df){var Je=La.match(/[0-9A-F]+$/);Je&&(Ie=Ye(a,Je[0]))}La=ga(La,50)+" ;"+(Ie||"stack="+Z(Bb.B));a.g(La);ad++}ad||a.g("no return addresses found")}break;case "l":if("ln"==f[0]){Ye(a,f[1],!0);break}break;case "m":a:{var va,wa=null,E=f[1];"?"==E&&(E=void 0);if(void 0!==E){var Ma=0;if("all"==E)Ma=1610481663,E=null;else if("on"==E)wa=!0,E=null;else if("off"==E)wa=!1,E=null;else{"keys"==E&&(E="key");"kbd"==E&&(E="keyboard");for(va in Rd)if(E==
|
||||
va){Ma=Rd[va];wa=!!(a.ga&Ma);break}if(!Ma){a.g("unknown message category: "+E);break a}}Ma&&("on"==f[2]?(a.ga|=Ma,wa=!0):"off"==f[2]&&(a.ga&=~Ma,wa=!1))}var Gf=0,Fa="";for(va in Rd)if(!E||E==va){var Hf=!!(a.ga&Rd[va]);if(null===wa||wa==Hf)Fa&&(Fa+=","),++Gf%10||(Fa+="\n\t"),"key"==va&&(va="keys"),Fa+=va}void 0===E&&a.g("message commands:\n\tm [category] [on|off]\tturn categories on/off");a.g((null!==wa?wa?"messages on: ":"messages off: ":"message categories:\n\t")+(Fa||"none"));Kd(a)}break;case "o":var cd=
|
||||
f[1],If=f[2];if(cd&&"?"!=cd){var dd=Re(a,cd,"port #"),ed=Re(a,If);void 0!==dd&&void 0!==ed&&(Ib(a.D,dd,ed),a.g(r(dd)+": "+("0x"+q(ed,2))))}else a.g("output commands:"),a.g("\to [p] [b]\twrite byte [b] to port [p]"),a.g("warning: port accesses can affect hardware state");break;case "p":if("print"==f[0]){$e(a,b.substr(5));break}var Ke="pr"==f[0]?1:0,Jf=1+Ke;if(a.ea)a.g("step in progress");else{var fd=W(a.b.O);switch(a.V(fd)){case 205:a.ea=Jf,Td(fd,3)}a.ea?(a.Ea(a.A,fd,!0),a.La()||(a.u&&a.u.jb(),a.ea=
|
||||
0)):af(a,Ke?"tr":"t")}break;case "r":if("reset"==b){a.u&&a.u.reset();break}fe(a,f);break;case "s":Ze(a,f);break;case "t":af(a,f[0],f[1]);break;case "u":ge(a,f[1],f[2],8);break;case "v":if("var"==f[0]){Xe(a,b.substr(3))||(d=!1);break}a.g("PC8080 version 1.21.7 ("+a.b.Ra+",RELEASE"+(mb?",TYPEDARRAYS":",LONGARRAYS")+")");a.g(oa());break;case "?":if(f[1]){$e(a,b.substr(1));break}var Db="commands:",gd;for(gd in Md)Db+="\n"+ga(gd,7)+Md[gd];qd(a)||(Db+="\nnote: frequency/history disabled if no exec breakpoints");
|
||||
a.g(Db);break;default:a.g("unknown command: "+b),d=!1}}}catch(Le){a.g("debugger error: "+(Le.stack||Le.message)),d=!1}return d}function oc(a,b,c){b=Zd(a,b,c);for(var d in b)if(!le(a,b[d]))return!1;return!0}Ia(function(){for(var a=A(document,"pc8080","debugger"),b=0;b<a.length;b++){var c=a[b],d=y(c),d=new Hd(d);eb(d,c)}});function I(a,b,c){this.id=a.id;this.key=cf(a,b,c);this.C=a.C;df(this,a.Qb)}
|
||||
function cf(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}
|
||||
I.prototype={constructor:I,value:function(){return this[this.id]},data:function(){return this[this.id]},toString:function(){var a=this[this.id];return"string"==typeof a?a:JSON.stringify(a)},clear:function(a){df(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}}};
|
||||
|
|
|
|||
|
|
@ -81,7 +81,7 @@ Pb.prototype.W=function(){this.i&&(this.F&&this.F.a(this.id,this.j,this.c,this.i
|
|||
function Qb(a,b,c,d){if(d)a.K("Unable to load system ROM (error "+d+": "+b+")");else{Ca(a.Na,b,c);if("["==c.charAt(0)||"{"==c.charAt(0))try{var e=eval("("+c+")"),f=e.bytes,h=e.data;if(f)a.b=f;else if(h)for(a.b=Array(4*h.length),d=c=0;c<h.length;c++)a.b[d++]=h[c]&255,a.b[d++]=h[c]>>8&255,a.b[d++]=h[c]>>16&255,a.b[d++]=h[c]>>24&255;else a.b=e;a.i=e.symbols;if(!a.b.length){q("Empty ROM: "+b);return}if(1==a.b.length){q(a.b[0]);return}}catch(g){a.K("ROM data error: "+g.message);return}else for(b=c.replace(/\n/gm,
|
||||
" ").replace(/ +$/,"").split(" "),a.b=Array(b.length),e=0;e<b.length;e++)a.b[e]=aa(b[e]);Sb(a)}}
|
||||
function Sb(a){if(!Ga(a))if(!a.h)B(a);else if(a.b&&a.B){a.c||(a.c=a.b.length);if(a.b.length!=a.c){var b="ROM size (0x"+n(a.b.length)+") does not match specified size ("+("0x"+n(a.c))+")";a.g.aa=!0;a.K(b)}else if(Tb(a,a.j)){b=[];"number"==typeof a.f?b.push(a.f):null!=a.f&&a.f.length&&(b=a.f);for(var c=0;c<b.length;c++){for(var d=a,e=b[c],f=d.B,h=d.c,g=[],k=d.j>>>f.H;0<h&&k<f.b.length;)g.push(f.b[k++]),h-=f.I;f=d.B;d=d.c;h=0;for(e>>>=f.H;0<d&&e<f.b.length;){k=g[h++];if(!k)break;f.b[e++]=k;d-=f.I}}delete a.b}B(a)}}
|
||||
function Tb(a,b){if(Oa(a.B,b,a.c,a.l?1:Xa)){var c;for(c=0;c<a.b.length;c++)Qa(a.B,b+c,a.b[c]);if(a.l&&256==b){for(c=0;c<Rb.length;c++)Qa(a.B,Rb[c],118);vb(a.a,function(a){return function(b){a.F&&(a.M("CP/M vector 0x"+n(b,4)),D(a.a,b),mb(a.F))}}(a));xb(a.a,b)}return!0}return!1}t(function(){for(var a=A(document,"pc8080","rom"),b=0;b<a.length;b++){var c=a[b],d=z(c),d=new Pb(d);Ea(d,c)}});function Ub(a){u.call(this,"RAM",a,Ub);this.f=a.addr;this.c=a.size;this.b=!1}x(Ub);m=Ub.prototype;
|
||||
function Tb(a,b){if(Oa(a.B,b,a.c,a.l?1:Xa)){var c;for(c=0;c<a.b.length;c++)Qa(a.B,b+c,a.b[c]);if(a.l&&256==b){for(c=0;c<Rb.length;c++)Qa(a.B,Rb[c],118);vb(a.a,function(a){return function(b){0<=Rb.indexOf(b)&&a.F&&(a.M("CP/M vector 0x"+n(b,4)),D(a.a,b),mb(a.F))}}(a));xb(a.a,b)}return!0}return!1}t(function(){for(var a=A(document,"pc8080","rom"),b=0;b<a.length;b++){var c=a[b],d=z(c),d=new Pb(d);Ea(d,c)}});function Ub(a){u.call(this,"RAM",a,Ub);this.f=a.addr;this.c=a.size;this.b=!1}x(Ub);m=Ub.prototype;
|
||||
m.ba=function(a,b,c,d){this.B=b;this.a=c;this.F=d;B(this)};m.W=function(a,b){b||this.reset();return!0};m.V=function(a){return a?this.save():!0};m.reset=function(){!this.b&&this.c&&Oa(this.B,this.f,this.c,1)&&(this.b=!0,this.status(Math.floor(this.c/1024)+"Kb allocated"));this.b||q("No RAM allocated")};m.save=function(){return null};m.restore=function(){return!0};t(function(){for(var a=A(document,"pc8080","ram"),b=0;b<a.length;b++){var c=a[b],d=z(c),d=new Ub(d);Ea(d,c)}});
|
||||
function Vb(a){u.call(this,"Keyboard",a,Vb);B(this)}x(Vb);t(function(){for(var a=A(document,"pc8080","keyboard"),b=0;b<a.length;b++){var c=a[b],d=z(c),d=new Vb(d);Ea(d,c)}});function Wb(a){u.call(this,"Video",a,Wb);this.fb=a.interruptRate;this.X=a.refreshRate||60;B(this)}x(Wb);Wb.prototype.ba=function(a,b,c,d){this.w=a;this.B=b;this.a=c;this.F=d};
|
||||
t(function(){for(var a=A(document,"pc8080","video"),b=0;b<a.length;b++){var c=a[b],d=z(c),e=document.createElement("canvas");if(void 0===e||!e.getContext){c.innerHTML="<br/>Missing <canvas> support. Please try a newer web browser.";break}e.setAttribute("class","pcjs-canvas");e.setAttribute("width",d.screenWidth);e.setAttribute("height",d.screenHeight);e.style.backgroundColor=d.screenColor;e.style.height="auto";0<=(window?window.navigator.userAgent:"").indexOf("MSIE")&&(c.onresize=function(a,
|
||||
|
|
|
|||
|
|
@ -901,10 +901,16 @@
|
|||
<xsl:otherwise/>
|
||||
</xsl:choose>
|
||||
</xsl:variable>
|
||||
<xsl:variable name="writable">
|
||||
<xsl:choose>
|
||||
<xsl:when test="@writable"><xsl:value-of select="@writable"/></xsl:when>
|
||||
<xsl:otherwise>false</xsl:otherwise>
|
||||
</xsl:choose>
|
||||
</xsl:variable>
|
||||
<xsl:call-template name="component">
|
||||
<xsl:with-param name="machine" select="$machine"/>
|
||||
<xsl:with-param name="class">rom</xsl:with-param>
|
||||
<xsl:with-param name="parms">,addr:<xsl:value-of select="$addr"/>,size:<xsl:value-of select="$size"/>,alias:<xsl:value-of select="$alias"/>,file:'<xsl:value-of select="$file"/>',notify:'<xsl:value-of select="$notify"/>'</xsl:with-param>
|
||||
<xsl:with-param name="parms">,addr:<xsl:value-of select="$addr"/>,size:<xsl:value-of select="$size"/>,alias:<xsl:value-of select="$alias"/>,file:'<xsl:value-of select="$file"/>',notify:'<xsl:value-of select="$notify"/>',writable:<xsl:value-of select="$writable"/></xsl:with-param>
|
||||
</xsl:call-template>
|
||||
</xsl:template>
|
||||
|
||||
|
|
@ -1139,7 +1145,7 @@
|
|||
<xsl:choose>
|
||||
<xsl:when test="@buswidth"><xsl:value-of select="@buswidth"/></xsl:when>
|
||||
<xsl:when test="@busWidth"><xsl:value-of select="@busWidth"/></xsl:when>
|
||||
<xsl:otherwise>20</xsl:otherwise>
|
||||
<xsl:otherwise>0</xsl:otherwise>
|
||||
</xsl:choose>
|
||||
</xsl:variable>
|
||||
<xsl:variable name="resume">
|
||||
|
|
|
|||
|
|
@ -15,10 +15,10 @@ function Pa(a,b){if(window){var c=window[a];window[a]="function"!==typeof c?b:fu
|
|||
Pa(Ga("Opera")||Ga("iOS")?"onunload":"onbeforeunload",function(){Ra(La.exit)});function Ua(a,b,c,d){this.type=a;b||(b={id:"",name:""});this.id=b.id;this.name=b.name;this.tk=b.comment;this.gk=b;void 0===this.id&&(this.id="");b=this.id.indexOf(".");0<b?(this.ve=this.id.substr(0,b),this.ee=this.id.substr(b+1)):this.ee=this.id;this[a]=c;this.la={af:!1,bd:!1,ah:!1,cc:!1,ud:!1};this.sg=null;this.la.ud=!1;this.qa={};this.ha=null;this.wc=d||0;Va.push(this)}var Wa=void 0,Ya={};
|
||||
if(window){Wa||(Wa=window.location.search.substr(1));for(var Za,$a=/\+/g,ab=/([^&=]+)=?([^&]*)/g;Za=ab.exec(Wa);)Ya[decodeURIComponent(Za[1].replace($a," "))]=decodeURIComponent(Za[2].replace($a," "))}function cb(a){function b(){}if(window){if(!a)throw new TypeError;if(Object.create)return Object.create(a);var c=typeof a;if("object"!==c&&"function"!==c)throw new TypeError;}b.prototype=a;return new b}
|
||||
function db(a,b){b||(b=Ua);a.prototype=cb(b.prototype);a.prototype.constructor=a;a.prototype.parent=b.prototype}var Va=[],eb={};function fb(a,b,c){eb[a]&&b&&(eb[a][b]=c)}function gb(a){var b,c=[];a&&(a=0<(b=a.indexOf("."))?a.substr(0,b+1):"");for(b=0;b<Va.length;b++){var d=Va[b];a&&d.id.indexOf(a)||c.push(d)}return c}function hb(a,b){if(void 0!==a){var c;b&&0<(c=b.indexOf("."))&&(a=b.substr(0,c+1)+a);for(c=0;c<Va.length;c++)if(Va[c].id===a)return Va[c]}return null}
|
||||
function ib(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<Va.length;d++)if(c)c==Va[d]&&(c=null);else if(!(a!=Va[d].type||b&&Va[d].id.indexOf(b)))return Va[d]}return null}function jb(a){var b=null;if(a=a.getAttribute("data-value"))try{b=eval("("+a+")")}catch(c){w(c.message+" ("+a+")")}return b}function kb(a,b,c){var d;b&&(void 0===d&&(d="Panel"),(d=ib(d,a.id))&&(b=d.qa[b])&&a.Qb(null,c,b))}
|
||||
function mb(a,b){for(var c=nb(b.parentNode,"pcjs-control"),d=0;d<c.length;d++)for(var e=c[d].childNodes,f=0;f<e.length;f++){var g=e[f];if(1===g.nodeType){var h=g.getAttribute("class");if(h)for(var k=h.split(" "),l=0;l<k.length;l++)switch(h=k[l],h){case "pcjs-binding":(h=jb(g))&&h.binding&&a.Qb(h.type,h.binding,g,h.value),l=k.length}}}}
|
||||
function ib(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<Va.length;d++)if(c)c==Va[d]&&(c=null);else if(!(a!=Va[d].type||b&&Va[d].id.indexOf(b)))return Va[d]}return null}function jb(a){var b=null;if(a=a.getAttribute("data-value"))try{b=eval("("+a+")")}catch(c){w(c.message+" ("+a+")")}return b}function kb(a,b,c){var d;b&&(void 0===d&&(d="Panel"),(d=ib(d,a.id))&&(b=d.qa[b])&&a.Pb(null,c,b))}
|
||||
function mb(a,b){for(var c=nb(b.parentNode,"pcjs-control"),d=0;d<c.length;d++)for(var e=c[d].childNodes,f=0;f<e.length;f++){var g=e[f];if(1===g.nodeType){var h=g.getAttribute("class");if(h)for(var k=h.split(" "),l=0;l<k.length;l++)switch(h=k[l],h){case "pcjs-binding":(h=jb(g))&&h.binding&&a.Pb(h.type,h.binding,g,h.value),l=k.length}}}}
|
||||
function nb(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}
|
||||
Ua.prototype={constructor:Ua,parent:null,toString:function(){return this.name?this.name:this.id||this.type},Qb:function(a,b,c){switch(b){case "clear":return this.qa[b]||(this.qa[b]=c,c.onclick=function(a){return function(){a.qa.print&&(a.qa.print.value="")}}(this)),!0;case "print":return this.qa[b]||(this.Df=this.qa[b]=c,c.value="",this.O=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),
|
||||
Ua.prototype={constructor:Ua,parent:null,toString:function(){return this.name?this.name:this.id||this.type},Pb:function(a,b,c){switch(b){case "clear":return this.qa[b]||(this.qa[b]=c,c.onclick=function(a){return function(){a.qa.print&&(a.qa.print.value="")}}(this)),!0;case "print":return this.qa[b]||(this.Df=this.qa[b]=c,c.value="",this.O=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.Na=function(a,b,c){this.O(a,"notice",c)}),!0;default:return!1}},log:function(){},O:function(){},status:function(a){this.O(this.ee+": "+a)},Na:function(a,b){b||w(a)},ic:function(){return this.la.cc=!0},hc:function(a,b){b&&(this.la.cc=!1);return!0}};function x(a,b,c,d,e,f,g){a.ha&&(!0===g?g=0:null==g&&(g=a.wc),ob(a.ha,a,b,c,d,e,f,g))}function y(a,b,c,d){a.ha&&(!0===c||A(a,c|0))&&a.ha.message(b,d)}
|
||||
function A(a,b){if(a.ha){a===a.ha?b|=0:b=b||a.wc;var c=a.ha.wc&b;return!!b&&c===b||!!(c&a.ha.Gk)}return!1}function pb(a,b){if(a.la.ah)return a.la.bd&&(a.la.bd=!1),a.la.ah=!1;if(a.la.ud)return a.O(a.toString()+" error"),!1;a.la.bd=b;return a.la.bd}function qb(a,b){a.la.bd&&(b?a.la.ah=!0:void 0===b&&a.O(a.toString()+" busy"));return a.la.bd}function rb(a,b){if(!a.la.ud&&(a.la.af=!1!==b,a.la.af)){var c=a.sg;a.sg=null;c&&c()}}function sb(a,b){b&&(a.la.af?b():a.sg=b);return a.la.af}
|
||||
function ub(a,b){a.la.ud=!0;a.Na(b)}
|
||||
|
|
@ -35,17 +35,17 @@ qj:25,nj:20,pj:28,Nj:13,Pj:21,Mj:16,Oj:24,sj:13,uj:21,rj:16,tj:24,Sf:2,Rf:7,Ph:5
|
|||
80:"set current PSP @BX",81:"get current PSP (bx)",82:"get system variables (ES:BX)",83:"translate BPB @DS:@SI to DPB (ES:BP)",84:"get verify flag (AL)",85:"create child PSP at segment @DX",86:"rename file $@DS:@DX to $@ES:@DI",87:"get(0)/set(1) file @BX date @DX and time @CX (@AL)",88:"get(0)/set(1) memory allocation strategy (@AL)",89:"get extended error information",90:"create temporary file $@DS:@DX with attributes @CX",91:"create file $@DS:@DX with attributes @CX",92:"lock(0)/unlock(1) file @BX region @CX:@DX length @SI:@DI (@AL)",
|
||||
93:"critical error information (@AL)",96:"get fully-qualified filename from $@DS:@SI",99:"get lead byte table (@AL)",108:"extended open file $@DS:@SI"},65:{79:"check debugger loaded"}};function zb(a){Ua.call(this,"Panel",a,zb);this.L=this.W=this.fa=-1}db(zb);function Ab(a,b,c,d){this.A=[a,b,c,d];this.B=null;void 0===a&&(this.A[0]=256*Math.random()|0,this.A[1]=256*Math.random()|0,this.A[2]=256*Math.random()|0,this.A[3]=255,this.B=null)}
|
||||
Ab.prototype.toString=function(){this.B||(this.B="#"+r(this.A[0],2)+r(this.A[1],2)+r(this.A[2],2));return this.B};function Bb(a,b,c,d){this.x=a;this.y=b;this.ad=c;this.A=d}Bb.prototype.contains=function(a,b){return a>=this.x&&a<this.x+this.ad&&b>=this.y&&b<this.y+this.A};function Cb(a,b,c,d){void 0===d&&(d=b>=c>>2);d?(b=new Bb(a.x,a.y,a.ad,a.A*b/c|0),a.y+=b.A,a.A-=b.A):(b=new Bb(a.x,a.y,a.ad*b/c|0,a.A),a.x+=b.ad,a.ad-=b.ad);return b}m=zb.prototype;
|
||||
m.Qb=function(a,b,c,d){return this.V&&this.V.Qb(a,b,c,d)||this.F&&this.F.Qb(a,b,c,d)||this.B&&this.B.Qb(a,b,c,d)||this.ha&&this.ha.Qb(a,b,c,d)?!0:this.parent.Qb.call(this,a,b,c,d)};m.Ic=function(a,b,c,d){this.V=a;this.ea=b;this.F=c;this.ha=d;this.B=Eb(a,"Keyboard")};m.ic=function(a,b){b||Fb();return!0};m.hc=function(){return!0};m.je=function(a,b){a.button||(this.fa=b?0:-1,Gb(this,a,b))};m.Hf=function(a){Gb(this,a)};
|
||||
function Gb(a,b,c){var d=1280/null.offsetWidth,e=720/null.offsetHeight,f=null.getBoundingClientRect(),d=(b.clientX-f.left)*d|0;b=(b.clientY-f.top)*e|0;null==c&&(a.fa||(a.fa=Math.abs(a.L-d)>Math.abs(a.W-b)?1:2),1==a.fa?b=a.W:2==a.fa&&(d=a.L));a.L=d;a.W=b;if(0<=d&&1280>d&&0<=b&&720>b){a:{c=d;if(960>c&&a.A&&a.A.Pe)for(f=0;f<a.A.Pe.length;f++)if(e=a.A.Pe[f],e.contains(c,b)){c-=e.x;b-=e.y;var d=a.A.Af[f],g=ta(Hb.$j,a.A.Rg[d.Qk]),f=g*a.ea.Nb,d=(g+d.Ud)*a.ea.Nb-1;0<b&&(f+=e.ad*(b-1)*a.ya);f+=c*a.ya;f|=0;
|
||||
m.Pb=function(a,b,c,d){return this.V&&this.V.Pb(a,b,c,d)||this.F&&this.F.Pb(a,b,c,d)||this.B&&this.B.Pb(a,b,c,d)||this.ha&&this.ha.Pb(a,b,c,d)?!0:this.parent.Pb.call(this,a,b,c,d)};m.Ic=function(a,b,c,d){this.V=a;this.ea=b;this.F=c;this.ha=d;this.B=Eb(a,"Keyboard")};m.ic=function(a,b){b||Fb();return!0};m.hc=function(){return!0};m.je=function(a,b){a.button||(this.fa=b?0:-1,Gb(this,a,b))};m.Hf=function(a){Gb(this,a)};
|
||||
function Gb(a,b,c){var d=1280/null.offsetWidth,e=720/null.offsetHeight,f=null.getBoundingClientRect(),d=(b.clientX-f.left)*d|0;b=(b.clientY-f.top)*e|0;null==c&&(a.fa||(a.fa=Math.abs(a.L-d)>Math.abs(a.W-b)?1:2),1==a.fa?b=a.W:2==a.fa&&(d=a.L));a.L=d;a.W=b;if(0<=d&&1280>d&&0<=b&&720>b){a:{c=d;if(960>c&&a.A&&a.A.Pe)for(f=0;f<a.A.Pe.length;f++)if(e=a.A.Pe[f],e.contains(c,b)){c-=e.x;b-=e.y;var d=a.A.Af[f],g=ta(Hb.$j,a.A.Rg[d.Qk]),f=g*a.ea.Sb,d=(g+d.Ud)*a.ea.Sb-1;0<b&&(f+=e.ad*(b-1)*a.ya);f+=c*a.ya;f|=0;
|
||||
f>d&&(f=d);c=f;break a}c=-1}if(-1!==c&&(c&=-16,c!=a.Ca)){b=c;if(a.context&&a.ja&&a.ka){e=a.ja.width;a.ka.fillStyle="black";a.ka.fillRect(0,360,e,360);Ib(a,378,a.ja,a.ka);a.pa=a.Ea.width/24|0;if(null==b)Jb(a,"Mouse over memory to dump");else for(Jb(a,"0x"+r(b),null,0,1),f=1;16>=f;f++){d="";for(g=1;8>=g;g++){var h;h=a.ea;var k=b++;h=h.sa[(k&h.Gb)>>>h.La].se(k&h.A,k);Jb(a,r(h,2),null,1);d+=32<=h&&128>h?String.fromCharCode(h):"."}Jb(a,d,null,0,1)}a.context.drawImage(a.ja,0,360,e,360,a.rb,a.Db,a.Pa,a.cb)}a.Ca=
|
||||
c}}}m.qd=function(){};function Kb(a,b,c,d){a.A.Af[a.A.Ai++]={Qk:b,Ud:c,type:d};return sa(Hb,b,c,0,d)}function Ib(a,b,c,d){var e,f=null.style.color,g=a.Oa=10;a.C=g;a.U=b;a.X=a.wa=18;e||(e=a.ua||a.wa+"px Monaco, Lucida Console, Courier New");a.ga=a.ua=e;c&&(a.Ea=c);d&&(a.N=d,a.Fa=f||"white")}
|
||||
function Jb(a,b,c,d,e){a.N.font=a.ga;a.N.fillStyle=a.Fa;a.N.fillText(b,a.C,a.U);a.C+=a.pa;null!=c&&(16!=a.Tb?b=c.toString():(b=8>a.Ka?"0x":"",b+=r(c,a.Ka)),a.N.fillText(b,a.C,a.U),a.C+=a.pa);d&&(a.C+=a.pa*d);e&&(a.C=a.Oa,a.U+=(a.X+2)*(e||1))}function Fb(){for(var a=!1,b=nb(document,"pcjs","panel"),c=0;c<b.length;c++){var d=b[c],e=jb(d),f=hb(e.id);f||(a=!0,f=new zb(e));mb(f,d);a&&rb(f)}}Qa(Fb);
|
||||
function Lb(a,b,c){Ua.call(this,"Bus",a,Lb);this.F=b;this.ha=c;this.N=a.buswidth||20;this.X=Math.pow(2,this.N);this.xg=this.Gb=this.X-1|0;this.La=32==this.N||20>=this.N?12:24>=this.N?14:15;this.Nb=1<<this.La;this.ga=this.Nb>>2;this.A=this.Nb-1;this.U=this.X/this.Nb|0;this.ea=this.U-1;this.B=[];this.C=[];this.L=this.W=!1;this.aa=[];this.fa=[];a=new B;Mb(a,this.ha);this.sa=Array(this.U);for(b=0;b<this.U;b++)this.sa[b]=a;a=this.F;b=this.sa;c=this.La;a.ld=a.sa=b;a.La=c;a.Nb=1<<a.La;a.Fa=a.Nb-1;a.Gd=b.length;
|
||||
function Lb(a,b,c){Ua.call(this,"Bus",a,Lb);this.F=b;this.ha=c;this.N=a.busWidth||20;this.X=Math.pow(2,this.N);this.xg=this.Gb=this.X-1|0;this.La=32==this.N||20>=this.N?12:24>=this.N?14:15;this.Sb=1<<this.La;this.ga=this.Sb>>2;this.A=this.Sb-1;this.U=this.X/this.Sb|0;this.ea=this.U-1;this.B=[];this.C=[];this.L=this.W=!1;this.aa=[];this.fa=[];a=new B;Mb(a,this.ha);this.sa=Array(this.U);for(b=0;b<this.U;b++)this.sa[b]=a;a=this.F;b=this.sa;c=this.La;a.ld=a.sa=b;a.La=c;a.Sb=1<<a.La;a.Fa=a.Sb-1;a.Gd=b.length;
|
||||
a.jd=a.Gd-1;a=this.F;a.Gb=a.Db=this.Gb;rb(this)}db(Lb);var Hb,Nb={$j:20,count:8,oo:1,type:3},Ob=0,Pb;for(Pb in Nb){var Qb=Nb[Pb];Nb[Pb]={mh:(1<<Qb)-1<<Ob,shift:Ob};Ob+=Qb}Hb=Nb;m=Lb.prototype;m.reset=function(){Rb(this,!0)};m.ic=function(a,b){b||this.reset();return!0};
|
||||
function Sb(a,b,c,d,e){for(var f=b>>>a.La;0<c&&f<a.sa.length;){var g=a.sa[f],h=f*a.Nb,k=c>a.Nb?a.Nb:c;if(g&&g.size){if(g.type==d&&g.controller==e){if(b+c<=g.Da)return g.Ne+=g.Da-b,g.Da=b,!0;if(b>=g.Da+g.Ne){k=g.size-(b-h);k>c&&(k=c);g.Ne=b-g.Da+k;c-=k;b=h+a.Nb;continue}}return Tb(a,1,b,c)}g=a.sa[f];b=new B(b,k,a.Nb,d,e);Mb(b,a.ha,g);a.sa[f++]=b;b=h+a.Nb;c-=k}return 0>=c?(Ub(a.F),!0):Tb(a,2,b,c)}
|
||||
function Rb(a,b){if(32==a.N)b?a.V&&(Wb(a,1048576,1048576,a.V),a.V=null):a.V||(a.V=Xb(a,1048576,1048576),Wb(a,1048576,1048576,Xb(a,0,1048576)));else if(20<a.N){var c=a.Gb&-1048577|(b?1048576:0);if(c!=a.Gb&&(a.Gb=c,a.F)){var d=a.F;d.Gb=d.Db=c}}}m.Og=function(a,b,c,d){if(!(a&this.A||!b||b&this.A)){for(var e=a>>>this.La;0<b;){var f=this.sa[e];if(!f.controller)return Tb(this,3,a,b,d);Yb(f,c,!0);b-=this.Nb;e++}return!0}return Tb(this,4,a,b)};
|
||||
function Zb(a,b,c){if(!(b&a.A||!c||c&a.A)){for(var d=b>>>a.La;0<c;){var e=a.sa[d];b=new B(b);Mb(b,a.ha,e);a.sa[d++]=b;b=d*a.Nb;c-=a.Nb}Ub(a.F);return!0}return Tb(a,5,b,c)}function Xb(a,b,c){var d=[];for(b>>>=a.La;0<c&&b<a.sa.length;)d.push(a.sa[b++]),c-=a.Nb;return d}
|
||||
function Wb(a,b,c,d,e){for(var f=0,g=b>>>a.La;0<c&&g<a.sa.length;){var h=d[f++];if(!h)break;if(void 0!==e){var k=new B(b),l=k,n=e,q=a.ha;l.id=h.id|1;l.Ne=h.Ne;l.size=h.size;n&&(l.type=n,l.N=n==$b);vb?(l.V=h.V,l.qa=h.qa,l.Ya=h.Ya,l.fe=h.fe,l.da=h.da,Yb(l,ac?bc:cc)):(l.da=h.da,Yb(l,dc));Mb(l,q,h);h=k}a.sa[g++]=h;c-=a.Nb}}m.Qa=function(a){return this.sa[(a&this.Gb)>>>this.La].jc(a&this.A,a)};
|
||||
function Sb(a,b,c,d,e){for(var f=b>>>a.La;0<c&&f<a.sa.length;){var g=a.sa[f],h=f*a.Sb,k=a.Sb-(b-h);k>c&&(k=c);if(g&&g.size){if(g.type==d&&g.controller==e){if(b+c<=g.Da)return g.Ne+=g.Da-b,g.Da=b,!0;if(b>=g.Da+g.Ne){k=g.size-(b-h);k>c&&(k=c);g.Ne=b-g.Da+k;b=h+a.Sb;c-=k;f++;continue}}return Tb(a,1,b,c)}b=new B(b,k,a.Sb,d,e);Mb(b,a.ha,g);a.sa[f++]=b;b=h+a.Sb;c-=k}return 0>=c?(Ub(a.F),!0):Tb(a,2,b,c)}
|
||||
function Rb(a,b){if(32==a.N)b?a.V&&(Wb(a,1048576,1048576,a.V),a.V=null):a.V||(a.V=Xb(a,1048576,1048576),Wb(a,1048576,1048576,Xb(a,0,1048576)));else if(20<a.N){var c=a.Gb&-1048577|(b?1048576:0);if(c!=a.Gb&&(a.Gb=c,a.F)){var d=a.F;d.Gb=d.Db=c}}}m.Og=function(a,b,c,d){if(!(a&this.A||!b||b&this.A)){for(var e=a>>>this.La;0<b;){var f=this.sa[e];if(!f.controller)return Tb(this,3,a,b,d);Yb(f,c,!0);b-=this.Sb;e++}return!0}return Tb(this,4,a,b)};
|
||||
function Zb(a,b,c){if(!(b&a.A||!c||c&a.A)){for(var d=b>>>a.La;0<c;){var e=a.sa[d];b=new B(b);Mb(b,a.ha,e);a.sa[d++]=b;b=d*a.Sb;c-=a.Sb}Ub(a.F);return!0}return Tb(a,5,b,c)}function Xb(a,b,c){var d=[];for(b>>>=a.La;0<c&&b<a.sa.length;)d.push(a.sa[b++]),c-=a.Sb;return d}
|
||||
function Wb(a,b,c,d,e){for(var f=0,g=b>>>a.La;0<c&&g<a.sa.length;){var h=d[f++];if(!h)break;if(void 0!==e){var k=new B(b),l=k,n=e,q=a.ha;l.id=h.id|1;l.Ne=h.Ne;l.size=h.size;n&&(l.type=n,l.N=n==$b);vb?(l.V=h.V,l.qa=h.qa,l.Ya=h.Ya,l.fe=h.fe,l.da=h.da,Yb(l,ac?bc:cc)):(l.da=h.da,Yb(l,dc));Mb(l,q,h);h=k}a.sa[g++]=h;c-=a.Sb}}m.Qa=function(a){return this.sa[(a&this.Gb)>>>this.La].jc(a&this.A,a)};
|
||||
m.na=function(a){var b=a&this.A,c=(a&this.Gb)>>>this.La;return b!=this.A?this.sa[c].rf(b,a):this.sa[c++].jc(b,a)|this.sa[c&this.ea].jc(0,a+1)<<8};function ec(a,b){var c=b&a.A,d=(b&a.Gb)>>>a.La;return c!=a.A?a.sa[d].cg(c,b):a.sa[d++].se(c,b)|a.sa[d&a.ea].se(0,b+1)<<8}m.oa=function(a){var b=a&this.A,c=(a&this.Gb)>>>this.La;if(b<this.A-2)return this.sa[c].Nd(b,a);for(var d=0,e=4,f=0,g=4-(b&3);e--;)d|=this.sa[c].jc(b++,a++)<<f,--g||(c=c+1&this.ea,b=0),f+=8;return d};
|
||||
m.qc=function(a,b){this.sa[(a&this.Gb)>>>this.La].sc(a&this.A,b&255,a)};m.jb=function(a,b){var c=a&this.A,d=(a&this.Gb)>>>this.La;c!=this.A?this.sa[d].yf(c,b&65535,a):(this.sa[d++].sc(c,b&255,a),this.sa[d&this.ea].sc(0,b>>8&255,a+1))};function fc(a,b,c){var d=b&a.A,e=(b&a.Gb)>>>a.La;d!=a.A?a.sa[e].oi(d,c&65535,b):(a.sa[e++].wf(d,c&255,b),a.sa[e&a.ea].wf(0,c>>8&255,b+1))}
|
||||
m.nb=function(a,b){var c=a&this.A,d=(a&this.Gb)>>>this.La;if(c<this.A-2)this.sa[d].xf(c,b);else for(var e=4,f=4-(c&3);e--;)this.sa[d].sc(c++,b&255,a++),--f||(d=d+1&this.ea,c=0),b>>>=8};m.Si=function(){return null};function gc(a,b){if(void 0===b)return a.L=!a.L,a.L;void 0===a.B[b]&&(a.B[b]=[null,!1]);a.B[b][1]=!a.B[b][1];return a.B[b][1]}
|
||||
|
|
@ -68,10 +68,10 @@ function Gc(a,b){b?0===--a.Ue&&(a.sc=a.N?a.L:a.wf,a.yf=a.N?a.X:a.oi,a.xf=a.N?a.U
|
|||
function Yb(a,b,c){b||(b=5==a.type?Hc:6==a.type?Ic:Jc);zc(a,b,c);Bc(a,b,c)}var Jc=[],dc=[B.prototype.Fa,B.prototype.sb,B.prototype.$a,B.prototype.uc,B.prototype.Dd,B.prototype.Xc],Ac=[B.prototype.Ea,B.prototype.rb,B.prototype.Pa,B.prototype.tc,B.prototype.td,B.prototype.Wc],Ic=[B.prototype.Ja,B.prototype.Jb,B.prototype.fb,B.prototype.Uc,B.prototype.Hd,B.prototype.ve],Hc=[B.prototype.Ka,B.prototype.Ub,B.prototype.gb,B.prototype.ee,B.prototype.Id,B.prototype.kd];
|
||||
if(vb)var cc=[B.prototype.Ca,B.prototype.Tb,B.prototype.Oa,B.prototype.bc,B.prototype.rd,B.prototype.Vc],bc=[B.prototype.aa,B.prototype.pa,B.prototype.ga,B.prototype.ra,B.prototype.ya,B.prototype.wa],Kc=[B.prototype.Ia,B.prototype.Db,B.prototype.cb,B.prototype.Cc,B.prototype.Gd,B.prototype.jd];
|
||||
function Lc(a,b){Ua.call(this,"CPU",a,Lc,1);var c=a.cycles||b,d=a.multiplier||1;this.Y={};this.Y.Jd=c;this.Y.Yd=d;this.Y.ug=Math.round(this.Y.Jd/1E4)/100;this.Y.Fe=this.Y.ug*this.Y.Yd;this.la.Ib=!1;this.la.eh=!1;this.la.Ki=a.autoStart;this.la.Oi=!1;this.la.Ye=!1;this.Y.If=this.Y.kf=0;this.Y.Jf=a.csStart;this.Y.jf=a.csInterval;this.Y.lf=a.csStop;this.pi=this.Ke.bind(this);rb(this)}db(Lc);var Mc=["power","reset"];m=Lc.prototype;
|
||||
m.Ic=function(a,b,c,d){this.V=a;this.ea=b;this.ha=d;for(b=0;b<Mc.length;b++)(c=this.qa[Mc[b]])&&this.V.Qb(null,Mc[b],c);this.Tb=Eb(a,"FPU");this.N=Eb(a,"ChipSet");a=Nc(a,"autoStart");null!=a&&(this.la.Ki="true"==a?!0:"false"==a?!1:!!a);rb(this)};m.reset=function(){};m.save=function(){return null};m.restore=function(){return!1};
|
||||
m.Ic=function(a,b,c,d){this.V=a;this.ea=b;this.ha=d;for(b=0;b<Mc.length;b++)(c=this.qa[Mc[b]])&&this.V.Pb(null,Mc[b],c);this.Tb=Eb(a,"FPU");this.N=Eb(a,"ChipSet");a=Nc(a,"autoStart");null!=a&&(this.la.Ki="true"==a?!0:"false"==a?!1:!!a);rb(this)};m.reset=function(){};m.save=function(){return null};m.restore=function(){return!1};
|
||||
m.ic=function(a,b){if(!b){if(a&&this.restore){Oc(this);if(!this.restore(a))return!1;Pc(this)}else this.reset();this.ha?this.ha.hh():this.O("No debugger detected")}Qc(this);return!0};m.hc=function(a){return a?this.save():!0};function Sc(a){(a.la.Ki||!a.ha&&void 0===a.qa.run)&&a.Ke(!0)}m.Qi=function(){return 0};function Pc(a){void 0===a.Y.Jf&&(a.Y.Jf=0);void 0===a.Y.jf&&(a.Y.jf=-1);void 0===a.Y.lf&&(a.Y.lf=-1);a.la.Ye=0<=a.Y.Jf&&0<a.Y.jf;a.la.Ye&&(a.Y.If=0,a.Y.kf=a.Y.Jf-a.uc)}
|
||||
function Vc(a,b){if(a.la.Ye){var c=!1;a.Y.If=a.Y.If+a.Qi()|0;a.Y.kf-=b;0>=a.Y.kf&&(a.Y.kf+=a.Y.jf,c=!0);0<=a.Y.lf&&a.Y.lf<=Wc(a)&&(a.Y.jf=a.Y.lf=-1,Pc(a),a.Wb(),c=!0);c&&a.O(Wc(a)+" cycles: checksum="+r(a.Y.If))}}
|
||||
m.Qb=function(a,b,c){var d=this;a=!1;switch(b){case "power":case "reset":this.qa[b]=c;a=!0;break;case "run":this.qa[b]=c;c.onclick=function(){var a;if(a=d.V)if(a=d.V,a.la.cc)a=!0;else{var b=null,c,h=gb(a.id);for(c=0;c<h.length&&(b=h[c],b===a||b.la.af);c++);if(c==h.length)for(c=0;c<h.length&&(b=h[c],b===a||b.la.cc);c++);c==h.length&&(b=a);w("The "+b.type+" component ("+b.id+") is not "+(b.la.af?"powered yet":"ready yet"+(b.sg?" (waiting for notification)":""))+".");a=!1}a&&(d.la.Ib?d.Wb(!0):d.Ke(!0))};
|
||||
m.Pb=function(a,b,c){var d=this;a=!1;switch(b){case "power":case "reset":this.qa[b]=c;a=!0;break;case "run":this.qa[b]=c;c.onclick=function(){var a;if(a=d.V)if(a=d.V,a.la.cc)a=!0;else{var b=null,c,h=gb(a.id);for(c=0;c<h.length&&(b=h[c],b===a||b.la.af);c++);if(c==h.length)for(c=0;c<h.length&&(b=h[c],b===a||b.la.cc);c++);c==h.length&&(b=a);w("The "+b.type+" component ("+b.id+") is not "+(b.la.af?"powered yet":"ready yet"+(b.sg?" (waiting for notification)":""))+".");a=!1}a&&(d.la.Ib?d.Wb(!0):d.Ke(!0))};
|
||||
a=!0;break;case "speed":this.qa[b]=c;a=!0;break;case "setSpeed":this.qa[b]=c,c.onclick=function(){Xc(d,d.Y.Yd<<1,!0)},c.textContent=this.Y.Fe.toFixed(2)+"Mhz",a=!0}return a};function Yc(a,b){if(a.la.Ib){var c=a.A-b;a.A-=c;a.fb-=c}}function Zc(a,b,c){a.uc+=b;c&&(a.fb=a.A=0)}
|
||||
function $c(a,b){var c=30;60>c&&(c=60);2>c&&(c=2);var d=1;b&&1<a.Y.Yd&&a.Y.pe&&(d=a.Y.pe/a.Y.ug);a.Y.Xi=Math.round(1E3/30);a.Y.km=Math.floor(a.Y.Jd/c*d);a.Y.rh=Math.floor(a.Y.Jd/30*d);a.Y.Zi=Math.floor(a.Y.Jd/60*d);a.Y.Yi=Math.floor(a.Y.Jd/2*d);b||(a.Y.mf=a.Y.rh,a.Y.Lf=a.Y.Zi,a.Y.Kf=a.Y.Yi);a.Y.sh=0}function Wc(a,b){var c=a.uc+a.Ub+a.fb-a.A;b&&1<a.Y.Yd&&a.Y.pe>a.Y.ug&&(c=Math.round(c/a.Y.Yd));return c}function Oc(a){a.Y.pe=0;a.uc=a.Ub=a.fb=a.A=0;Pc(a);Xc(a,1)}
|
||||
function Xc(a,b,c){var d=!1;if(void 0!==b){.8>a.Y.pe/a.Y.Fe?b=1:d=!0;a.Y.Yd=b;b=a.Y.ug*a.Y.Yd;if(a.Y.Fe!=b){a.Y.Fe=b;b=a.Y.Fe.toFixed(2)+"Mhz";var e=a.qa.setSpeed;e&&(e.textContent=b);a.O("target speed: "+b)}c&&a.V&&a.V.yd()}Zc(a,a.Ub);a.Ub=0;a.Y.hf=pa();a.Y.Ge=0;$c(a);return d}
|
||||
|
|
@ -85,32 +85,32 @@ m.fm=function(a){var b=this.F;a<<=3;var c=b.Mc+a|0;if(7<=(b.Td-c|0))return this.
|
|||
m.Jk=function(a,b){return(a>>>0)+b>this.Zb?this.Aa+a|0:this.pg()};m.pg=function(){C.call(this.F,13,0);return-1};function id(a,b,c,d,e){a.Z=b;a.Aa=d;a.Ta=e;a.Zb=(e>>>0)+1;a.wb=c;a.type=c&7936;a.ext=c>>16&192;a.Xb=(b&4?a.F.Bc.Aa:a.F.Ec)+(b&65528)|0;4>a.id&&fd(a,!0)}function jd(a,b,c){var d=a.F,e=d.na(b+2),f=d.na(b)|(e&255)<<16,d=d.na(b+4);a.Z=c;a.Aa=f;a.Ta=d;a.Zb=(d>>>0)+1;a.wb=e;a.type=e&7936;a.ext=0;a.Xb=b;4>a.id&&fd(a,!0)}
|
||||
function hd(a,b,c,d){var e=a.F;if(!d&&c===a.A.Z)return a.Z=c,a.Aa=a.A.Aa,a.Ta=a.A.Ta,a.Zb=(a.A.Ta>>>0)+1,a.wb=a.A.wb,a.type=a.A.type,a.ext=a.A.ext,a.Xb=a.A.Xb,a.A.Z=-1,fd(a,!0,!0,!1),a.Aa;a.A.Z=-1;var f=e.na(b+0),g=e.na(b+4),h=g&7936,k=e.na(b+2)|(g&255)<<16,l=e.na(b+6),n=c&65528;if(80386<=e.ia){var q=f,k=k|(l&65280)<<16,f=f|(l&15)<<16;l&128&&(f=f<<12|4095)}switch(a.id){case 1:var p=a.C;a.cf=!1;if(p&&1==c&&a.B.length){var z=a.B[a.Xf-1];if(z&&!z())return-1}var F=c&3,v=(g&24576)>>13,z=-1,E,H;n||b>=e.Ec&&
|
||||
b<e.Ad&&(h=0);if(6144<=h)null!=d?z=0:!1!==p?(h&1024?v<=a.Lb&&(z=0):F<=a.Lb&&v==a.Lb&&(z=0),z||(c=c&-4|a.Lb&3)):F>=a.Lb&&(F>a.Lb&&(z=D(e),kd(e,D(e),!0),G(e,z),a.cf=!0),z=0);else{if(256==h||2304==h)return ld(a,c,p)?a.Aa:-1;if(1024==h)z=2,H=0,F<a.Lb&&(F=a.Lb);else if(3072==h)z=4,H=0,F<a.Lb&&(F=a.Lb);else if(1536==h)z=2,H=148224;else if(3584==h)z=4,H=148224;else if(1792==h)z=2,H=147712;else if(3840==h)z=4,H=147712;else if(1280==h)return ld(a,k&65535,p)?a.Aa:-1}0<z&&!(g&32768)&&(z=0);if(0<z&&(n=a.Lb,E=
|
||||
b==e.Mc+c,F<=v&&(!E||0<=e.rb||n<=v))){b=k&65535;h&2048&&(f=q|l<<16);l=h=0;d=b&3;if(d<n){if(-1===a.tg(b,!0))return-1;l=e.Sa.Aa;e.Sa.type&2048?(c=(d<<3)+4,k=4):(c=(d<<2)+2,k=2);h=e.na(l+c+k);if(!h)return C.call(e,10,h),-1;if(-1===e.ta.tg(h,!0))return-1;l=2==k?e.na(l+c):e.oa(l+c)}c=e.ca;e.ca&=~H;c&131072&&md(e,!0,!1);if(-1===a.tg(b,!1))return-1;nd(e,z);a.Xf=f;if(d<n){if(!0!==p)return-1;z=I(e);f=0;for(g&=31;g--;)a.N[f++]=od(e,e.ta,z),z+=2;p=e.ta.Z;g=I(e);kd(e,h,!0);G(e,l);c&131072&&(nd(e,4),pd(e,e.Pb.Z,
|
||||
4,2),e.Pb.load(0),pd(e,e.Ob.Z,4,2),e.Ob.load(0),pd(e,e.vb.Z,4,2),vd(e,0),pd(e,e.Xa.Z,4,2),wd(e,0));pd(e,p,e.ba,2);for(J(e,g);f;)J(e,a.N[--f]);a.cf=!0}return a.Aa}if(0!=z)return C.call(e,13,c&65532|(E?2:0)),-1;if(!(g&32768))return C.call(e,11,c&65532|(E?2:0)),-1;break;case 2:if(n){if(4096>h||2048==(h&2560))return C.call(e,13,c&65532),-1;if(!(g&32768))return C.call(e,11,c&65532),-1}break;case 3:if(!n||4096>h||512!=(h&2560))return C.call(e,13,c&65532),-1;if(!(g&32768))return C.call(e,12,c&65532),-1;
|
||||
b==e.Mc+c,F<=v&&(!E||0<=e.rb||n<=v))){b=k&65535;h&2048&&(f=q|l<<16);l=h=0;d=b&3;if(d<n){if(-1===a.tg(b,!0))return-1;l=e.Sa.Aa;e.Sa.type&2048?(c=(d<<3)+4,k=4):(c=(d<<2)+2,k=2);h=e.na(l+c+k);if(!h)return C.call(e,10,h),-1;if(-1===e.ta.tg(h,!0))return-1;l=2==k?e.na(l+c):e.oa(l+c)}c=e.ca;e.ca&=~H;c&131072&&md(e,!0,!1);if(-1===a.tg(b,!1))return-1;nd(e,z);a.Xf=f;if(d<n){if(!0!==p)return-1;z=I(e);f=0;for(g&=31;g--;)a.N[f++]=od(e,e.ta,z),z+=2;p=e.ta.Z;g=I(e);kd(e,h,!0);G(e,l);c&131072&&(nd(e,4),pd(e,e.Ob.Z,
|
||||
4,2),e.Ob.load(0),pd(e,e.Nb.Z,4,2),e.Nb.load(0),pd(e,e.vb.Z,4,2),vd(e,0),pd(e,e.Xa.Z,4,2),wd(e,0));pd(e,p,e.ba,2);for(J(e,g);f;)J(e,a.N[--f]);a.cf=!0}return a.Aa}if(0!=z)return C.call(e,13,c&65532|(E?2:0)),-1;if(!(g&32768))return C.call(e,11,c&65532|(E?2:0)),-1;break;case 2:if(n){if(4096>h||2048==(h&2560))return C.call(e,13,c&65532),-1;if(!(g&32768))return C.call(e,11,c&65532),-1}break;case 3:if(!n||4096>h||512!=(h&2560))return C.call(e,13,c&65532),-1;if(!(g&32768))return C.call(e,12,c&65532),-1;
|
||||
break;case 4:p=h&-513;if(!n||256!=p&&2304!=p)return C.call(e,13,c&65532),-1;2304==p&&(a.ti=k+e.na(k+100+2)|0,a.Ek=k+a.Ta|0);break;case 6:if(!(h&4096)&&768<h&&2304!=h&&2816!=h)return-1}d?(a.A.Z=c,a.A.Aa=k,a.A.Ta=f,a.A.wb=g,a.A.type=h,a.A.ext=l,a.A.Xb=b):(a.Z=c,a.Aa=k,a.Ta=f,a.Zb=(f>>>0)+1,a.wb=g,a.type=h,a.ext=l,a.Xb=b,fd(a,!0,!0,!1));return k}
|
||||
function ld(a,b,c){var d=a.F,e=a.Lb,f=d.Sa.Z,g=d.Sa.Aa;if(!c){if(!(d.Sa.type&512))return C.call(d,13,b&65532),!1;d.jb(d.Sa.Xb+4,d.Sa.wb&=-513)}if(-1===d.Sa.load(b))return!1;var h=d.Sa.Aa;if(!1!==c){if(d.Sa.type&512)return C.call(d,13,b&65532),!1;d.jb(d.Sa.Xb+4,d.Sa.wb|=512)}d.Sa.type=d.Sa.type&-513|d.Sa.wb&512;256==d.Sa.type||768==d.Sa.type?(d.jb(g+14,K(d)),d.jb(g+16,xd(d)),d.jb(g+18,d.G),d.jb(g+20,d.I),d.jb(g+22,d.M),d.jb(g+24,d.H),d.jb(g+26,I(d)),d.jb(g+28,d.P),d.jb(g+30,d.K),d.jb(g+32,d.J),d.jb(g+
|
||||
34,d.Xa.Z),d.jb(g+36,d.va.Z),d.jb(g+38,d.ta.Z),d.jb(g+40,d.vb.Z),d.Bc.load(d.na(h+42)),yd(d,d.na(h+16)|(c?16384:0)),d.G=d.na(h+18),d.I=d.na(h+20),d.M=d.na(h+22),d.H=d.na(h+24),d.P=d.na(h+28),d.K=d.na(h+30),d.J=d.na(h+32),d.Xa.load(d.na(h+34)),d.vb.load(d.na(h+40)),zd(d,d.na(h+14),d.na(h+36)),b=38,g=26,a.Lb<e&&(g=(a.Lb<<2)+2,b=g+2),kd(d,d.na(h+b),!0),G(d,d.na(h+g))):(d.nb(g+28,d.Pd),d.nb(g+32,K(d)),d.nb(g+36,xd(d)),d.nb(g+40,d.G),d.nb(g+44,d.I),d.nb(g+48,d.M),d.nb(g+52,d.H),d.nb(g+56,I(d)),d.nb(g+
|
||||
60,d.P),d.nb(g+64,d.K),d.nb(g+68,d.J),d.nb(g+72,d.Xa.Z),d.nb(g+76,d.va.Z),d.nb(g+80,d.ta.Z),d.nb(g+84,d.vb.Z),d.nb(g+88,d.Ob.Z),d.nb(g+92,d.Pb.Z),Ad.call(d,d.oa(h+28)),d.Bc.load(d.na(h+96)),yd(d,d.oa(h+36)|(c?16384:0)),d.G=d.oa(h+40),d.I=d.oa(h+44),d.M=d.oa(h+48),d.H=d.oa(h+52),d.P=d.oa(h+60),d.K=d.oa(h+64),d.J=d.oa(h+68),d.Xa.load(d.na(h+72)),d.vb.load(d.na(h+84)),d.Ob.load(d.na(h+88)),d.Pb.load(d.na(h+92)),zd(d,d.oa(h+32),d.na(h+76)),b=80,g=56,a.Lb<e&&(g=(a.Lb<<3)+4,b=g+4),kd(d,d.na(h+b),!0),G(d,
|
||||
60,d.P),d.nb(g+64,d.K),d.nb(g+68,d.J),d.nb(g+72,d.Xa.Z),d.nb(g+76,d.va.Z),d.nb(g+80,d.ta.Z),d.nb(g+84,d.vb.Z),d.nb(g+88,d.Nb.Z),d.nb(g+92,d.Ob.Z),Ad.call(d,d.oa(h+28)),d.Bc.load(d.na(h+96)),yd(d,d.oa(h+36)|(c?16384:0)),d.G=d.oa(h+40),d.I=d.oa(h+44),d.M=d.oa(h+48),d.H=d.oa(h+52),d.P=d.oa(h+60),d.K=d.oa(h+64),d.J=d.oa(h+68),d.Xa.load(d.na(h+72)),d.vb.load(d.na(h+84)),d.Nb.load(d.na(h+88)),d.Ob.load(d.na(h+92)),zd(d,d.oa(h+32),d.na(h+76)),b=80,g=56,a.Lb<e&&(g=(a.Lb<<3)+4,b=g+4),kd(d,d.na(h+b),!0),G(d,
|
||||
d.oa(h+g)));c&&d.jb(h+0,f);d.Za|=8;return!0}m.save=function(){return[this.Z,this.Aa,this.Ta,this.wb,this.id,this.lc,this.Lb,this.Gc,this.Xb,this.Oc,this.Ba,this.ba,this.R,this.type,this.Zb]};m.restore=function(a){"number"==typeof a?this.load(a):(this.Z=a[0],this.Aa=a[1],this.Ta=a[2],this.wb=a[3],this.id=a[4],this.lc=a[5],this.Lb=a[6],this.Gc=a[7],this.Xb=a[8],this.Oc=a[9]||2,this.Ba=a[10]||65535,this.ba=a[11]||2,this.R=a[12]||65535,this.type=a[13]||this.wb&7936,this.Zb=a[14]||(this.Ta>>>0)+1)};
|
||||
function fd(a,b,c,d){void 0===c&&(c=!!(a.F.Za&1));a.cd=!1;if(c)if(a.load=a.tg,a.Wi=a.fm,a.nc=a.Ci,a.oc=a.Ei,void 0===d&&(d=!!(a.F.ca&131072)),d)a.load=a.V,a.nc=a.ea,a.oc=a.qa,a.Lb=a.Gc=3,a.ba=a.Oc=2,a.R=a.Ba=65535,a.Ta=65535,a.Zb=a.Ta+1,a.Oc=a.ba,a.Xb=-1,a.cf=!1;else{if(!(a.Z&-4))a.nc=a.og,a.oc=a.pg;else if(a.type&4096){6144==(a.type&6656)&&(a.nc=a.og);if(a.type&2048||!(a.type&512))a.oc=a.pg;1024==(a.type&3072)&&(a.nc==a.Ci&&(a.nc=a.Ik),a.oc==a.Ei&&(a.oc=a.Jk),a.cd=!0);b&&6>a.id&&a.Z&-4&&-1!==a.Xb&&
|
||||
(c=a.Xb+5,d=a.F.Qa(c),d&1||a.F.qc(c,d|1))}b&&(a.Lb=a.Z&3,a.Gc=(a.wb&24576)>>13,80386>a.F.ia||!(a.ext&64)?(a.ba=2,a.R=65535):(a.ba=4,a.R=-1),a.Oc=a.ba,a.Ba=a.R)}else a.load=a.lh,a.Wi=a.gm,a.nc=a.Di,a.oc=a.Fi,a.Lb=a.Gc=0,a.Xb=-1,a.cf=!1}
|
||||
function Bd(a){this.ia=a.model||8088;var b=a.stepping;this.Uc=this.ia+(b?ca(b,16):0);b=0;switch(this.ia){default:b=4772727;break;case 80286:b=6E6;break;case 80386:b=16E6}Lc.call(this,a,b);this.Yf=61442;this.Cc=1792;this.Wf=28672;this.Dd=4;this.ra=255;this.B=80286<=this.ia?xb:wb;this.X=Cd;this.bg=Dd;this.gg=Ed;this.hg=Fd;if(80186<=this.ia&&(this.X=Cd.slice(),this.bg=Dd.slice(),this.gg=Ed.slice(),this.ra=31,this.X[15]=Gd,this.X[96]=Hd,this.X[97]=Id,this.X[98]=Jd,this.X[99]=Gd,this.X[100]=Gd,this.X[101]=
|
||||
Gd,this.X[102]=Gd,this.X[103]=Gd,this.X[104]=Kd,this.X[105]=Ld,this.X[106]=Md,this.X[107]=Nd,this.X[108]=Od,this.X[109]=Pd,this.X[110]=Qd,this.X[111]=Rd,this.X[192]=Sd,this.X[193]=Td,this.X[200]=Ud,this.X[201]=Yd,this.X[241]=Zd,this.bg[7]=$d,this.gg[7]=$d,80286<=this.ia)){this.Yf=2;this.Cc|=28672;this.Dd=0;this.X[15]=ae;this.tc=ge.slice();for(a=0;a<this.tc.length;a++)this.tc[a]||(this.tc[a]=he);this.X[84]=ie;this.X[99]=je;if(80386<=this.ia){var c;this.Wf=0;this.Cc|=196608;this.X[100]=ke;this.X[101]=
|
||||
le;this.X[102]=me;this.X[103]=ne;for(c in M)this.tc[+c]=M[c];80546<=this.Uc&&80562>=this.Uc&&(this.tc[166]=oe,this.tc[167]=pe)}}this.Id=[];this.le=[];this.ne=0;Oc(this);this.la.Wd=this.la.Mi=!1;this.Pg=0;this.ld=this.sa=[];this.La=this.Nb=this.Fa=this.Gd=this.jd=this.Gb=this.Db=0;qe(this)}db(Bd,Lc);function re(a,b,c,d){Gc((d?a.ld:a.sa)[b>>>a.La],c);d&&Ub(a)}
|
||||
le;this.X[102]=me;this.X[103]=ne;for(c in M)this.tc[+c]=M[c];80546<=this.Uc&&80562>=this.Uc&&(this.tc[166]=oe,this.tc[167]=pe)}}this.Id=[];this.le=[];this.ne=0;Oc(this);this.la.Wd=this.la.Mi=!1;this.Pg=0;this.ld=this.sa=[];this.La=this.Sb=this.Fa=this.Gd=this.jd=this.Gb=this.Db=0;qe(this)}db(Bd,Lc);function re(a,b,c,d){Gc((d?a.ld:a.sa)[b>>>a.La],c);d&&Ub(a)}
|
||||
function se(a){var b;if(a.sa===a.ld){a.sa=Array(a.Gd);a.me=new B(null,0,0,5,null,a);Mb(a.me,a.ha);for(b=0;b<a.Gd;b++)a.sa[b]=a.me;a.kd=new B;a.ag=Array(512);a.oe=0}else for(var c=0;c<a.Hd.length;c++){b=a.Hd[c];var d=a.sa[b];512>a.oe&&(a.ag[a.oe++]=d);a.sa[b]=a.me}a.Hd=[]}function Ub(a){a.Za&-2147483648&&se(a)}
|
||||
function Fc(a,b,c,d){var e=(b&-4194304)>>>20,f=a.ld[(a.Pd+e&a.Gb)>>>a.La],g=f.Nd(e);if(!(g&1))return d||te.call(a,b,!1,c),a.kd;if(!(g&4)&&3==a.pa)return d||te.call(a,b,!0,c),a.kd;var h=(b&4190208)>>>10,g=a.ld[((g&-4096)+h&a.Gb)>>>a.La],k=g.Nd(h);if(!(k&1))return d||te.call(a,b,!1,c),a.kd;if(!(k&4)&&3==a.pa)return d||te.call(a,b,!0,c),a.kd;c=a.ld[((k&-4096)+(b&4095)&a.Gb)>>>a.La];if(d)return c;d=b>>>a.La;k=a.sa[d];b=b&-4096;var l;0<a.oe?(l=a.ag[--a.oe],l.hh(b)):l=new B(b,0,0,6);b=l;b.Cd=c;b.yb=f;b.A=
|
||||
e>>2;b.zb=g;b.B=h>>2;vb&&ac&&c.da&&!c.controller&&!c.Te&&!c.Ue?(b.Ya=c.Ya,b.fe=c.fe,b.da=c.da,Yb(b,Kc)):(b.ea=c?yc(32):0,b.W=c?yc(96):0,Yb(b,Ic));Mb(b,a.ha,k);a.sa[d]=b;a.Hd.push(d);return b}function ue(a){a.sa!==a.ld&&(a.sa=a.ld,a.me=null,a.Hd=null,a.kd=null)}m=Bd.prototype;m.reset=function(){this.la.Ib&&this.Wb();qe(this);Oc(this);this.la.ud=!1};
|
||||
function ve(a,b){var c;switch(b){case 0:c=a.G;break;case 1:c=a.I;break;case 2:c=a.M;break;case 3:c=a.H;break;case 4:c=I(a);break;case 5:c=a.P;break;case 6:c=a.K;break;case 7:c=a.J}return c}function we(a,b,c){switch(b){case 0:a.G=c;break;case 1:a.I=c;break;case 2:a.M=c;break;case 3:a.H=c;break;case 4:G(a,c);break;case 5:a.P=c;break;case 6:a.K=c;break;case 7:a.J=c}}
|
||||
function qe(a){a.G=0;a.H=0;a.I=0;a.M=0;a.gb=0;a.P=0;a.K=0;a.J=0;a.cb=!1;a.ja=a.wa=0;a.aa=0;a.ig=0;a.L=0;a.Za=65520;a.Mc=0;a.Td=1023;a.ca=a.Pa=0;a.Wc=a.td=a.Vc=a.Xc=0;a.rb=-1;a.bc=a.sb=-1;a.re=a.U=-1;a.va=new ed(a,1,"CS");a.vb=new ed(a,2,"DS");a.Xa=new ed(a,2,"ES");a.ta=new ed(a,3,"SS");G(a,0);kd(a,0);if(80386<=a.ia){switch(a.Uc){case 80562:case 80563:a.M=771;break;case 80578:a.M=772;break;case 80594:a.M=773;break;case 80595:case 80596:a.M=776}a.Za=16;a.ji=0;a.te=0;a.Pd=0;a.Ja=[0,0,0,0,null,null,0,
|
||||
0];a.Ce=[null,null,null,null,null,null,0,0];a.Ob=new ed(a,2,"FS");a.Pb=new ed(a,2,"GS");ue(a)}a.qf=new ed(a,0,"NULL");a.ka=a.vb;a.Ka=a.ta;a.S=a.Ha=0;a.D=a.C=-1;a.$b=a.qf;a.ua=0;if(80286>a.ia)zd(a,0,65535);else{a.Ec=0;a.Ad=65535;a.Bc=new ed(a,5,"LDT",!0);a.Sa=new ed(a,4,"TSS",!0);a.Ea=new ed(a,6,"VER",!0);zd(a,65520,61440);var b,c=K(a);b=a.va;var d=-65536;80386>b.F.ia&&(d&=16777215);b=b.Aa=d;a.Ga=b+c|0;a.gf=(b>>>0)+(a.va.Ta>>>0)+1}yd(a,0);md(a)}
|
||||
0];a.Ce=[null,null,null,null,null,null,0,0];a.Nb=new ed(a,2,"FS");a.Ob=new ed(a,2,"GS");ue(a)}a.qf=new ed(a,0,"NULL");a.ka=a.vb;a.Ka=a.ta;a.S=a.Ha=0;a.D=a.C=-1;a.$b=a.qf;a.ua=0;if(80286>a.ia)zd(a,0,65535);else{a.Ec=0;a.Ad=65535;a.Bc=new ed(a,5,"LDT",!0);a.Sa=new ed(a,4,"TSS",!0);a.Ea=new ed(a,6,"VER",!0);zd(a,65520,61440);var b,c=K(a);b=a.va;var d=-65536;80386>b.F.ia&&(d&=16777215);b=b.Aa=d;a.Ga=b+c|0;a.gf=(b>>>0)+(a.va.Ta>>>0)+1}yd(a,0);md(a)}
|
||||
function xe(a){2==a.Oc?(a.dc=a.na,a.Oa=ye,a.$a=ze,a.Jb=Ae,2==a.ba?(a.W=Be,a.fa=Ce,a.ya=De):(a.W=Ee,a.fa=Fe,a.ya=Ge)):(a.dc=a.oa,a.Oa=He,a.$a=Ke,a.Jb=Le,2==a.ba?(a.W=Me,a.fa=Ne,a.ya=Oe):(a.W=Pe,a.fa=Qe,a.ya=Re))}function nd(a,b){a.ba!=b&&(a.Ha|=1024,a.ba=b,a.R=2==b?65535:-1,Se(a))}function Se(a){2==a.ba?(a.Ia=32768,a.tb=a.na,a.rc=a.jb,2==a.Oc?(a.W=Be,a.fa=Ce,a.ya=De):(a.W=Me,a.fa=Ne,a.ya=Oe)):(a.Ia=-2147483648,a.tb=a.oa,a.rc=a.nb,2==a.Oc?(a.W=Ee,a.fa=Fe,a.ya=Ge):(a.W=Pe,a.fa=Qe,a.ya=Re))}
|
||||
function bf(a){a.Oc=a.va.Oc;a.Ba=a.va.Ba;xe(a);a.ba=a.va.ba;a.R=a.va.R;Se(a);a.Ha&=-3073}m.Qi=function(){var a=this.G+this.H+this.I+this.M+I(this)+this.P+this.K+this.J|0;return a=a+K(this)+this.va.Z+this.vb.Z+this.ta.Z+this.Xa.Z+xd(this)|0};function cf(a,b,c){void 0===a.Id[b]&&(a.Id[b]=[]);a.Id[b].push(c)}function df(a,b,c){void 0!==c&&(null==a.le[b]&&a.ne++,a.le[b]=c)}function ef(a,b){var c=a.le[b];null!=c&&(c(--a.ne),delete a.le[b])}
|
||||
function ff(a,b){for(var c=a.Ja[7],d=c>>16,e=0;4>e;e++){if(c&3){var f=!!(d&1),g=a.Ja[e],g=g&~(d>>2&3);b?a.sa[g>>>a.La].Sd(g&a.Fa,f,a):Gc(a.sa[g>>>a.La],f)}c>>=2;d>>=4}}function Dc(a,b,c,d){if(!(a.S&8192)&&a.Ja[7]&255){c--;var e=a.Ja[7],f=e>>16;d=d?1:0==d?3:0;for(var g=0;4>g;g++){if(e&3&&(f&3)==d){var h=f>>2;if(b+c>=a.Ja[g]&&b<=a.Ja[g]+h){a.Ja[6]|=1<<g;a.ua|=2;break}}e>>=2;f>>=4}}}
|
||||
function md(a,b,c){void 0===b&&(b=!!(a.Za&1));void 0===c&&(c=!!(a.ca&131072));a.hg=b&&!c?gf:Fd;fd(a.va,!1,b,c);fd(a.vb,!1,b,c);fd(a.ta,!1,b,c);fd(a.Xa,!1,b,c);80386<=a.ia&&(fd(a.Ob,!1,b,c),fd(a.Pb,!1,b,c));bf(a)}
|
||||
m.save=function(){var a=new hf(this);N(a,0,[this.G,this.H,this.I,this.M,I(this),this.P,this.K,this.J]);var b=K(this),c=this.va.save(),d=this.vb.save(),e=this.ta.save(),f=this.Xa.save(),g;null!=this.Ec?(g=[this.Za,this.Ec,this.Ad,this.Mc,this.Td,this.Bc.save(),this.Sa.save(),this.Pa],80386<=this.ia&&(g.push(this.ji),g.push(this.te),g.push(this.Pd),g.push(this.Ja),g.push(this.Ce))):g=null;b=[b,c,d,e,f,g,xd(this)];80386<=this.ia&&(b.push(this.Ob.save()),b.push(this.Pb.save()));N(a,1,b);N(a,2,[this.ka.lc,
|
||||
function md(a,b,c){void 0===b&&(b=!!(a.Za&1));void 0===c&&(c=!!(a.ca&131072));a.hg=b&&!c?gf:Fd;fd(a.va,!1,b,c);fd(a.vb,!1,b,c);fd(a.ta,!1,b,c);fd(a.Xa,!1,b,c);80386<=a.ia&&(fd(a.Nb,!1,b,c),fd(a.Ob,!1,b,c));bf(a)}
|
||||
m.save=function(){var a=new hf(this);N(a,0,[this.G,this.H,this.I,this.M,I(this),this.P,this.K,this.J]);var b=K(this),c=this.va.save(),d=this.vb.save(),e=this.ta.save(),f=this.Xa.save(),g;null!=this.Ec?(g=[this.Za,this.Ec,this.Ad,this.Mc,this.Td,this.Bc.save(),this.Sa.save(),this.Pa],80386<=this.ia&&(g.push(this.ji),g.push(this.te),g.push(this.Pd),g.push(this.Ja),g.push(this.Ce))):g=null;b=[b,c,d,e,f,g,xd(this)];80386<=this.ia&&(b.push(this.Nb.save()),b.push(this.Ob.save()));N(a,1,b);N(a,2,[this.ka.lc,
|
||||
this.Ka.lc,this.S,this.Ha,this.ua,this.D,this.C]);N(a,3,[0,this.uc,this.Y.Yd]);b=this.ea;c=!!(this.Za&-2147483648);d=0;e=[];(f=!b.V&&b.xg==b.Gb)||Rb(b,!0);for(g=0;g<b.U;g++){var h=b.sa[g];if(c&&h.type!=$b||h.Wa||h.Ni){e[d++]=g;var k=d++;a:if(h=h.save()){for(var l=0,n=0,q=[];l<h.length;){for(var p=h[l],z=l+1;z<h.length&&h[z]===p;)z++;q[n++]=z-l;q[n++]=p;l=z}if(q.length<h.length){h=q;break a}}e[k]=h}}f||Rb(b,!1);e[d]=f;N(a,4,e);return a.data()};
|
||||
m.restore=function(a){var b=a[0];this.G=b[0];this.H=b[1];this.I=b[2];this.M=b[3];var c=b[4];this.P=b[5];this.K=b[6];this.J=b[7];b=a[1];this.va.restore(b[1]);this.vb.restore(b[2]);this.ta.restore(b[3]);this.Xa.restore(b[4]);var d=b[5];d&&d.length&&(this.Za=d[0],this.Ec=d[1],this.Ad=d[2],this.Mc=d[3],this.Td=d[4],this.Bc.restore(d[5]),this.Sa.restore(d[6]),this.Pa=d[7],80386<=this.ia&&(this.ji=d[8],this.te=d[9],this.Pd=d[10],this.Ja=d[11],this.Ce=d[12]),md(this));yd(this,b[6]);var d=!1,e;a:{e=this.ea;
|
||||
var f=a[4],g;for(g=0;g<f.length-1;g+=2){var h=f[g],k=f[g+1];if(k&&k.length<e.ga){for(var l=0,n=Array(e.ga),q=0;q<k.length-1;)for(var p=k[q++],z=k[q++];p--;)n[l++]=z;k=n}l=e.sa[h];if(!l||!l.restore(k)){w("Unable to restore memory block "+h);e=!1;break a}}void 0!==f[g]&&Rb(e,f[g]);e=!0}e&&(zd(this,b[0],this.va.Z),G(this,c),kd(this,this.ta.Z),80386<=this.ia&&(this.Ob.restore(b[7]),this.Pb.restore(b[8])),d=!0);b=a[2];this.ka=null!=b[0]&&jf(this,b[0])||this.vb;this.Ka=null!=b[1]&&jf(this,b[1])||this.ta;
|
||||
var f=a[4],g;for(g=0;g<f.length-1;g+=2){var h=f[g],k=f[g+1];if(k&&k.length<e.ga){for(var l=0,n=Array(e.ga),q=0;q<k.length-1;)for(var p=k[q++],z=k[q++];p--;)n[l++]=z;k=n}l=e.sa[h];if(!l||!l.restore(k)){w("Unable to restore memory block "+h);e=!1;break a}}void 0!==f[g]&&Rb(e,f[g]);e=!0}e&&(zd(this,b[0],this.va.Z),G(this,c),kd(this,this.ta.Z),80386<=this.ia&&(this.Nb.restore(b[7]),this.Ob.restore(b[8])),d=!0);b=a[2];this.ka=null!=b[0]&&jf(this,b[0])||this.vb;this.Ka=null!=b[1]&&jf(this,b[1])||this.ta;
|
||||
this.S=b[2];this.Ha=b[3];this.ua=b[4];this.D=b[5];this.C=b[6];b=a[3];this.uc=b[1];Xc(this,b[2]);return d};function jf(a,b){switch(b){case "CS":return a.va;case "DS":return a.vb;case "SS":return a.ta;case "ES":return a.Xa;case "NULL":return a.qf;default:return[0,b,0,0,""]}}function kf(a,b){null!=zd(a,K(a),b)&&(a.S|=a.Dd)}function vd(a,b){-1!==a.vb.load(b)&&(a.S|=a.Dd)}
|
||||
function kd(a,b,c){var d=I(a);-1!==a.ta.load(b)&&(G(a,d),a.ta.cd?(a.Lg=a.ta.Aa+a.ta.Ba|0,a.rd=a.ta.Aa+a.ta.Ta|0):(a.Lg=a.ta.Aa+a.ta.Ta|0,a.rd=a.ta.Aa),c||(a.S|=4))}function wd(a,b){-1!==a.Xa.load(b)&&(a.S|=a.Dd)}function K(a){return a.Ga-a.va.Aa|0}function O(a,b){a.Ga=a.va.Aa+(b&a.R)|0}function lf(a,b){a.Ga=b;a.gf=(a.va.Aa>>>0)+(a.va.Ta>>>0)+1;a.pa=a.va.Lb;bf(a)}function zd(a,b,c,d){var e=a.va;e.Xf=b;e.C=d;b=e.load(c);return-1!==b?(lf(a,b+(a.va.Xf&a.va.R)),a.va.cf):null}
|
||||
function mf(a,b){var c=(a.Ga>>>0)+b;c>a.gf&&(8088>=a.ia||a.va.Ta==a.va.Ba?c=a.va.Aa+(c-a.gf&a.R):C.call(a,13,0));return c|0}function nf(a){a.Ga=a.re}function I(a){return a.gb&~a.ta.Ba|a.ga-a.ta.Aa}function G(a,b){a.gb=b;a.ga=a.ta.Aa+(b&a.ta.Ba)|0}function of(a,b,c,d,e,f){if(63!=(e&63)&&e!=a.resultType){var g=(e^a.resultType)&a.resultType;g&&(g&1&&pf(a),g&2&&qf(a),g&4&&rf(a),g&8&&sf(a),g&16&&tf(a),g&32&&uf(a))}f?(a.Wc=d,a.Vc=b):(a.Wc=b,a.Vc=d);a.td=c;a.Xc=d;a.resultType=e}
|
||||
|
|
@ -119,7 +119,7 @@ function rf(a){a.resultType&4&&(a.ca&=-17,(a.Vc^a.Wc^a.td)&16&&(a.ca|=16),a.resu
|
|||
function uf(a){a.resultType&32&&(a.ca&=-2049,(a.Wc^a.Vc)&(a.td^a.Vc)&a.resultType&-2147450752&&(a.ca|=2048),a.resultType&=-33);return a.ca&2048}function xf(a){a.resultType&=-2;a.ca&=-2}function Cf(a){a.resultType&=-5;a.ca&=-17}function Df(a){a.resultType&=-9;a.ca&=-65}function zf(a){a.resultType&=-33;a.ca&=-2049}function wf(a){a.resultType&=-2;a.ca|=1}function Ef(a){a.resultType&=-5;a.ca|=16}function Ff(a){a.resultType&=-9;a.ca|=64}function yf(a){a.resultType&=-33;a.ca|=2048}
|
||||
function xd(a){return a.ca&-2262|pf(a)|qf(a)|rf(a)|sf(a)|tf(a)|uf(a)}function Gf(a,b){b=b|a.Za&1|65520;a.Za=a.Za&-65536|b&65535;a.Za&1&&md(a,!0)}function yd(a,b,c){a.Za&1||(b&=~a.Wf);void 0===c&&(c=a.pa);c?b=b&-12289|a.ca&12288:a.Pa=(b&12288)>>12;c>a.Pa&&(b=b&-513|a.ca&512);a.resultType=128;a.ca=a.ca&~(a.Cc|2261)|b&(a.Cc|2261)|a.Yf;a.ca&256&&(a.ua|=2,a.S|=4)}
|
||||
function Hf(a,b,c,d){var e=0;if(a.Za&1&&(a.pa>a.Pa||a.ca&131072)&&a.Sa.ti)for(var f=a.Sa.ti+(b>>>3),e=(1<<c)-1<<(b&7);e&&f<=a.Sa.Ek&&!(a.Qa(f)&e);)e>>>=8,f++;return e?(A(a,256)&&y(a,"checkIOPM("+u(b)+","+c+","+(d?"input":"output")+"): trapped",!0,!0),C.call(a,13,0),!1):!0}
|
||||
m.Qb=function(a,b,c){var d=!1;switch(b){case "EAX":case "EBX":case "ECX":case "EDX":case "ESP":case "EBP":case "ESI":case "EDI":case "EIP":case "AX":case "BX":case "CX":case "DX":case "SP":case "BP":case "SI":case "DI":case "IP":case "PC":case "CS":case "DS":case "SS":case "ES":case "FS":case "GS":case "CR0":case "CR2":case "CR3":case "PS":case "C":case "P":case "A":case "Z":case "S":case "T":case "I":case "D":case "V":this.qa[b]=c;this.Pg++;d=!0;break;default:d=this.parent.Qb.call(this,a,b,c)}return d};
|
||||
m.Pb=function(a,b,c){var d=!1;switch(b){case "EAX":case "EBX":case "ECX":case "EDX":case "ESP":case "EBP":case "ESI":case "EDI":case "EIP":case "AX":case "BX":case "CX":case "DX":case "SP":case "BP":case "SI":case "DI":case "IP":case "PC":case "CS":case "DS":case "SS":case "ES":case "FS":case "GS":case "CR0":case "CR2":case "CR3":case "PS":case "C":case "P":case "A":case "Z":case "S":case "T":case "I":case "D":case "V":this.qa[b]=c;this.Pg++;d=!0;break;default:d=this.parent.Pb.call(this,a,b,c)}return d};
|
||||
function If(a,b,c,d){var e=(d?a.ld:a.sa)[(b&a.Db)>>>a.La];e&&5==e.type&&(e=Fc(a,b,!1,!0));if(e){var f=b&a.Fa;if(!c||1==c)return e.se(f,b);if(2==c)return f<a.Fa?e.cg(f,b):e.se(f,b)|If(a,b+1,1,d)<<8;if(4==c)return f<a.Fa-2?e.ii(f,b):f==a.Fa-1?e.cg(f,b)|If(a,b+2,2,d)<<16:e.se(f,b)|If(a,b+1,1,d)<<8|If(a,b+2,1,d)<<16|If(a,b+3,1,d)<<24}return null}m.Qa=function(a){return this.sa[(a&this.Db)>>>this.La].jc(a&this.Fa,a)};
|
||||
m.na=function(a){var b=a&this.Fa,c=(a&this.Db)>>>this.La;this.A-=this.B.Eg;if(b<this.Fa)return this.sa[c].rf(b,a);b=this.sa[c].jc(b,a);this.S&4096||(b|=this.sa[c+1&this.jd].jc(0,a+1)<<8);return b};m.oa=function(a){var b=a&this.Fa,c=(a&this.Db)>>>this.La;if(b<this.Fa-2)return this.sa[c].Nd(b,a);for(var d=0,e=4,f=0,g=4-(b&3);e--;){d|=this.sa[c].jc(b++,a++)<<f;if(this.S&4096)break;--g||(c=c+1&this.jd,b=0);f+=8}return d};m.qc=function(a,b){this.sa[(a&this.Db)>>>this.La].sc(a&this.Fa,b&255,a)};
|
||||
m.jb=function(a,b){var c=a&this.Fa,d=(a&this.Db)>>>this.La;this.A-=this.B.Eg;c<this.Fa?this.sa[d].yf(c,b&65535,a):(this.sa[d++].sc(c,b&255,a),this.S&4096||this.sa[d&this.jd].sc(0,b>>8&255,a+1))};m.nb=function(a,b){var c=a&this.Fa,d=(a&this.Db)>>>this.La;this.A-=this.B.Eg;if(c<this.Fa-2)this.sa[d].xf(c,b,a);else for(var e=4,f=4-(c&3);e--;){this.sa[d].sc(c++,b&255,a++);if(this.S&4096)break;--f||(d=d+1&this.jd,c=0);b>>>=8}};
|
||||
|
|
@ -129,7 +129,7 @@ m.Ma=function(){var a=mf(this,this.ba),b=this.tb(this.Ga);this.Ga=a;return b};m.
|
|||
function pd(a,b,c,d){c=a.ga-c|0;0>(c-a.rd|0)&&0<=(a.rd^c)&&(8088>=a.ia||!a.ta.cd&&a.ta.Ta==a.ta.Ba||a.ta.cd&&!a.ta.Ta?(G(a,c-a.ta.Aa&a.ta.Ba),c=a.ga):C.call(a,12,0));switch(d){case 1:a.qc(c,b);break;case 2:a.jb(c,b);break;case 4:a.nb(c,b)}a.ga=c}function J(a,b){var c=a.ga-a.ba|0;0>(c-a.rd|0)&&0<=(a.rd^c)&&(8088>=a.ia||!a.ta.cd&&a.ta.Ta==a.ta.Ba||a.ta.cd&&!a.ta.Ta?(G(a,c-a.ta.Aa&a.ta.Ba),c=a.ga):C.call(a,12,0));a.rc(c,b);a.ga=c}
|
||||
function Sf(a,b,c){var d=4;1==b.length&&(d=1,c=c?1:0);if(80386>a.ia)2<b.length&&(b=b.substr(1,2));else if("PS"==b||2<b.length)d=8;a.qa[b]&&(void 0===c&&(ub(a,"Value for "+b+" is invalid"),a.Wb()),d=!a.la.Ib||a.la.Oi?r(c,d):"--------".substr(0,d),a.qa[b].textContent!=d&&(a.qa[b].textContent=d))}
|
||||
m.qd=function(a){this.Pg&&(a||!this.la.Ib||this.la.Oi)&&(Sf(this,"EAX",this.G),Sf(this,"EBX",this.H),Sf(this,"ECX",this.I),Sf(this,"EDX",this.M),Sf(this,"ESP",I(this)),Sf(this,"EBP",this.P),Sf(this,"ESI",this.K),Sf(this,"EDI",this.J),Sf(this,"CS",this.va.Z),Sf(this,"DS",this.vb.Z),Sf(this,"SS",this.ta.Z),Sf(this,"ES",this.Xa.Z),Sf(this,"EIP",K(this)),a=xd(this),Sf(this,"PS",a),Sf(this,"V",a&2048),Sf(this,"D",a&1024),Sf(this,"I",a&512),Sf(this,"T",a&256),Sf(this,"S",a&128),Sf(this,"Z",a&64),Sf(this,
|
||||
"A",a&16),Sf(this,"P",a&4),Sf(this,"C",a&1),80386==this.ia&&(Sf(this,"FS",this.Ob.Z),Sf(this,"GS",this.Pb.Z),Sf(this,"CR0",this.Za),Sf(this,"CR2",this.te),Sf(this,"CR3",this.Pd)));if(a=this.qa.speed)a.textContent=this.la.Ib&&this.Y.pe?this.Y.pe.toFixed(2)+"Mhz":"Stopped"};
|
||||
"A",a&16),Sf(this,"P",a&4),Sf(this,"C",a&1),80386==this.ia&&(Sf(this,"FS",this.Nb.Z),Sf(this,"GS",this.Ob.Z),Sf(this,"CR0",this.Za),Sf(this,"CR2",this.te),Sf(this,"CR3",this.Pd)));if(a=this.qa.speed)a.textContent=this.la.Ib&&this.Y.pe?this.Y.pe.toFixed(2)+"Mhz":"Stopped"};
|
||||
m.vf=function(a){this.la.Wd=!0;var b=this.la.Mi=this.ha&&Tf(this.ha),c=a?this.la.eh?0:1:-1;this.la.eh=!1;this.fb=this.A=a;this.N&&!a&&bd(this.N);a||A(this,1024)||(this.S|=4);do{var d=this.S&3312;if(d)this.Ha|=d;else if(this.re=this.Ga,this.ka=this.vb,this.Ka=this.ta,this.D=this.C=-1,this.Ha&3072&&bf(this),this.Ha=this.S&256,this.ua){a:{if(!(this.S&4))for(var d=80286>this.ia?0:1,e=0;2>e;e++){switch(d){case 0:if(this.ua&1&&this.ca&512){var f=Uf(this.N);if(-1<=f&&(this.ua&=-2,0<=f)){this.ua&=-5;Vf.call(this,
|
||||
f);d=!0;break a}}break;case 1:if(this.ua&2){this.ua&=-3;80386<=this.ia&&(this.Ja[6]|=16384);Vf.call(this,1);d=!0;break a}}d=1-d}d=!1}if(d&&!a){this.O("interrupt dispatched");this.S=0;break}if(this.ua&4){this.S=this.A=0;break}}if(b){if(Wf(this.ha,this.Ga,c)){this.Wb();break}c=1}this.S=0;this.X[this.xa()].call(this)}while(0<this.A);return this.la.Wd?this.fb-this.A:void 0===this.la.Wd?0:-1};Qa(function(){for(var a=nb(document,"pcjs","cpu"),b=0;b<a.length;b++){var c=a[b],d=jb(c),d=new Bd(d);mb(d,c)}});
|
||||
function Xf(a){Ua.call(this,"FPU",a,Xf);this.ia=a.model||8087;(a=a.stepping)&&ca(a,16);this.V=new Float64Array(8);this.aa=new Int32Array(this.V.buffer);this.pa=new Float32Array(1);this.ua=new Int32Array(this.pa.buffer);this.X=new Float64Array(1);this.L=new Int32Array(this.X.buffer);this.ea=Array(3);this.fa=this.ga=-1;this.W=this.U=this.ja=this.A=0;this.ka=new Float64Array(1);this.ra=new Int32Array(this.ka.buffer);this.ra[0]=0;this.ra[1]=268402688;Yf(this)}db(Xf);m=Xf.prototype;
|
||||
|
|
@ -169,11 +169,11 @@ function Hh(a,b){of(this,a,b,a-b|0,191,!0);this.A-=-1===this.C?-1===this.D?this.
|
|||
function Jh(a){if(this.Tb){var b=this.Tb,c=this.ig,d=this.L,e=d>>3&7;b.A=d&7;var f=(3>(d>>6&3)?0:48)+e;(217==c||219==c)&&52<=f&&(f=e<<4|b.A);if(e=nh[c][f]){if(0>oh.indexOf(e)){var f=b.F,g=f.re;8087==b.ia&&(f.Ha&16&&g++,f.Ha&32&&g++);b.fa=f.va.Z;b.W=g-f.va.Aa;-1!==f.D&&(b.ga=f.$b.Z,b.U=f.D-f.$b.Aa);b.ja=(c&7)<<8|d}e.call(b)}}this.A-=-1===this.D?2:8;return a}function Kh(a){if(80186>this.ia)return Lh.call(this,a);C.call(this,13,0);return a}function $d(a){C.call(this,6);return a}
|
||||
function Lh(a){he.call(this);return a}function Mh(a,b){var c=Nh.call(this,this.T(),b);80386>this.ia&&(this.A-=12);return c}function Oh(a,b){var c;a=this.Ma();c=2==this.ba?Nh.call(this,a,b):Ph.call(this,a,b);80386>this.ia&&(this.A-=12);return c}function Qh(a,b){var c=!1;0>b&&(b=-b|0,c=!c);0>a&&(a=-a|0,c=!c);Rh.call(this,a,b);c&&(this.ja=~this.ja+1|0,this.wa=~this.wa+(this.ja?0:1)|0)}
|
||||
function Nh(a,b){var c=(a<<16>>16)*(b<<16>>16)|0;32767<c||-32768>c?(wf(this),yf(this)):(xf(this),zf(this));this.A-=-1===this.D?9:12;return c&65535}function Ph(a,b){Qh.call(this,a,b);this.wa!=this.ja>>31?(wf(this),yf(this)):(xf(this),zf(this));this.A-=-1===this.D?9:12;return this.ja}function Sh(a,b){this.A-=14+(-1===this.D?0:2);Df(this);-1!==this.Ea.load(b)&&this.Ea.Gc>=this.pa&&this.Ea.Gc>=(b&3)&&(Ff(this),a=this.Ea.wb&-256,2<this.ba&&(a|=(this.Ea.ext&-65281)<<16));return a}
|
||||
function Th(a,b){if(-1===this.D)return he.call(this),a;vd(this,this.na(this.D+this.ba));this.A-=this.B.of;return b}function Uh(){this.A-=this.B.Ej;return this.D}function Vh(a,b){if(-1===this.D)return he.call(this),a;wd(this,this.na(this.D+this.ba));this.A-=this.B.of;return b}function Wh(a,b){if(-1===this.D)return he.call(this),a;var c=this.na(this.D+this.ba);this.Ob.load(c);this.A-=this.B.of;return b}
|
||||
function Xh(a,b){if(-1===this.D)return he.call(this),a;var c=this.na(this.D+this.ba);this.Pb.load(c);this.A-=this.B.of;return b}function Yh(a,b){this.A-=14+(-1===this.D?0:2);if(b&65528&&-1!==this.Ea.load(b)&&(7168==(this.Ea.wb&7168)||this.Ea.Gc>=this.pa)&&this.Ea.Gc>=(b&3))return Ff(this),this.Ea.Ta;Df(this);return a}function Zh(a,b){if(-1===this.D)return he.call(this),a;kd(this,this.na(this.D+this.ba));this.A-=this.B.of;return b}
|
||||
function Th(a,b){if(-1===this.D)return he.call(this),a;vd(this,this.na(this.D+this.ba));this.A-=this.B.of;return b}function Uh(){this.A-=this.B.Ej;return this.D}function Vh(a,b){if(-1===this.D)return he.call(this),a;wd(this,this.na(this.D+this.ba));this.A-=this.B.of;return b}function Wh(a,b){if(-1===this.D)return he.call(this),a;var c=this.na(this.D+this.ba);this.Nb.load(c);this.A-=this.B.of;return b}
|
||||
function Xh(a,b){if(-1===this.D)return he.call(this),a;var c=this.na(this.D+this.ba);this.Ob.load(c);this.A-=this.B.of;return b}function Yh(a,b){this.A-=14+(-1===this.D?0:2);if(b&65528&&-1!==this.Ea.load(b)&&(7168==(this.Ea.wb&7168)||this.Ea.Gc>=this.pa)&&this.Ea.Gc>=(b&3))return Ff(this),this.Ea.Ta;Df(this);return a}function Zh(a,b){if(-1===this.D)return he.call(this),a;kd(this,this.na(this.D+this.ba));this.A-=this.B.of;return b}
|
||||
function $h(a,b){this.A-=-1===this.C?-1===this.D?this.B.Lj:this.B.Kj:this.B.Ij;return b}function ai(a,b){switch(this.L>>3&7){case 4:this.aa=this.G;break;case 5:this.aa=this.I;break;case 6:this.aa=this.M;break;case 7:this.aa=this.H}return b}function bi(a,b){return b}
|
||||
function ci(a,b){var c=this.L>>3&7;switch(c){case 0:this.aa=this.G;break;case 2:this.aa=this.M;break;case 3:this.aa=this.H;break;default:if(80286==this.ia||80386==this.ia&&4!=c&&5!=c){C.call(this,6);break}switch(c){case 1:this.aa=this.I;break;case 4:this.aa=I(this);break;case 5:this.aa=this.P;break;case 6:this.aa=this.K;break;case 7:this.aa=this.J}}return $h.call(this,0,b)}
|
||||
function di(a,b){switch(this.L>>3&7){case 0:b=this.Xa.Z;break;case 1:b=this.va.Z;break;case 2:b=this.ta.Z;break;case 3:b=this.vb.Z;break;case 4:if(80386<=this.ia){b=this.Ob.Z;break}C.call(this,6);b=a;break;case 5:if(80386<=this.ia){b=this.Pb.Z;break}default:C.call(this,6),b=a}-1!==this.C&&nd(this,2);return $h.call(this,0,b)}
|
||||
function di(a,b){switch(this.L>>3&7){case 0:b=this.Xa.Z;break;case 1:b=this.va.Z;break;case 2:b=this.ta.Z;break;case 3:b=this.vb.Z;break;case 4:if(80386<=this.ia){b=this.Nb.Z;break}C.call(this,6);b=a;break;case 5:if(80386<=this.ia){b=this.Ob.Z;break}default:C.call(this,6),b=a}-1!==this.C&&nd(this,2);return $h.call(this,0,b)}
|
||||
function Rh(a,b){if(a&-65536||b&-65536){var c=b&65535,d=b>>>16,e=a&65535,f=a>>>16,g=c*e,e=(g>>>16)+d*e,h=e>>>16,e=(e&65535)+c*f;this.ja=e<<16|g&65535;this.wa=h+((e>>>16)+d*f)|0}else this.ja=a*b|0,this.wa=0}function ei(a,b){this.A-=-1===this.C?-1===this.D?this.B.yc:this.B.Vb:this.B.Nc;return vf(this,a|b,128)}function fi(a,b){this.A-=-1===this.C?-1===this.D?this.B.yc:this.B.Vb:this.B.Nc;return vf(this,a|b,this.Ia)&this.R}
|
||||
function gi(a,b){var c=a-b-Bf(this)|0;of(this,a,b,c,191,!0);this.A-=-1===this.C?-1===this.D?this.B.yc:this.B.Vb:this.B.Nc;return c&255}function hi(a,b){var c=a-b-Bf(this)|0;of(this,a,b,c,this.Ia|63,!0);this.A-=-1===this.C?-1===this.D?this.B.yc:this.B.Vb:this.B.Nc;return c&this.R}function ii(){return uf(this)?1:0}function Ci(){return pf(this)?1:0}function Di(){return pf(this)?0:1}function Ei(){return sf(this)?1:0}function Fi(){return sf(this)?0:1}function Gi(){return pf(this)||sf(this)?1:0}
|
||||
function Hi(){return pf(this)||sf(this)?0:1}function Ii(){return tf(this)?1:0}function Ji(){return tf(this)?0:1}function Ki(){return qf(this)?1:0}function Li(){return qf(this)?0:1}function Mi(){return!tf(this)!=!uf(this)?1:0}function Ni(){return!tf(this)!=!uf(this)?0:1}function Oi(){return sf(this)||!tf(this)!=!uf(this)?1:0}function Pi(){return sf(this)||!tf(this)!=!uf(this)?0:1}function Qi(a,b){return Ri.call(this,a,b,this.xa())}function Si(a,b){return Ti.call(this,a,b,this.xa())}
|
||||
|
|
@ -186,7 +186,7 @@ function nj(a,b,c){c>>>=0;if(!c||c<=b>>>0)return!1;var d=0,e=1;c=[c>>>0,0];for(a
|
|||
function pj(a){this.Za=a;md(this);this.Za&-2147483648?se(this):ue(this)}function Ad(a){this.Pd=a;Ub(this)}function qj(a){this.S|=1;this.$a.call(this,a);this.A-=-1===this.D?4:5}function Ri(a,b,c){if(c){16<c&&(a=b,c-=16);var d=a<<c-1;a=(d<<1|b>>>16-c)&65535;vf(this,a,32768,d&32768)}return a}function Ti(a,b,c){if(c){var d=a<<c-1;a=d<<1|b>>>32-c;vf(this,a,-2147483648,d&-2147483648)}return a}
|
||||
function Xi(a,b,c){if(c){16<c&&(a=b,c-=16);var d=a>>>c-1;a=(d>>>1|b<<16-c)&65535;vf(this,a,32768,d&1)}return a}function Zi(a,b,c){if(c){var d=a>>>c-1;a=d>>>1|b<<32-c;vf(this,a,-2147483648,d&1)}return a}function rj(){this.A-=-1===this.D?2:this.B.Yj;return 1}function sj(){var a=this.I&255;this.A-=(-1===this.D?this.B.Uh:this.B.Th)+(a<<this.B.Vh);return a}function tj(){var a=this.xa();this.A-=(-1===this.D?this.B.Uh:this.B.Th)+(a<<this.B.Vh);return a}function uj(){return null}
|
||||
function vj(){return this.aa}function wj(a,b){this.bc=this.va.Z;this.sb=this.ta.Z;this.U=this.ga;var c=K(this),d=this.ba;null!=zd(this,a,b,!0)&&(pd(this,this.bc,d,2),pd(this,c,d,d));this.bc=this.sb=this.U=-1}function xj(a,b,c){this.A-=this.B.wj+(c||0);c=xd(this);var d=this.va.Z,e=K(this);a=this.va.Wi(a);-1!==a&&(J(this,c),J(this,d),J(this,e),null!=b&&J(this,b),this.rb=-1,lf(this,a))}
|
||||
function yj(a){this.sb=this.ta.Z;this.U=this.ga;var b=D(this),c=D(this);a&&G(this,I(this)+a);zd(this,b,c,!1)&&(a&&G(this,I(this)+a),zj.call(this,this.vb),zj.call(this,this.Xa),80386<=this.ia&&(zj.call(this,this.Ob),zj.call(this,this.Pb)));2==a&&this.ne&&ef(this,this.Ga);this.sb=this.U=-1}function Aj(){8086==this.ia?(this.rb=-1,xj.call(this,0,null,2)):C.call(this,0,null,2)}function Vf(a,b){this.rb=a;void 0===b&&(b=11);xj.call(this,a,null,b)}
|
||||
function yj(a){this.sb=this.ta.Z;this.U=this.ga;var b=D(this),c=D(this);a&&G(this,I(this)+a);zd(this,b,c,!1)&&(a&&G(this,I(this)+a),zj.call(this,this.vb),zj.call(this,this.Xa),80386<=this.ia&&(zj.call(this,this.Nb),zj.call(this,this.Ob)));2==a&&this.ne&&ef(this,this.Ga);this.sb=this.U=-1}function Aj(){8086==this.ia?(this.rb=-1,xj.call(this,0,null,2)):C.call(this,0,null,2)}function Vf(a,b){this.rb=a;void 0===b&&(b=11);xj.call(this,a,null,b)}
|
||||
function C(a,b,c,d){var e=!1;this.la.Wd?80186<=this.ia&&(e=!0,0>this.rb?(-1!=this.bc&&(this.bc!==this.va.Z&&(this.va.Lb=this.bc&3,kf(this,this.bc)),this.bc=-1),this.re!==this.Ga&&lf(this,this.re),-1!=this.sb&&(this.sb!==this.ta.Z&&kd(this,this.sb),this.sb=-1),-1!==this.U&&(this.U!==this.ga&&G(this,this.gb&~this.ta.Ba|this.U-this.ta.Aa),this.U=-1)):8!=this.rb?(b=0,a=8):(b=0,a=-1,qe(this),e=d=!1)):lf(this,this.re);var f=a,g=b,h=32,k=If(this,this.Ga);204!=k||this.Td||(d=!1);this.ca&131072&&(6==f&&99==
|
||||
k||13==f&&205==k)&&(d=!1);!1===d&&(h|=1);983040<=this.Ga&&1048575>=this.Ga&&(d=!1);A(this,h|-2147483648)&&(d=!0);if(A(this,h)||d){var l=this.la.Ib,f="Fault "+t(f)+(null!=g?" ("+u(g)+")":"")+" on opcode "+t(k);d&&l&&(f+=" (blocked)");this.ha?(y(this,f,d||h,!0),d&&(d=l,this.ha.Wb())):(this.Na(f),this.Wb())}if(d&&e)throw-1;if(e)throw this.rb=a,xj.call(this,a,b,c),this.re=this.Ga,this.S=1==a?this.S|8192:this.S|4096,a;}
|
||||
function te(a,b,c){this.te=a;a=0;b&&(a|=1);c&&(a|=2);3==this.pa&&(a|=4);C.call(this,14,a)}function zj(a){var b=a.wb&7680;a.Z&65528&&(6144==b||7168==b||7168>b&&a.Gc<this.pa&&a.Gc<(a.Z&3))&&a.load(0)}
|
||||
|
|
@ -277,8 +277,8 @@ this.D;break;case 131:c=S(this,this.H+T(this));this.C=this.D;break;case 132:c=S(
|
|||
3&7].call(this,c,b.call(this));switch(d){case 192:this.G=c;break;case 193:this.I=c;break;case 194:this.M=c;break;case 195:this.H=c;break;case 196:G(this,c);break;case 197:this.P=c;break;case 198:this.K=c;break;case 199:this.J=c;break;default:Qf(this,c)}}
|
||||
function Bj(a){var b=this.xa(),c=b>>6,d,e;switch(b>>3&7){case 0:d=this.G;break;case 1:d=this.I;break;case 2:d=this.M;break;case 3:d=this.H;break;case 4:d=0;break;case 5:d=this.P;break;case 6:d=this.K;break;case 7:d=this.J}switch(b&7){case 0:e=this.G;break;case 1:e=this.I;break;case 2:e=this.M;break;case 3:e=this.H;break;case 4:e=I(this);this.ka=this.Ka;break;case 5:a?(e=this.P,this.ka=this.Ka):e=T(this);break;case 6:e=this.K;break;case 7:e=this.J}return(d<<c)+e|0}
|
||||
function ae(){this.tc[this.xa()].call(this)}function ie(){J(this,I(this)&this.R);this.A-=this.B.Sc}function Hd(){this.U=this.ga;var a=I(this)&this.R;J(this,this.G&this.R);J(this,this.I&this.R);J(this,this.M&this.R);J(this,this.H&this.R);J(this,a);J(this,this.P&this.R);J(this,this.K&this.R);J(this,this.J&this.R);this.A-=this.B.Sj;this.U=-1}
|
||||
function Id(){this.U=this.ga;this.J=this.J&~this.R|D(this);this.K=this.K&~this.R|D(this);this.P=this.P&~this.R|D(this);G(this,I(this)+this.ba);this.H=this.H&~this.R|D(this);this.M=this.M&~this.R|D(this);this.I=this.I&~this.R|D(this);this.G=this.G&~this.R|D(this);this.A-=this.B.Qj;this.U=-1}function Jd(){this.W.call(this,wh)}function je(){!(this.Za&1)||this.ca&131072?C.call(this,6):this.fa.call(this,vh)}function ke(){this.S|=20;this.ka=this.Ka=this.Ob;this.A-=this.B.od}
|
||||
function le(){this.S|=20;this.ka=this.Ka=this.Pb;this.A-=this.B.od}function me(){this.S|=1024;this.Ha&1024||(this.ba^=6,this.R^=-65536,Se(this));this.A-=this.B.od}function ne(){this.S|=2048;this.Ha&2048||(this.Oc^=6,this.Ba^=-65536,xe(this));this.A-=this.B.od}function Kd(){J(this,this.Ma());this.A-=this.B.Sc}function Ld(){this.W.call(this,Oh)}function Md(){J(this,this.T());this.A-=this.B.Sc}function Nd(){this.W.call(this,Mh)}
|
||||
function Id(){this.U=this.ga;this.J=this.J&~this.R|D(this);this.K=this.K&~this.R|D(this);this.P=this.P&~this.R|D(this);G(this,I(this)+this.ba);this.H=this.H&~this.R|D(this);this.M=this.M&~this.R|D(this);this.I=this.I&~this.R|D(this);this.G=this.G&~this.R|D(this);this.A-=this.B.Qj;this.U=-1}function Jd(){this.W.call(this,wh)}function je(){!(this.Za&1)||this.ca&131072?C.call(this,6):this.fa.call(this,vh)}function ke(){this.S|=20;this.ka=this.Ka=this.Nb;this.A-=this.B.od}
|
||||
function le(){this.S|=20;this.ka=this.Ka=this.Ob;this.A-=this.B.od}function me(){this.S|=1024;this.Ha&1024||(this.ba^=6,this.R^=-65536,Se(this));this.A-=this.B.od}function ne(){this.S|=2048;this.Ha&2048||(this.Oc^=6,this.Ba^=-65536,xe(this));this.A-=this.B.od}function Kd(){J(this,this.Ma());this.A-=this.B.Sc}function Ld(){this.W.call(this,Oh)}function Md(){J(this,this.T());this.A-=this.B.Sc}function Nd(){this.W.call(this,Mh)}
|
||||
function Od(){var a=1,b=0,c=this.Ba,d=5;this.Ha&192&&(a=this.I&c,b=1,this.Ha&256&&(d=4));if(a--){var e=this.M&65535;Hf(this,e,1,!0)&&(e=ic(this.ea,e,1,this.Ga-b-1),this.qc(this.Xa.oc(this.J&c,1),e),this.J=this.J&~c|this.J+(this.ca&1024?-1:1)&c,this.I=this.I&~c|this.I-b&c,this.A-=d,a&&(nf(this),this.S|=256))}}
|
||||
function Pd(){var a=1,b=0,c=this.Ba,d=5;this.Ha&192&&(a=this.I&c,b=1,this.Ha&256&&(d=4));if(a--){var e=this.M&65535;Hf(this,e,this.ba,!0)&&(e=ic(this.ea,e,this.ba,this.Ga-b-1),this.rc(this.Xa.oc(this.J&c,this.ba),e),this.J=this.J&~c|this.J+(this.ca&1024?-this.ba:this.ba)&c,this.I=this.I&~c|this.I-b&c,this.A-=d,a&&(nf(this),this.S|=256))}}
|
||||
function Qd(){var a=1,b=0,c=this.Ba,d=5;this.Ha&192&&(a=this.I&c,b=1,this.Ha&256&&(d=4));if(a--){var e=this.M&65535;if(Hf(this,e,1,!1)){var f=this.Qa(this.vb.nc(this.K&c,1));mc(this.ea,e,1,f,this.Ga-b-1);this.K=this.K&~c|this.K+(this.ca&1024?-1:1)&c;this.I=this.I&~c|this.I-b&c;this.A-=d;a&&(nf(this),this.S|=256)}}}
|
||||
|
|
@ -302,7 +302,7 @@ I(this)))},function(){this.P=oj.call(this,this.P)},function(){this.K=oj.call(thi
|
|||
function(){J(this,this.I&this.R);this.A-=this.B.Sc},function(){J(this,this.M&this.R);this.A-=this.B.Sc},function(){J(this,this.H&this.R);this.A-=this.B.Sc},function(){J(this,I(this)-2&65535);this.A-=this.B.Sc},function(){J(this,this.P&this.R);this.A-=this.B.Sc},function(){J(this,this.K&this.R);this.A-=this.B.Sc},function(){J(this,this.J&this.R);this.A-=this.B.Sc},function(){this.G=this.G&~this.R|D(this);this.A-=this.B.zc},function(){this.I=this.I&~this.R|D(this);this.A-=this.B.zc},function(){this.M=
|
||||
this.M&~this.R|D(this);this.A-=this.B.zc},function(){this.H=this.H&~this.R|D(this);this.A-=this.B.zc},function(){G(this,I(this)&~this.R|D(this));this.A-=this.B.zc},function(){this.P=this.P&~this.R|D(this);this.A-=this.B.zc},function(){this.K=this.K&~this.R|D(this);this.A-=this.B.zc},function(){this.J=this.J&~this.R|D(this);this.A-=this.B.zc},Cj,Dj,Ej,Fj,Gj,Hj,Ij,Jj,Kj,Lj,Mj,Nj,Oj,Pj,Qj,Rj,Cj,Dj,Ej,Fj,Gj,Hj,Ij,Jj,Kj,Lj,Mj,Nj,Oj,Pj,Qj,Rj,Sj,function(){this.ya.call(this,hk,this.Ma);this.A-=-1===this.C?
|
||||
1:this.B.Dg},Sj,function(){this.ya.call(this,hk,this.T);this.A-=-1===this.C?1:this.B.Dg},function(){this.$a.call(this,dj)},function(){this.fa.call(this,ej)},function(){this.Oa.call(this,hj)},function(){this.W.call(this,ij)},Uj,Vj,Wj,Xj,function(){this.S|=1;this.fa.call(this,di)},function(){this.S|=1;this.ka=this.Ka=this.qf;this.W.call(this,Uh)},function(){var a;this.W.call(this,ci);switch(this.L>>3&7){case 0:a=this.G;this.G=this.aa;wd(this,a);break;case 1:a=this.I;this.I=this.aa;kf(this,a);break;
|
||||
case 2:a=this.M;this.M=this.aa;kd(this,a);break;case 3:a=this.H;this.H=this.aa;vd(this,a);break;case 4:a=I(this);G(this,this.aa);80386<=this.ia?this.Ob.load(a):wd(this,a);break;case 5:a=this.P;this.P=this.aa;80386<=this.ia?this.Pb.load(a):kf(this,a);break;case 6:a=this.K;this.K=this.aa;kd(this,a);break;case 7:a=this.J,this.J=this.aa,vd(this,a)}},function(){this.S|=1;this.U=this.ga;this.aa=D(this);this.ya.call(this,ik,vj);this.U=-1},function(){this.A-=3},function(){var a=this.G;this.G=this.G&~this.R|
|
||||
case 2:a=this.M;this.M=this.aa;kd(this,a);break;case 3:a=this.H;this.H=this.aa;vd(this,a);break;case 4:a=I(this);G(this,this.aa);80386<=this.ia?this.Nb.load(a):wd(this,a);break;case 5:a=this.P;this.P=this.aa;80386<=this.ia?this.Ob.load(a):kf(this,a);break;case 6:a=this.K;this.K=this.aa;kd(this,a);break;case 7:a=this.J,this.J=this.aa,vd(this,a)}},function(){this.S|=1;this.U=this.ga;this.aa=D(this);this.ya.call(this,ik,vj);this.U=-1},function(){this.A-=3},function(){var a=this.G;this.G=this.G&~this.R|
|
||||
this.I&this.R;this.I=this.I&~this.R|a&this.R;this.A-=3},function(){var a=this.G;this.G=this.G&~this.R|this.M&this.R;this.M=this.M&~this.R|a&this.R;this.A-=3},function(){var a=this.G;this.G=this.G&~this.R|this.H&this.R;this.H=this.H&~this.R|a&this.R;this.A-=3},function(){var a=this.G,b=I(this);this.G=this.G&~this.R|b&this.R;G(this,b&~this.R|a&this.R);this.A-=3},function(){var a=this.G;this.G=this.G&~this.R|this.P&this.R;this.P=this.P&~this.R|a&this.R;this.A-=3},function(){var a=this.G;this.G=this.G&
|
||||
~this.R|this.K&this.R;this.K=this.K&~this.R|a&this.R;this.A-=3},function(){var a=this.G;this.G=this.G&~this.R|this.J&this.R;this.J=this.J&~this.R|a&this.R;this.A-=3},function(){this.G=2==this.ba?this.G&-65536|this.G<<24>>24&65535:this.G<<16>>16;this.A-=2},function(){this.M=2==this.ba?this.M&-65536|(this.G&32768?65535:0):this.G&-2147483648?-1:0;this.A-=this.B.dj},function(){wj.call(this,this.Ma(),Rf(this));this.A-=this.B.gj},function(){this.A-=3},function(){var a=xd(this);a&131072&&3>this.Pa?C.call(this,
|
||||
13,0):(J(this,a&-196609),this.A-=this.B.Sc)},function(){if(this.ca&131072&&3>this.Pa)C.call(this,13,0);else{var a=D(this),a=a&65535|this.ca&-65536;yd(this,a);this.A-=this.B.zc}},function(){var a=this.G>>8&255;a&1?wf(this):xf(this);a&4?(this.resultType&=-3,this.ca|=4):(this.resultType&=-3,this.ca&=-5);a&16?Ef(this):Cf(this);a&64?Ff(this):Df(this);a&128?(this.resultType&=-17,this.ca|=128):(this.resultType&=-17,this.ca&=-129);this.A-=this.B.gc},function(){this.G=this.G&-65281|(xd(this)&213)<<8;this.A-=
|
||||
|
|
@ -318,7 +318,7 @@ this.I&-256|this.xa();this.A-=this.B.gc},function(){this.M=this.M&-256|this.xa()
|
|||
~this.R|this.Ma();this.A-=this.B.gc},function(){this.M=this.M&~this.R|this.Ma();this.A-=this.B.gc},function(){this.H=this.H&~this.R|this.Ma();this.A-=this.B.gc},function(){G(this,I(this)&~this.R|this.Ma());this.A-=this.B.gc},function(){this.P=this.P&~this.R|this.Ma();this.A-=this.B.gc},function(){this.K=this.K&~this.R|this.Ma();this.A-=this.B.gc},function(){this.J=this.J&~this.R|this.Ma();this.A-=this.B.gc},bk,ck,bk,ck,function(){this.W.call(this,Vh)},function(){this.W.call(this,Th)},function(){this.S|=
|
||||
1;this.Jb.call(this,jk,this.xa)},function(){this.S|=1;this.ya.call(this,jk,this.Ma)},dk,ek,dk,ek,function(){if(this.ca&131072&&3>this.Pa)C.call(this,13,0);else{var a=this.B.xj;this.rb=-1;xj.call(this,3,null,a)}},function(){var a=this.xa();if(this.ca&131072&&3>this.Pa)C.call(this,13,0);else{var b;a:{b=this.Id[a];if(void 0!==b)for(var c=0;c<b.length;c++)if(!b[c](this.Ga)){b=!1;break a}this.la.Mi&&A(this,16)&&kk(this.ha,a,this.Ga);b=!0}b?(this.rb=-1,xj.call(this,a,null,0)):this.A--}},function(){if(uf(this))if(this.ca&
|
||||
131072&&3>this.Pa)C.call(this,13,0);else{var a=this.B.yj;this.rb=-1;xj.call(this,4,null,a)}else this.A-=this.B.zj},function(){if(this.ca&131072&&3>this.Pa)C.call(this,13,0);else{this.sb=this.ta.Z;this.U=this.ga;this.A-=this.B.vj;if(this.Za&1&&this.ca&16384){var a=this.na(this.Sa.Aa+0);ld(this.va,a,!1)}else{var a=this.pa,b=D(this),c=D(this),d=D(this);if(this.ca&131072)d=d&131071|this.ca&-131072;else if(d&131072){var e=D(this),f=D(this),g=D(this),h=D(this),k=D(this),l=D(this);md(this,!0,!0);kd(this,
|
||||
f);G(this,e);wd(this,g);vd(this,h);this.Ob.load(k);this.Pb.load(l)}null!=zd(this,b,c,!1)&&(yd(this,d,a),this.ne&&ef(this,this.Ga))}this.sb=this.U=-1}},function(){this.Jb.call(this,Yj,rj)},function(){this.ya.call(this,2==this.ba?Zj:ak,rj)},function(){this.Jb.call(this,Yj,sj)},function(){this.ya.call(this,2==this.ba?Zj:ak,sj)},function(){var a=this.xa();if(a){var b=this.G&255;this.G=this.G&-65536|b/a<<8|b%a;vf(this,this.G,128);this.A-=this.B.aj}else Aj.call(this)},function(){var a=this.G&255,b=(this.G>>
|
||||
f);G(this,e);wd(this,g);vd(this,h);this.Nb.load(k);this.Ob.load(l)}null!=zd(this,b,c,!1)&&(yd(this,d,a),this.ne&&ef(this,this.Ga))}this.sb=this.U=-1}},function(){this.Jb.call(this,Yj,rj)},function(){this.ya.call(this,2==this.ba?Zj:ak,rj)},function(){this.Jb.call(this,Yj,sj)},function(){this.ya.call(this,2==this.ba?Zj:ak,sj)},function(){var a=this.xa();if(a){var b=this.G&255;this.G=this.G&-65536|b/a<<8|b%a;vf(this,this.G,128);this.A-=this.B.aj}else Aj.call(this)},function(){var a=this.G&255,b=(this.G>>
|
||||
8&255)*this.xa()|0,c=a+b|0;this.G=this.G&-65536|c&255;of(this,a,b,c,191);this.A-=this.B.$i},function(){this.G=this.G&-256|(pf(this)?255:0);this.A-=2},function(){this.G=this.G&-256|Jf(this,this.ka,this.H+(this.G&255));this.A-=this.B.Zj},function(){fk.call(this,216)},function(){fk.call(this,217)},function(){fk.call(this,218)},function(){fk.call(this,219)},function(){fk.call(this,220)},function(){fk.call(this,221)},function(){fk.call(this,222)},function(){fk.call(this,223)},function(){var a=this.T(),
|
||||
b=this.I-1&this.Ba;this.I=this.I&~this.Ba|b;b&&!sf(this)?(O(this,K(this)+a),this.A-=this.B.Gj):this.A-=this.B.Gh},function(){var a=this.T(),b=this.I-1&this.Ba;this.I=this.I&~this.Ba|b;b&&sf(this)?(O(this,K(this)+a),this.A-=this.B.Hh):this.A-=this.B.Ih},function(){var a=this.T(),b=this.I-1&this.Ba;this.I=this.I&~this.Ba|b;b?(O(this,K(this)+a),this.A-=this.B.Fj):this.A-=this.B.Gh},function(){var a=this.T();this.I&this.Ba?this.A-=this.B.Ih:(O(this,K(this)+a),this.A-=this.B.Hh)},function(){var a=this.xa();
|
||||
Hf(this,a,1,!0)&&(this.G=this.G&-256|ic(this.ea,a,1,this.Ga-2)&255,this.A-=this.B.Bh)},function(){var a=this.xa();Hf(this,a,this.ba,!0)&&(this.G=this.G&~this.R|ic(this.ea,a,this.ba,this.Ga-2)&this.R,this.A-=this.B.Bh)},function(){var a=this.xa();Hf(this,a,1,!1)&&(mc(this.ea,a,1,this.G&255,this.Ga-2),this.A-=this.B.Ph)},function(){var a=this.xa();Hf(this,a,this.ba,!1)&&(mc(this.ea,a,this.ba,this.G&this.R,this.Ga-2),this.A-=this.B.Ph)},function(){var a=this.Ma(),b=K(this),a=b+a;J(this,b);O(this,a);
|
||||
|
|
@ -342,7 +342,7 @@ Lh];function oe(){this.W.call(this,gj);this.A-=-1===this.D?6:13}function pe(){th
|
|||
ge[5]=function(){this.pa?C.call(this,13,0,0,!0):(Gf(this,this.na(2054)),this.J=this.na(2086),this.K=this.na(2088),this.P=this.na(2090),this.H=this.na(2094),this.M=this.na(2096),this.I=this.na(2098),this.G=this.na(2100),jd(this.Xa,2102,this.na(2084)),jd(this.va,2108,this.na(2082)),jd(this.ta,2114,this.na(2080)),jd(this.vb,2120,this.na(2078)),yd(this,this.na(2072)),O(this,this.na(2074)),G(this,this.na(2092)),this.Ec=this.na(2126)|this.Qa(2128)<<16,this.Ad=this.Ec+this.na(2130),this.Mc=this.na(2138)|
|
||||
this.Qa(2140)<<16,this.Td=this.Mc+this.na(2142),jd(this.Bc,2132,this.na(2076)),jd(this.Sa,2144,this.na(2070)),this.A-=195)};ge[6]=function(){this.pa?C.call(this,13,0):(this.Za&=-9,this.A-=2)};ge[11]=Gd;ge[166]=Gd;ge[255]=Gd;var M=[];M[5]=Gd;
|
||||
M[7]=function(){if(this.pa)C.call(this,13,0,0,!0);else{var a=this.Xa.nc(this.J&this.Ba,204);if(-1!==a){pj.call(this,this.oa(a));var b=this.oa(a+168),c=(b&24576)>>13;yd(this,this.oa(a+4),c);this.Ec=this.oa(a+112);this.Ad=this.Ec+this.oa(a+116);this.Mc=this.oa(a+100);this.Td=this.Mc+this.oa(a+104);id(this.Bc,this.oa(a+56),this.oa(a+120),this.oa(a+124),this.oa(a+128));id(this.Sa,this.oa(a+52),this.oa(a+84),this.oa(a+88),this.oa(a+92));this.J=this.oa(a+12);this.K=this.oa(a+16);this.P=this.oa(a+20);this.H=
|
||||
this.oa(a+28);this.M=this.oa(a+32);this.I=this.oa(a+36);this.G=this.oa(a+40);id(this.Pb,this.oa(a+60),this.oa(a+132),this.oa(a+136),this.oa(a+140));id(this.Ob,this.oa(a+64),this.oa(a+144),this.oa(a+148),this.oa(a+152));id(this.vb,this.oa(a+68),this.oa(a+156),this.oa(a+160),this.oa(a+164));id(this.ta,this.oa(a+72),b,this.oa(a+172),this.oa(a+176));id(this.va,this.oa(a+76),this.oa(a+180),this.oa(a+184),this.oa(a+188));id(this.Xa,this.oa(a+80),this.oa(a+192),this.oa(a+196),this.oa(a+200));O(this,this.oa(a+
|
||||
this.oa(a+28);this.M=this.oa(a+32);this.I=this.oa(a+36);this.G=this.oa(a+40);id(this.Ob,this.oa(a+60),this.oa(a+132),this.oa(a+136),this.oa(a+140));id(this.Nb,this.oa(a+64),this.oa(a+144),this.oa(a+148),this.oa(a+152));id(this.vb,this.oa(a+68),this.oa(a+156),this.oa(a+160),this.oa(a+164));id(this.ta,this.oa(a+72),b,this.oa(a+172),this.oa(a+176));id(this.va,this.oa(a+76),this.oa(a+180),this.oa(a+184),this.oa(a+188));id(this.Xa,this.oa(a+80),this.oa(a+192),this.oa(a+196),this.oa(a+200));O(this,this.oa(a+
|
||||
8));G(this,this.oa(a+24))}this.A-=122<<(a&3?1:0)}};M[16]=Uj;M[17]=Vj;M[18]=Wj;M[19]=Xj;M[32]=function(){if(this.pa)C.call(this,13,0);else{var a,b=this.xa();switch((b&56)>>3){case 0:a=this.Za;break;case 2:a=this.te;break;case 3:a=this.Pd;break;default:he.call(this);return}we(this,b&7,a);this.A-=6}};M[33]=function(){if(this.pa)C.call(this,13,0);else{var a=this.xa(),b=(a&56)>>3;4==b||5==b?he.call(this):(we(this,a&7,this.Ja[b]),this.A-=22)}};
|
||||
M[34]=function(){if(this.pa)C.call(this,13,0);else{var a=this.xa(),b=ve(this,a&7);switch((a&56)>>3){case 0:pj.call(this,b);this.A-=10;break;case 2:this.te=b;this.A-=4;break;case 3:Ad.call(this,b);this.A-=5;break;default:he.call(this)}}};M[35]=function(){if(this.pa)C.call(this,13,0);else{var a=this.xa(),b=(a&56)>>3;4==b||5==b?he.call(this):(a=ve(this,a&7),a!=this.Ja[b]&&(ff(this,!1),this.Ja[b]=a,ff(this,!0)),this.A-=4>b?22:14)}};
|
||||
M[36]=function(){if(this.pa)C.call(this,13,0);else{var a=this.xa(),b=(a&56)>>3;6>b?he.call(this):(we(this,a&7,this.Ce[b]),this.A-=12)}};M[38]=function(){if(this.pa)C.call(this,13,0);else{var a=this.xa(),b=(a&56)>>3;6>b?he.call(this):(this.Ce[b]=ve(this,a&7),this.A-=12)}};M[128]=function(){var a=this.Ma();uf(this)?(O(this,K(this)+a),this.A-=this.B.ab):this.A-=this.B.bb};M[129]=function(){var a=this.Ma();uf(this)?this.A-=this.B.bb:(O(this,K(this)+a),this.A-=this.B.ab)};
|
||||
|
|
@ -350,8 +350,8 @@ M[130]=function(){var a=this.Ma();pf(this)?(O(this,K(this)+a),this.A-=this.B.ab)
|
|||
M[135]=function(){var a=this.Ma();pf(this)||sf(this)?this.A-=this.B.bb:(O(this,K(this)+a),this.A-=this.B.ab)};M[136]=function(){var a=this.Ma();tf(this)?(O(this,K(this)+a),this.A-=this.B.ab):this.A-=this.B.bb};M[137]=function(){var a=this.Ma();tf(this)?this.A-=this.B.bb:(O(this,K(this)+a),this.A-=this.B.ab)};M[138]=function(){var a=this.Ma();qf(this)?(O(this,K(this)+a),this.A-=this.B.ab):this.A-=this.B.bb};M[139]=function(){var a=this.Ma();qf(this)?this.A-=this.B.bb:(O(this,K(this)+a),this.A-=this.B.ab)};
|
||||
M[140]=function(){var a=this.Ma();!tf(this)!=!uf(this)?(O(this,K(this)+a),this.A-=this.B.ab):this.A-=this.B.bb};M[141]=function(){var a=this.Ma();!tf(this)==!uf(this)?(O(this,K(this)+a),this.A-=this.B.ab):this.A-=this.B.bb};M[142]=function(){var a=this.Ma();sf(this)||!tf(this)!=!uf(this)?(O(this,K(this)+a),this.A-=this.B.ab):this.A-=this.B.bb};M[143]=function(){var a=this.Ma();sf(this)||!tf(this)!=!uf(this)?this.A-=this.B.bb:(O(this,K(this)+a),this.A-=this.B.ab)};M[144]=function(){qj.call(this,ii)};
|
||||
M[145]=function(){qj.call(this,ii)};M[146]=function(){qj.call(this,Ci)};M[147]=function(){qj.call(this,Di)};M[148]=function(){qj.call(this,Ei)};M[149]=function(){qj.call(this,Fi)};M[150]=function(){qj.call(this,Gi)};M[151]=function(){qj.call(this,Hi)};M[152]=function(){qj.call(this,Ii)};M[153]=function(){qj.call(this,Ji)};M[154]=function(){qj.call(this,Ki)};M[155]=function(){qj.call(this,Li)};M[156]=function(){qj.call(this,Mi)};M[157]=function(){qj.call(this,Ni)};M[158]=function(){qj.call(this,Oi)};
|
||||
M[159]=function(){qj.call(this,Pi)};M[160]=function(){pd(this,this.Ob.Z,this.ba,2);this.A-=this.B.Ie};M[161]=function(){this.U=this.ga;var a=D(this);this.Ob.load(a);this.A-=this.B.zc;this.U=-1};M[163]=function(){this.fa.call(this,Dh);-1!==this.D&&(this.A-=6)};M[164]=function(){this.fa.call(this,2==this.ba?Qi:Si);this.A-=-1===this.D?3:7};M[165]=function(){this.fa.call(this,2==this.ba?Ui:Vi);this.A-=-1===this.D?3:7};M[168]=function(){pd(this,this.Pb.Z,this.ba,2);this.A-=this.B.Ie};
|
||||
M[169]=function(){this.U=this.ga;var a=D(this);this.Pb.load(a);this.A-=this.B.zc;this.U=-1};M[171]=function(){this.fa.call(this,Gh);-1!==this.D&&(this.A-=5)};M[172]=function(){this.fa.call(this,2==this.ba?Wi:Yi);this.A-=-1===this.D?3:7};M[173]=function(){this.fa.call(this,2==this.ba?$i:aj);this.A-=-1===this.D?3:7};M[175]=function(){this.W.call(this,2==this.ba?Nh:Ph)};M[178]=function(){this.W.call(this,Zh)};M[179]=function(){this.fa.call(this,Fh);-1!==this.D&&(this.A-=5)};
|
||||
M[159]=function(){qj.call(this,Pi)};M[160]=function(){pd(this,this.Nb.Z,this.ba,2);this.A-=this.B.Ie};M[161]=function(){this.U=this.ga;var a=D(this);this.Nb.load(a);this.A-=this.B.zc;this.U=-1};M[163]=function(){this.fa.call(this,Dh);-1!==this.D&&(this.A-=6)};M[164]=function(){this.fa.call(this,2==this.ba?Qi:Si);this.A-=-1===this.D?3:7};M[165]=function(){this.fa.call(this,2==this.ba?Ui:Vi);this.A-=-1===this.D?3:7};M[168]=function(){pd(this,this.Ob.Z,this.ba,2);this.A-=this.B.Ie};
|
||||
M[169]=function(){this.U=this.ga;var a=D(this);this.Ob.load(a);this.A-=this.B.zc;this.U=-1};M[171]=function(){this.fa.call(this,Gh);-1!==this.D&&(this.A-=5)};M[172]=function(){this.fa.call(this,2==this.ba?Wi:Yi);this.A-=-1===this.D?3:7};M[173]=function(){this.fa.call(this,2==this.ba?$i:aj);this.A-=-1===this.D?3:7};M[175]=function(){this.W.call(this,2==this.ba?Nh:Ph)};M[178]=function(){this.W.call(this,Zh)};M[179]=function(){this.fa.call(this,Fh);-1!==this.D&&(this.A-=5)};
|
||||
M[180]=function(){this.W.call(this,Wh)};M[181]=function(){this.W.call(this,Xh)};
|
||||
M[182]=function(){this.Oa.call(this,ai);switch(this.L>>3&7){case 0:this.G=this.G&~this.R|this.G&255;break;case 1:this.I=this.I&~this.R|this.I&255;break;case 2:this.M=this.M&~this.R|this.M&255;break;case 3:this.H=this.H&~this.R|this.H&255;break;case 4:this.gb=this.gb&~this.R|this.G>>8&255;this.G=this.aa;break;case 5:this.P=this.P&~this.R|this.I>>8&255;this.I=this.aa;break;case 6:this.K=this.K&~this.R|this.M>>8&255;this.M=this.aa;break;case 7:this.J=this.J&~this.R|this.H>>8&255,this.H=this.aa}this.A-=
|
||||
-1===this.D?3:6};M[183]=function(){nd(this,2);this.W.call(this,bi);switch(this.L>>3&7){case 0:this.G=this.G&65535;break;case 1:this.I=this.I&65535;break;case 2:this.M=this.M&65535;break;case 3:this.H=this.H&65535;break;case 4:this.gb=this.gb&65535;break;case 5:this.P=this.P&65535;break;case 6:this.K=this.K&65535;break;case 7:this.J=this.J&65535}this.A-=-1===this.D?3:6};M[186]=function(){this.ya.call(this,ok,this.xa)};M[187]=function(){this.fa.call(this,Eh);-1!==this.D&&(this.A-=5)};
|
||||
|
|
@ -366,7 +366,7 @@ function pk(a){Ua.call(this,"ChipSet",a,pk,32768);var b=a.model;b&&!qk[b]&&w("Un
|
|||
window.webkitAudioContext),this.sb&&(this.Fa=new this.sb));this.reset(!0);rb(this)}db(pk);var rk=5150.9,cg=5170,qk={5150:5150,5160:5160,5170:cg,att6300:5160.101,mpc1600:5150.101,z150:5160.15,compaq:5150.102,other:rk,deskpro386:5180},tk="sw1",xk="sw2",yk={Bk:1,ONE:0,co:64,ao:128,Fn:192,Lc:192,Qg:6},zk={bo:16,yn:32,Nn:48,Lc:48,Qg:4},vk=1,wk=4,Ak={5150:[{},{}]};Ak[5150][0][vk]={Lc:192,hd:{1:0,2:64,3:128,4:192},Qd:"Number of Floppy Drives"};Ak[5150][0][3]={Lc:2,hd:{0:0,1:2},Qd:"Coprocessor"};
|
||||
Ak[5150][0][wk]={Lc:48,hd:{0:0,1:16,2:32,3:48,none:0,tv:16,color:32,cga:32,mda:48,mono:48,ega:0,vga:0},Qd:"Monitor Type"};Ak[5150][0][5]={Lc:12,hd:{16:0,32:4,48:8,64:12},Qd:"Base Memory (16Kb Increments)"};Ak[5150][1][6]={Lc:31,hd:{0:0,32:1,64:2,96:3,128:4,160:5,192:6,224:7,256:8,288:9,320:10,352:11,384:12,416:13,448:14,480:15,512:16,544:17,576:18},Qd:"Expansion Memory (32Kb Increments)"};Ak[5160]=[{},{}];Ak[5160][0][vk]=Ak[5150][0][vk];Ak[5160][0][3]=Ak[5150][0][3];Ak[5160][0][wk]=Ak[5150][0][wk];
|
||||
Ak[5160][0][5]={Lc:12,hd:{64:0,128:4,192:8,256:12},Qd:"Base Memory (64Kb Increments)"};Ak[5160][1][6]=Ak[5150][1][6];Ak[5160.101]=[{},{}];Ak[5160.101][0][5]={Lc:143,hd:{128:1,256:130,512:8,640:141},Qd:"Base Memory (128Kb Increments)"};Ak[5160.101][0][3]={Lc:16,hd:{0:0,1:16},Qd:"Coprocessor"};Ak[5160.101][1][2]={Lc:1,hd:{0:0,1:1},Qd:"Floppy Type"};Ak[5160.101][1][vk]=Ak[5150][0][vk];Ak[5160.101][1][wk]=Ak[5150][0][wk];m=pk.prototype;
|
||||
m.Qb=function(a,b,c){switch(b){case tk:return this.qa[b]=c,Bk(this,0,b),!0;case xk:if(5150==(this.ia|0)||5160.101==this.ia)return this.qa[b]=c,Bk(this,1,b),!0;break;case "swdesc":return this.qa[b]=c,!0}return!1};
|
||||
m.Pb=function(a,b,c){switch(b){case tk:return this.qa[b]=c,Bk(this,0,b),!0;case xk:if(5150==(this.ia|0)||5160.101==this.ia)return this.qa[b]=c,Bk(this,1,b),!0;break;case "swdesc":return this.qa[b]=c,!0}return!1};
|
||||
m.Ic=function(a,b,c,d){this.ea=b;this.F=c;this.ha=d;this.V=a;this.Tb=Eb(a,"FPU");uk(this,3,this.Tb?1:0,!0);this.B=Eb(a,"Keyboard");this.gb=c.Y.Jd/1193181;hc(b,this,Ck);lc(b,this,Dk);this.ia<cg?5160.101!=this.ia?(hc(b,this,Ek),lc(b,this,Fk)):(hc(b,this,Gk),lc(b,this,Hk)):(hc(b,this,Ik),lc(b,this,Jk),5180==(this.ia|0)&&(hc(b,this,Kk),lc(b,this,Lk)));if(d){var e=this;Mk(d,1024,function(){for(var a=0;a<e.vc.length;a++){for(var b=e.vc[a],c="PIC"+a+":",d=0;d<b.Yc.length;d++)c+=" IC"+(d+1)+"="+t(b.Yc[d]);
|
||||
c+=" IMR="+t(b.Bd)+" IRR="+t(b.mc)+" ISR="+t(b.Pc)+" DELAY="+b.nf;e.ha.O(c)}});Mk(d,2048,function(a){a=(a=a[0])?+a:null;for(var b=0;b<e.W.length;b++)if(null==a||b==a){Nk(e,b);var c=e.W[b],d="TIMER"+b+":",l=0;if(null!=c.nd)for(var n=0;n<=c.nd;n++)l|=c.Ab[n]<<8*n;d+=" mode="+(c.mode>>1)+" bytes="+c.nd+" count="+u(l);e.ha.O(d)}});Mk(d,4096,function(){for(var a="",b=0;64>b;b++){var c=13>=b?Ok(e,b):e.A[b];a&&(a+="\n");a+="CMOS["+t(b)+"]: "+t(c)}e.ha.O(a)})}cf(c,26,this.am.bind(this))};
|
||||
m.ic=function(a,b){if(!b)if(!a)this.reset();else if(!this.restore(a))return!1;return!0};m.hc=function(a){return a?this.save():!0};
|
||||
|
|
@ -430,8 +430,8 @@ function Yl(a){Ua.call(this,"ROM",a,Yl);this.A=null;this.L=a.addr;this.C=a.size;
|
|||
Yl.prototype.Ic=function(a,b,c,d){this.ea=b;this.F=c;this.ha=d;$l(this)};Yl.prototype.ic=function(){this.Rd&&(this.ha&&am(this.ha,this.id,0,this.L>>>4,0,this.L,this.C,this.Rd),delete this.Rd);return!0};Yl.prototype.hc=function(){return!0};
|
||||
function Zl(a,b,c,d){if(d)a.Na("Unable to load system ROM (error "+d+": "+b+")");else{fb(a.ve,b,c);if("["==c.charAt(0)||"{"==c.charAt(0))try{var e=eval("("+c+")"),f=e.bytes,g=e.data;if(f)a.A=f;else if(g)for(a.A=Array(4*g.length),d=c=0;c<g.length;c++)a.A[d++]=g[c]&255,a.A[d++]=g[c]>>8&255,a.A[d++]=g[c]>>16&255,a.A[d++]=g[c]>>24&255;else a.A=e;a.Rd=e.symbols;if(!a.A.length){w("Empty ROM: "+b);return}if(1==a.A.length){w(a.A[0]);return}}catch(h){a.Na("ROM data error: "+h.message);return}else for(b=c.replace(/\n/gm,
|
||||
" ").replace(/ +$/,"").split(" "),a.A=Array(b.length),e=0;e<b.length;e++)a.A[e]=ca(b[e],16);$l(a)}}
|
||||
function $l(a){if(!sb(a))if(!a.V)rb(a);else if(a.A&&a.ea){if(a.A.length!=a.C)ub(a,"ROM size (0x"+r(a.A.length)+") does not match specified size ("+("0x"+r(a.C))+")");else{var b;b=a.L;if(Sb(a.ea,b,a.C,$b)){for(var c=0;c<a.A.length;c++){var d=a.ea,e=b+c;d.sa[(e&d.Gb)>>>d.La].wf(e&d.A,a.A[c]&255,e)}b=!0}else b=!1;if(b){b=[];"number"==typeof a.N?b.push(a.N):null!=a.N&&a.N.length&&(b=a.N);for(c=0;c<b.length;c++){var d=a,e=b[c],f=Xb(d.ea,d.L,d.C);Wb(d.ea,e,d.C,f)}a.B&&((b=hb(a.B,a.id))?(c=a.A,d=a.W,5==
|
||||
b.Ua?bm(b,c,d||[12640,8752],8):b.Ua==cm&&bm(b,c,d||[14221,16269],8),rb(b)):a.Na("Unable to find component: "+a.B));delete a.A}}rb(a)}}Qa(function(){for(var a=nb(document,"pcjs","rom"),b=0;b<a.length;b++){var c=a[b],d=jb(c),d=new Yl(d);mb(d,c)}});function dm(a){Ua.call(this,"RAM",a,dm);this.B=a.addr;this.A=a.size;this.L=a.test;this.V=!!this.A;this.C=!1}db(dm);m=dm.prototype;m.Ic=function(a,b,c,d){this.ea=b;this.F=c;this.ha=d;this.N=Eb(a,"ChipSet");rb(this)};
|
||||
function $l(a){if(!sb(a))if(!a.V)rb(a);else if(a.A&&a.ea){a.C||(a.C=a.A.length);if(a.A.length!=a.C)ub(a,"ROM size (0x"+r(a.A.length)+") does not match specified size ("+("0x"+r(a.C))+")");else{var b;b=a.L;if(Sb(a.ea,b,a.C,$b)){for(var c=0;c<a.A.length;c++){var d=a.ea,e=b+c;d.sa[(e&d.Gb)>>>d.La].wf(e&d.A,a.A[c]&255,e)}b=!0}else b=!1;if(b){b=[];"number"==typeof a.N?b.push(a.N):null!=a.N&&a.N.length&&(b=a.N);for(c=0;c<b.length;c++){var d=a,e=b[c],f=Xb(d.ea,d.L,d.C);Wb(d.ea,e,d.C,f)}a.B&&((b=hb(a.B,a.id))?
|
||||
(c=a.A,d=a.W,5==b.Ua?bm(b,c,d||[12640,8752],8):b.Ua==cm&&bm(b,c,d||[14221,16269],8),rb(b)):a.Na("Unable to find component: "+a.B));delete a.A}}rb(a)}}Qa(function(){for(var a=nb(document,"pcjs","rom"),b=0;b<a.length;b++){var c=a[b],d=jb(c),d=new Yl(d);mb(d,c)}});function dm(a){Ua.call(this,"RAM",a,dm);this.B=a.addr;this.A=a.size;this.L=a.test;this.V=!!this.A;this.C=!1}db(dm);m=dm.prototype;m.Ic=function(a,b,c,d){this.ea=b;this.F=c;this.ha=d;this.N=Eb(a,"ChipSet");rb(this)};
|
||||
m.ic=function(a,b){return!b&&(this.reset(),a&&this.controller&&!this.restore(a))?!1:!0};m.hc=function(a){return a&&this.controller?this.save():!0};
|
||||
m.reset=function(){if(!this.B&&!this.V&&this.N){var a=1024*Tk(this.N);this.A&&a!=this.A&&(Zb(this.ea,this.B,this.A),this.C=!1);this.A=a}!this.C&&this.A&&Sb(this.ea,this.B,this.A,1)&&(this.C=!0,this.status(Math.floor(this.A/1024)+"Kb allocated"),"ramCPQ"==this.ee&&(this.controller=new em(this),Sb(this.ea,fm,4,4,this.controller)));if(this.C){if(this.L||fc(this.ea,1138,4660),"ramCPQ"!=this.ee&&this.N&&(a=this.N,a.A)){var b=1048576>this.B?21:23,c=a.A[b]|a.A[b+1]<<8,c=c+(this.A>>10);a.A[b]=c&255;a.A[b+
|
||||
1]=c>>8;Xk(a)}}else w("No RAM allocated")};m.save=function(){var a=new hf(this);this.controller&&N(a,0,this.controller.save());return a.data()};m.restore=function(a){return this.controller?this.controller.restore(a[0]):!0};function em(a){this.N=a;this.C=gm;this.ha=hm;this.B=im;this.A=null}var fm=-2134900736,gm=65535,hm=2575,im=2,jm=[null,0],km=[function(a){return this.controller.Qa(a)},null,null,function(a,b){this.controller.qc(a,b)},null,null];m=em.prototype;m.save=function(){return[this.C,this.B]};
|
||||
|
|
@ -446,7 +446,7 @@ u:85,i:73,o:79,p:80,"[":X["["],"]":X["]"],enter:13,ctrl:1017,a:65,s:83,d:68,f:70
|
|||
Y[X["="]]=13;Y[X["+"]]=10765;Y[1008]=14;Y[1009]=15;Y[113]=16;Y[81]=10768;Y[119]=17;Y[87]=10769;Y[101]=18;Y[69]=10770;Y[114]=19;Y[82]=10771;Y[116]=20;Y[84]=10772;Y[121]=21;Y[89]=10773;Y[117]=22;Y[85]=10774;Y[105]=23;Y[73]=10775;Y[111]=24;Y[79]=10776;Y[112]=25;Y[80]=10777;Y[X["["]]=26;Y[X["{"]]=10778;Y[X["]"]]=27;Y[X["}"]]=10779;Y[13]=28;Y[1017]=29;Y[97]=30;Y[65]=10782;Y[115]=31;Y[83]=10783;Y[100]=32;Y[68]=10784;Y[102]=33;Y[70]=10785;Y[103]=34;Y[71]=10786;Y[104]=35;Y[72]=10787;Y[106]=36;Y[74]=10788;
|
||||
Y[107]=37;Y[75]=10789;Y[108]=38;Y[76]=10790;Y[X[";"]]=39;Y[X[":"]]=10791;Y[X["'"]]=40;Y[X['"']]=10792;Y[X["`"]]=41;Y[X["~"]]=10793;Y[1016]=42;Y[X["\\"]]=43;Y[X["|"]]=10795;Y[122]=44;Y[90]=10796;Y[120]=45;Y[88]=10797;Y[99]=46;Y[67]=10798;Y[118]=47;Y[86]=10799;Y[98]=48;Y[66]=10800;Y[110]=49;Y[78]=10801;Y[109]=50;Y[77]=10802;Y[X[","]]=51;Y[X["<"]]=10803;Y[X["."]]=52;Y[X[">"]]=10804;Y[X["/"]]=53;Y[X["?"]]=10805;Y[3016]=54;Y[1044]=55;Y[1018]=56;Y[1032]=57;Y[1020]=58;Y[1112]=59;Y[1113]=60;Y[1114]=61;
|
||||
Y[1115]=62;Y[1116]=63;Y[1117]=64;Y[1118]=65;Y[1119]=66;Y[1120]=67;Y[1121]=68;Y[1144]=69;Y[1145]=70;Y[1036]=71;Y[1038]=72;Y[1033]=73;Y[1109]=74;Y[1037]=75;Y[1101]=76;Y[1039]=77;Y[1107]=78;Y[1035]=79;Y[1040]=80;Y[1034]=81;Y[1045]=82;Y[1046]=83;Y[4027]=84;Y[1122]=87;Y[1123]=88;Y[1091]=91;Y[1093]=93;Y[1224]=91;Y[4003]=7470;Y[4008]=7494;Y[4046]=3677523;Y[4045]=3677522;Y[4013]=3677468;m=lm.prototype;
|
||||
m.Qb=function(a,b,c,d){var e=this,f=a+"-"+b;if(void 0===this.qa[f])switch(b){case "kbd":return c.onkeydown=function(a){return um(e,a,!0)},c.onkeypress=function(a){a=a||window.event;a=a.which||a.keyCode;e.L="";var b=!Y[a]||!!(e.xc&128);b||vm(e,a,!0);return b},c.onkeyup=function(a){return um(e,a,!1)},!0;case "caps-lock":return this.qa[f]=c,c.onclick=function(){e.V&&e.V.yd();vm(e,1020,!0)},!0;case "num-lock":return this.qa[f]=c,c.onclick=function(){e.V&&e.V.yd();vm(e,1144,!0)},!0;case "scroll-lock":return this.qa[f]=
|
||||
m.Pb=function(a,b,c,d){var e=this,f=a+"-"+b;if(void 0===this.qa[f])switch(b){case "kbd":return c.onkeydown=function(a){return um(e,a,!0)},c.onkeypress=function(a){a=a||window.event;a=a.which||a.keyCode;e.L="";var b=!Y[a]||!!(e.xc&128);b||vm(e,a,!0);return b},c.onkeyup=function(a){return um(e,a,!1)},!0;case "caps-lock":return this.qa[f]=c,c.onclick=function(){e.V&&e.V.yd();vm(e,1020,!0)},!0;case "num-lock":return this.qa[f]=c,c.onclick=function(){e.V&&e.V.yd();vm(e,1144,!0)},!0;case "scroll-lock":return this.qa[f]=
|
||||
c,c.onclick=function(){e.V&&e.V.yd();vm(e,1145,!0)},!0;default:var g=b.toUpperCase().replace(/-/g,"_");if(void 0!==rm[g]&&"button"==a)return this.qa[f]=c,c.onclick=function(a,b,c){return function(){a.V&&a.V.yd();wm(a,c,!0);vm(a,c,!0)}}(this,g,rm[g]),!0;if(void 0!==sm[b])return this.ga++,this.qa[f]=c,a=function(a,b,c){return function(){vm(a,c)}}(this,b,sm[b]),b=function(a,b,c){return function(){xm(a,c)}}(this,b,sm[b]),"ontouchstart"in window?(c.ontouchstart=a,c.ontouchend=b):(c.onmousedown=a,c.onmouseup=
|
||||
c.onmouseout=b),!0;if(d)return this.qa[f]=c,c.onclick=function(){e.V&&e.V.yd();d&&!e.L&&(e.L=d,ym(e,300))},!0}return!1};function zm(a,b,c){if(a.ga){for(var d in pm)if(b==pm[d]){b=+d;(d=om[d])&&(b=d);break}for(var e in sm)if((d=sm[e]==b)||(d=b,97<=d&&122>=d&&(d-=32),d=sm[e]==d),d){(a=a.qa["key-"+e])&&void 0!==c&&(a.style.color=c?"#ffffff":"#000000",a.style.backgroundColor=c?"#000000":"#ffffff");break}}}m.Ic=function(a,b,c,d){this.V=a;this.ea=b;this.F=c;this.ha=d;this.N=Eb(a,"ChipSet")};
|
||||
function mm(a,b){var c=0;a.ia=null;b&&(a.ia=b.toUpperCase(),c=nm.indexOf(a.ia),0>c&&(c=0));b=nm[c];a.ra=parseInt(b.substr(2),10)}function Sl(a){y(a,"keyboard reset",65792);a.A=[];Tl(a,170)}function Ol(a,b,c){a.aa!==c&&(a.aa=a.fa=c)&&(a.U=!0);a.X!==b&&(a.X=b)&&!a.fa&&Wl(a,!0);a.X&&a.fa&&(Sl(a),a.fa=!1)}function Tl(a,b){a.N&&(a.A.unshift(b),a.U=!0,Vl(a.N,b))}function Pl(a){var b=0;a.A.length&&a.U&&(b=a.A[0],a.N&&Vl(a.N,b));A(a)&&y(a,b?"scan code "+t(b)+" available":"no scan codes available")}
|
||||
|
|
@ -491,9 +491,9 @@ function fn(a,b){var c=a.mb[b];if(null!=c&&5<=a.Ua){var d=0,e=0,f=0;switch(b){ca
|
|||
m=Z.prototype;
|
||||
m.Ic=function(a,b,c,d){this.ea=b;this.F=c;this.ha=d;c=(c=Em[this.ia])&&c[0];3!==c&&(hc(b,this,gn),lc(b,this,hn));1!==c&&(hc(b,this,jn),lc(b,this,kn));5<=this.Ua&&(hc(b,this,ln),lc(b,this,mn));this.Ua==cm&&(hc(b,this,nn),lc(b,this,on));if(d){var e=this;Mk(d,262144,function(a){if(e.C)if(a[0]){var b=e.C;if(b.sd){var c,d,f,q=!1,p=8,z=8,F=-1,v=b.video.L>>3;for(c=0;c<a.length;c++){var E=a[c];if(c){var H=E.charAt(0);d=ca(E.substr(1));switch(H){case "l":p=d;break;case "n":1<=d&&8>=d&&(z=d,q=!0);break;case "p":0<=
|
||||
d&&3>=d&&(F=d);break;case "w":d<v&&(v=d);break;default:b.ha.O("unrecognized argument: "+E)}}else f=ca(E)}void 0===f?f=b.B||0:f>=b.ob&&(f-=b.ob);a="";for(c=0;c<p;c++){E=r(b.ob+f)+":";for(d=0;d<z&&f<b.sd.length;d++)H=b.sd[f++],E+=" "+(0>F?r(H):da(H>>(F<<3),8));q&&(f+=v-z);a&&(a+="\n");a+=E}a&&b.ha.O(a);b.B=f}else b.ha.O("no buffer")}else e.ha.O("BIOSMODE: "+t(e.Ia)),b=e.C,en(b,"CRTC",b.Ac,b.mb,b.kg),5<=b.Ua&&(en(b," GRC",b.be,b.ae,b.Ug),en(b," SEQ",b.ce,b.Je,b.Vg),en(b," ATC",b.Od,b.Tc,b.Tg),en(b," ATCINDX",
|
||||
b.Od),b.ha.O(" ATCDATA: "+b.Xe),en(b," FEAT",b.dg),en(b," MISC",b.uf),en(b," STATUS0",b.Mg)),en(b," STATUS1",b.ma),1!=b.Ua&&3!=b.Ua||en(b," MODEREG",b.gd),3==b.Ua&&en(b," COLOR",b.sf),5<=b.Ua&&(b.ha.O(" LATCHES: "+r(b.Fb)),b.ha.O(" ACCESS: "+r(b.wg,4)),b.ha.O("Use 'dump video [addr]' to dump video memory"));else e.ha.O("no active video card")})}if((this.B=Eb(a,"Keyboard"))&&this.ka){for(var f in this.qa)0<f.indexOf("lock")&&this.B.Qb("led",f,this.qa[f]);this.B.Qb(this.vk?"textarea":"canvas",
|
||||
b.Od),b.ha.O(" ATCDATA: "+b.Xe),en(b," FEAT",b.dg),en(b," MISC",b.uf),en(b," STATUS0",b.Mg)),en(b," STATUS1",b.ma),1!=b.Ua&&3!=b.Ua||en(b," MODEREG",b.gd),3==b.Ua&&en(b," COLOR",b.sf),5<=b.Ua&&(b.ha.O(" LATCHES: "+r(b.Fb)),b.ha.O(" ACCESS: "+r(b.wg,4)),b.ha.O("Use 'dump video [addr]' to dump video memory"));else e.ha.O("no active video card")})}if((this.B=Eb(a,"Keyboard"))&&this.ka){for(var f in this.qa)0<f.indexOf("lock")&&this.B.Pb("led",f,this.qa[f]);this.B.Pb(this.vk?"textarea":"canvas",
|
||||
"kbd",this.V)}this.Vc=9;(this.N=Eb(a,"ChipSet"))&&this.bg&&5==this.Ua&&(this.Vc=sk(this.bg,this.Vc));"mouse"==this.gg?(this.W=Eb(a,"Mouse"))&&pn(this,2):"keygrid"==this.gg&&this.B&&pn(this,1)};
|
||||
m.Qb=function(a,b,c){var d=this;if(!this.qa[b])switch(this.qa[b]=c,b){case "fullScreen":return this.ga&&this.ga.We?c.onclick=function(){d.We()}:c.parentNode.removeChild(c),!0;case "lockPointer":return this.uk=c.textContent,this.V&&this.V.De?c.onclick=function(){d.De(!0)}:c.parentNode.removeChild(c),!0;case "refresh":return c.onclick=function(){qn(d,!0)},!0}return!1};
|
||||
m.Pb=function(a,b,c){var d=this;if(!this.qa[b])switch(this.qa[b]=c,b){case "fullScreen":return this.ga&&this.ga.We?c.onclick=function(){d.We()}:c.parentNode.removeChild(c),!0;case "lockPointer":return this.uk=c.textContent,this.V&&this.V.De?c.onclick=function(){d.De(!0)}:c.parentNode.removeChild(c),!0;case "refresh":return c.onclick=function(){qn(d,!0)},!0}return!1};
|
||||
m.We=function(){var a=!1;if(this.ga){if(this.ga.We){a="100%";if(screen&&screen.width&&screen.height){var b=screen.width/screen.height,c=this.ra/this.Ea;b>c&&(a=Math.round(c/b*100)+"%")}this.qf?(this.ka.style.width=a,this.ka.style.width=a,this.ka.style.display="block",this.ka.style.margin="auto"):(this.ga.style.width=a,this.ga.style.height="auto");this.ga.style.backgroundColor="black";this.ga.We();a=!0}this.V&&this.V.focus()}return a};
|
||||
function Hm(a,b){!b&&a.ga&&(a.qf?a.ka.style.width=a.ka.style.height="":a.ga.style.width=a.ga.style.height="");y(a,"notifyFullScreen("+b+")",!0);a.B&&(a.B.bh=b)}m.De=function(a){var b=!1;this.V&&(a?this.V.De&&(this.V.De(),this.W&&this.W.Vf(!0),b=!0):this.V.sk&&(this.V.sk(),this.W&&this.W.Vf(!1),b=!0),this.V&&this.V.focus());return b};m.Vf=function(a){this.W&&(this.W.Vf(a),this.B&&(this.B.bh=a));var b=this.qa.lockPointer;b&&(b.textContent=a?"Press Esc to Unlock Pointer":this.uk)};
|
||||
function pn(a,b){var c=a.V;c&&!a.me&&(c.addEventListener("touchstart",function(b){rn(a,b,!0)},!1),c.addEventListener("touchmove",function(b){rn(a,b)},!0),c.addEventListener("touchend",function(b){rn(a,b,!1)},!1),a.me=b,a.uc=a.Cc=a.hg=-1,a.Id=!1,a.Xc=null,a.Hd=!1,a.un=function(){a.Hd=!0;a.W.je(sn,!0)})}m.Gg=function(a){this.B&&this.B.Gg(a)};
|
||||
|
|
@ -520,7 +520,7 @@ a.jd|0;a.Ub=a.Yf;a.td=0;void 0!==b&&(a.Ub=(a.Ub<<1)+b|0,a.td=a.Ub+b>>1);if(a.Oa.
|
|||
function bo(a,b,c,d,e){var f=d&255,g=d>>8;d=g&15;var h=a.Oa[a.U];h.zf&&(d=h.zf[d]);var k=g>>4&15;h.zf&&(k=h.zf[k]);e?(b*=h.Qc,c*=h.Rc,e.fillStyle=h.Oe[k],e.fillRect(b,c,h.Qc,h.Rc)):(b=b*a.Ja+a.ne,c=c*a.Ka+a.oe,a.ja.fillStyle=h.Oe[k],a.ja.fillRect(b,c,a.Ja,a.Ka));g&256&&(k=(f&15)*h.Qc,f=(f>>4)*h.Rc,e?e.drawImage(h.Sg[d],k,f,h.Qc,h.Rc,b,c,h.Qc,h.Rc):a.ja.drawImage(h.Sg[d],k,f,h.Qc,h.Rc,b,c,a.Ja,a.Ka));g&512&&(f=a.ig,g=a.Ce,e?(a.$a&&a.$a!==h.Rc&&(f=f*h.Rc/a.$a|0,g=g*h.Rc/a.$a|0),e.fillStyle=h.Oe[d],
|
||||
e.fillRect(b,c+f,h.Qc,g)):(a.$a&&a.$a!==a.Ka&&(f=f*a.Ka/a.$a|0,g=g*a.Ka/a.$a|0),a.ja.fillStyle=h.Oe[d],a.ja.fillRect(b,c+f,a.Ja,g)))}
|
||||
function qn(a,b){if(a.la.cc){var c=!1,d=a.C;d&&(d!==a.A?d.gd&8&&(c=!0):d.Od&32&&(c=!0));if(c||b){if(b)go(a);else if(void 0===a.fa)return;var e=!1;!(b||++a.Pg&15)&&0<=a.cb&&(a.cb++,e=!0);var f=0,g=a.ag,h=a.ob,c=h,k=c+a.ac;19<=a.Ia&&(h=c=655360,k=c+65536);if(ho(a,d)&8||d.pf&&d.pf<d.ei){var l=(d.mb[12]<<8)+d.mb[13]|0;d.Md!==l&&(d.Md=l,fo(a));d.pf=0}l=d.Md;a.U&&(l<<=1);var c=c+l,n=a.Ub;5<=a.Ua&&d.mb[19]&&d.mb[19]<<1!=d.mb[1]+1&&(a.Db=d.mb[19]<<(a.U?1:d.mb[20]&64?3:4),n=(a.Db*(a.X-1)+a.L)/a.jd|0,7>=a.Ia&&
|
||||
(n<<=1));c+n>k&&(n=k-c,0>n&&(n=0));k=c+n;if(l=!b&&a.Fa){for(var l=a.ea,q=!0,p=c>>>l.La;0<n&&p<l.sa.length;)l.sa[p].Wa&&(l.sa[p].Wa=q=!1,l.sa[p].Ni=!0),n-=l.Nb,p++;l=q}if(l){if(!e)return;if(!a.Pa){f=a.ua-d.Md;if(0>f)return;g=f+1}}if(a.U){if(a.Oa[a.U]){d=f;f=0;e=a.Pa=0;h=1048575;n=a.C.gd&32;5<=a.Ua&&(n=a.C.Tc[16]&8);l=a.ua-a.C.Md;n&&(e=32768,h&=~e,a.cb&2||(h&=-65537));for(c+=d<<1;c<k&&d<g;)n=ec(a.ea,c),n|=65536,n&e&&(a.Pa++,n&=h),d==l&&(n|=a.cb&1?131072:0),a.Fa&&n===a.fa[d]||(bo(a,d%a.L,d/a.L|0,n,a.gb),
|
||||
(n<<=1));c+n>k&&(n=k-c,0>n&&(n=0));k=c+n;if(l=!b&&a.Fa){for(var l=a.ea,q=!0,p=c>>>l.La;0<n&&p<l.sa.length;)l.sa[p].Wa&&(l.sa[p].Wa=q=!1,l.sa[p].Ni=!0),n-=l.Sb,p++;l=q}if(l){if(!e)return;if(!a.Pa){f=a.ua-d.Md;if(0>f)return;g=f+1}}if(a.U){if(a.Oa[a.U]){d=f;f=0;e=a.Pa=0;h=1048575;n=a.C.gd&32;5<=a.Ua&&(n=a.C.Tc[16]&8);l=a.ua-a.C.Md;n&&(e=32768,h&=~e,a.cb&2||(h&=-65537));for(c+=d<<1;c<k&&d<g;)n=ec(a.ea,c),n|=65536,n&e&&(a.Pa++,n&=h),d==l&&(n|=a.cb&1?131072:0),a.Fa&&n===a.fa[d]||(bo(a,d%a.L,d/a.L|0,n,a.gb),
|
||||
a.fa[d]=n,f++),c+=2,d++;a.Fa=!0;f&&a.gb&&a.ja.drawImage(a.fb,0,0,a.bc,a.tc,a.ne,a.oe,a.Dd,a.Gd);Cn(a)}}else if(a.td){for(var g=k,z,k=c,d=a.Pa=0,f=a.jd,e=16==f?65536:196608,h=16==f?1:2,l=yn(a,h),q=n=0,p=a.L,F=0,v=a.X,E=0;k<g;){z=ec(a.ea,k);if(a.Fa&&z===a.fa[d])n+=f;else{a.fa[d]=z;z=z>>8|(z&255)<<8;var H=e,L=16;n<p&&(p=n);for(var V=0;V<f;V++){var P=(z&(H>>=h))>>(L-=h);Bn(a.sb,n++,q,l[P])}n>F&&(F=n);q<v&&(v=q);q>=E&&(E=q+1)}k+=2;d++;if(n>=a.L){n=0;q+=2;if(q>a.X)break;q==a.X&&(q=1,k=c+a.td)}}a.Fa=!0;
|
||||
p<a.L&&(a.gb.putImageData(a.sb,0,0,p,v,F-p,E-v),a.ja.drawImage(a.fb,0,0,a.L,a.X,0,0,a.ra,a.Ea))}else if(a.gf){g=h;f=a.Pa=0;e=yn(a,8);h=a.C.sd;n=l=0;q=a.L;p=0;F=a.X;v=0;E=a.C.Je[4]&8?4:1;z=a.C.Tc[19]&15;for(H=a.Db>a.L?a.Db-a.L-z>>3:0;c<k;){d=h[c-g];V=4;z||(a.Fa&&d===a.fa[f]?(l+=V,V=0):a.fa[f]=d,f++);if(V){l<q&&(q=l);for(L=0;L<V;L++)Bn(a.sb,l++,n,e[d&255]),d>>=8;l>p&&(p=l);n<F&&(F=n);n>=v&&(v=n+1)}c+=E;if(l>=a.L){l=0;if(++n>a.X)break;c+=H}}z||(a.Fa=!0);q<a.L&&(a.gb.putImageData(a.sb,0,0,q,F,p-q,v-F),
|
||||
a.ja.drawImage(a.fb,0,0,a.L,a.X,0,0,a.ra,a.Ea))}else{g=h;d=a.Pa=0;f=yn(a);e=a.C.sd;l=h=0;n=a.L;q=0;p=a.X;F=0;v=a.C.Tc[19]&15;for(E=a.Db>a.L?a.Db-a.L-v>>3:0;c<k;){z=c++-g;z=e[z];L=8;v?h?(H=a.L-h,L>H&&(L=H)):(z<<=v,L-=v,a.Fa=!1):(a.Fa&&z===a.fa[d]?(h+=L,L=0):a.fa[d]=z,d++);if(L){h<n&&(n=h);for(H=0;H<L;H++)V=Sm[z&2155905152]||0,Bn(a.sb,h++,l,f[V]),z<<=1;h>q&&(q=h);l<p&&(p=l);l>=F&&(F=l+1)}if(h>=a.L){h=0;if(++l>a.X)break;c+=E}}v||(a.Fa=!0);n<a.L&&(a.gb.putImageData(a.sb,0,0,n,p,q-n,F-p),a.ja.drawImage(a.fb,
|
||||
|
|
@ -541,13 +541,13 @@ var gn={948:Z.prototype.Gl,949:Z.prototype.Fl,952:Z.prototype.Hl,954:Z.prototype
|
|||
961:Z.prototype.dk,962:Z.prototype.cn,964:Z.prototype.jn,965:Z.prototype.hn,970:Z.prototype.Wm,972:Z.prototype.Vm,974:Z.prototype.Um,975:Z.prototype.Tm,986:Z.prototype.ek},nn={963:Z.prototype.Tl,966:Z.prototype.rl,967:Z.prototype.sl,969:Z.prototype.ql,970:Z.prototype.Ul,972:Z.prototype.Vl},on={963:Z.prototype.mn,966:Z.prototype.Km,967:Z.prototype.Lm,968:Z.prototype.Mm,969:Z.prototype.Jm};
|
||||
Qa(function(){for(var a=nb(document,"pcjs","video"),b=0;b<a.length;b++){var c=a[b],d=jb(c),e=document.createElement("canvas");if(void 0===e||!e.getContext){c.innerHTML="<br/>Missing <canvas> support. Please try a newer web browser.";break}e.setAttribute("class","pcjs-canvas");e.setAttribute("width",d.screenWidth);e.setAttribute("height",d.screenHeight);e.style.backgroundColor=d.screenColor;e.style.height="auto";0<=ya().indexOf("MSIE")&&(c.onresize=function(a,b,c,d){return function(){b.style.height=
|
||||
(a.clientWidth*d/c|0)+"px"}}(c,e,d.screenWidth,d.screenHeight),c.onresize());var f=+(d.aspect||Ya.aspect);f&&.3<=f&&3.33>=f&&(Pa("onresize",function(a,b,c){return function(){b.style.height=(a.clientWidth/c|0)+"px"}}(c,e,f)),window.onresize());c.appendChild(e);f=document.createElement("textarea");Ga("iOS")&&(f.setAttribute("autocapitalize","off"),f.setAttribute("autocorrect","off"));c.appendChild(f);var g=e.getContext("2d"),d=new Z(d,e,g,f,c);mb(d,c)}});
|
||||
function no(a){this.W=a.adapter;switch(this.W){case 1:this.V=956;this.C=7;break;case 2:this.V=888;this.C=7;break;case 3:this.V=632;this.C=5;break;default:w("Unrecognized parallel adapter #"+this.W);return}this.A=this.B=null;Ua.call(this,"ParallelPort",a,no,4194304);a=a.binding;"console"==a?this.B="":kb(this,a,oo)}db(no);var oo="buffer";m=no.prototype;m.Qb=function(a,b,c){switch(b){case oo:return this.qa[b]=this.A=c,!0}return!1};
|
||||
function no(a){this.W=a.adapter;switch(this.W){case 1:this.V=956;this.C=7;break;case 2:this.V=888;this.C=7;break;case 3:this.V=632;this.C=5;break;default:w("Unrecognized parallel adapter #"+this.W);return}this.A=this.B=null;Ua.call(this,"ParallelPort",a,no,4194304);a=a.binding;"console"==a?this.B="":kb(this,a,oo)}db(no);var oo="buffer";m=no.prototype;m.Pb=function(a,b,c){switch(b){case oo:return this.qa[b]=this.A=c,!0}return!1};
|
||||
m.Ic=function(a,b,c,d){this.ea=b;this.F=c;this.ha=d;this.N=Eb(a,"ChipSet");hc(b,this,po,this.V);lc(b,this,qo,this.V);rb(this)};m.ic=function(a,b){if(!b)if(!a||!this.restore)this.reset();else if(!this.restore(a))return!1;return!0};m.hc=function(a){return a?this.save():!0};m.reset=function(){ro(this)};m.save=function(){var a=new hf(this),b=0,c=[];c[b++]=this.L;c[b++]=this.Yb;c[b]=this.Bf;N(a,0,c);return a.data()};m.restore=function(a){return ro(this,a[0])};
|
||||
function ro(a,b){var c=0;void 0===b&&(b=[0,0,0]);a.L=b[c++];a.Yb=b[c++];a.Bf=b[c];return!0}m.tl=function(a,b){var c=this.L;x(this,a,null,b,"DATA",c);return c};m.Rl=function(a,b){var c=this.Yb;x(this,a,null,b,"STAT",c);return c};m.pl=function(a,b){var c=this.Bf;x(this,a,null,b,"CTRL",c);return c};
|
||||
m.Nm=function(a,b,c){x(this,a,b,c,"DATA");this.L=b;this.Yb|=64;if(this.A)8==b?this.A.value=this.A.value.slice(0,-1):(this.A.value+=String.fromCharCode(b),this.A.scrollTop=this.A.scrollHeight),a=!0;else if(null!=this.B){if(10==b||1024<=this.B.length)this.O(this.B),this.B="";10!=b&&(this.B+=String.fromCharCode(b));a=!0}else a=!1;a&&(this.Yb&=-65);so(this)};m.Im=function(a,b,c){x(this,a,b,c,"CTRL");this.Bf=b;so(this)};function so(a){a.N&&a.C&&(a.Bf&16&&!(a.Yb&64)?eg(a.N,a.C):dg(a.N,a.C))}
|
||||
var po={0:no.prototype.tl,1:no.prototype.Rl,2:no.prototype.pl},qo={0:no.prototype.Nm,2:no.prototype.Im};Qa(function(){for(var a=nb(document,"pcjs","parallel"),b=0;b<a.length;b++){var c=a[b],d=jb(c),d=new no(d);mb(d,c)}});
|
||||
function to(a){this.ra=a.adapter;switch(this.ra){case 1:this.ka=1016;this.fa=4;break;case 2:this.ka=760;this.fa=3;break;default:w("Unrecognized serial adapter #"+this.ra);return}this.V=this.U=null;this.Ca=a.tabSize;this.ya=a.charBOL;this.X=0;Ua.call(this,"SerialPort",a,to,8388608);a=a.binding;"console"==a?this.U="":kb(this,a,uo)}db(to);var uo="buffer";m=to.prototype;m.wi=function(a,b){return a==this.ee?(this.W=b,this):null};
|
||||
m.Qb=function(a,b,c){var d=this;switch(b){case uo:return this.qa[b]=this.V=c,c.onkeydown=function(a){a=a||window.event;var b=a.keyCode;if(8===b||a.ctrlKey&&65<=b&&90>=b)a.preventDefault&&a.preventDefault(),64<b&&(b-=64),vo(d,[b]);return!0},c.onkeypress=function(a){a=a||window.event;vo(d,[a.which||a.keyCode]);a.preventDefault&&a.preventDefault();return!0},c.removeAttribute("readonly"),!0}return!1};
|
||||
m.Pb=function(a,b,c){var d=this;switch(b){case uo:return this.qa[b]=this.V=c,c.onkeydown=function(a){a=a||window.event;var b=a.keyCode;if(8===b||a.ctrlKey&&65<=b&&90>=b)a.preventDefault&&a.preventDefault(),64<b&&(b-=64),vo(d,[b]);return!0},c.onkeypress=function(a){a=a||window.event;vo(d,[a.which||a.keyCode]);a.preventDefault&&a.preventDefault();return!0},c.removeAttribute("readonly"),!0}return!1};
|
||||
m.Ic=function(a,b,c,d){this.ea=b;this.F=c;this.ha=d;this.N=Eb(a,"ChipSet");hc(b,this,wo,this.ka);lc(b,this,xo,this.ka);rb(this)};m.ic=function(a,b){if(!b)if(!a||!this.restore)this.reset();else if(!this.restore(a))return!1;return!0};m.hc=function(a){return a?this.save():!0};m.reset=function(){yo(this)};
|
||||
m.save=function(){var a=new hf(this),b=0,c=[];c[b++]=this.pa;c[b++]=this.wa;c[b++]=this.aa;c[b++]=this.ja;c[b++]=this.L;c[b++]=this.B;c[b++]=this.C;c[b++]=this.A;c[b++]=this.ua;c[b]=this.ga;N(a,0,c);return a.data()};m.restore=function(a){return yo(this,a[0])};function yo(a,b){var c=0;void 0===b&&(b=[0,0,384,0,1,0,0,96,48,[]]);a.pa=b[c++];a.wa=b[c++];a.aa=b[c++];a.ja=b[c++];a.L=b[c++];a.B=b[c++];a.C=b[c++];a.A=b[c++];a.ua=b[c++];a.ga=b[c];return!0}function vo(a,b){a.ga=a.ga.concat(b);zo(a)}
|
||||
function zo(a){0<a.ga.length&&!(a.A&1)&&(a.pa=a.ga.shift(),a.A|=1);var b=-1;a.A&1&&a.ja&1&&(b=4);0<=b?(a.L&=-8,a.L|=b,a.N&&a.fa&&eg(a.N,a.fa,100)):(a.L|=1,a.N&&a.fa&&dg(a.N,a.fa))}m.Ol=function(a,b){var c=this.B&128?this.aa&255:this.pa;x(this,a,null,b,this.B&128?"DLL":"RBR",c);this.A&=-2;zo(this);return c};m.Al=function(a,b){var c=this.B&128?this.aa>>8:this.ja;x(this,a,null,b,this.B&128?"DLM":"IER",c);return c};m.Bl=function(a,b){var c=this.L;x(this,a,null,b,"IIR",c);return c};
|
||||
|
|
@ -594,17 +594,17 @@ b+" changes applied)";b=-1;break}if(this.ef){c="unable to modify write-protected
|
|||
m.toJSON=function(){var a;a=0;for(var b;b=Yo(this,a++);)qp(b);a=JSON.stringify(this.A,function(a,b){return"file"==a?void 0: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 qp(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 rp(a){Ua.call(this,"FDC",a,rp,524288);this.dmaRead=this.wk;this.dmaWrite=this.xk;this.dmaFormat=this.Lk;this.U=a.autoMount||null;this.ga=a.sortBy||"name";"none"==this.ga&&(this.ga=null);this.B=[];this.ja=!Ga("Mobi")&&window&&"FileReader"in window}db(rp);aa={};
|
||||
var sp={3:{Vd:3,ie:0,name:aa.Zn},4:{Vd:2,ie:1,name:aa.Xn},5:{Vd:9,ie:7,name:aa.io},6:{Vd:9,ie:7,name:aa.Sn},7:{Vd:2,ie:0,name:aa.Un},8:{Vd:1,ie:2,name:aa.Yn},10:{Vd:2,ie:7,name:aa.Tn},13:{Vd:6,ie:7,name:aa.En},15:{Vd:3,ie:0,name:aa.Wn}};m=rp.prototype;
|
||||
m.Qb=function(a,b,c){var d=this;switch(b){case "listDisks":this.qa[b]=c;if(this.ga){b=[];for(a=0;a<c.options.length;a++)b.push(c.options[a]);b.sort(function(a,b){return"path"!=d.ga?a.text.localeCompare(b.text):a.value.localeCompare(b.value)});for(a=0;a<b.length;a++)c.options[a]=b[a]}c.onchange=function(){var a=d.qa.descDisk,b=c.options[c.selectedIndex];if(a&&b){var g={};if(b=b.getAttribute("data-value"))try{g=eval("("+b+")")}catch(h){w("FDC option error: "+h.message)}b=g.desc;void 0===b&&(b="");g=
|
||||
m.Pb=function(a,b,c){var d=this;switch(b){case "listDisks":this.qa[b]=c;if(this.ga){b=[];for(a=0;a<c.options.length;a++)b.push(c.options[a]);b.sort(function(a,b){return"path"!=d.ga?a.text.localeCompare(b.text):a.value.localeCompare(b.value)});for(a=0;a<b.length;a++)c.options[a]=b[a]}c.onchange=function(){var a=d.qa.descDisk,b=c.options[c.selectedIndex];if(a&&b){var g={};if(b=b.getAttribute("data-value"))try{g=eval("("+b+")")}catch(h){w("FDC option error: "+h.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}};return!0;case "descDisk":case "listDrives":return this.qa[b]=c,c.onchange=function(){var a=ca(c.value,10);null!=a&&tp(d,a)},!0;case "loadDrive":return this.qa[b]=c,c.onclick=function(){var a=d.qa.listDisks;a&&up(d,a.options[a.selectedIndex].text,a.value)},!0;case "saveDrive":if(!this.ja){c.parentNode.removeChild(c);break}this.qa[b]=c;c.onclick=function(){var a=d.qa.listDrives;a&&a.options&&d.A&&(a=ca(a.value,10),(a=
|
||||
d.A[a])?(a=a.za)?(a=Ia(pp(a),"octet-stream",!0,a.Ng.replace(".json",".img")),w(a)):d.Na("No diskette loaded in drive."):d.Na("No diskette drive selected."))};return!0;case "mountDrive":if(!this.ja){c.parentNode.removeChild(c);break}this.qa[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;up(d,fa(b,!0),b,a)}return!1};return!0}return!1};
|
||||
m.Ic=function(a,b,c,d){this.ea=b;this.F=c;this.ha=d;this.V=a;this.N=Eb(a,"ChipSet");if((this.U=Nc(this.V,"autoMount")||this.U)&&"string"==typeof this.U)try{this.U=eval("("+this.U+")")}catch(e){w("FDC auto-mount error: "+e.message+" ("+this.U+")"),this.U=null}vp(this);hc(b,this,wp);lc(b,this,xp);yp(this,"None","",!0);this.ja&&yp(this,"Local Disk","?");yp(this,"Remote Disk","??");zp(this)||rb(this)};
|
||||
m.ic=function(a,b){if(!b){if(!a||!this.restore){if(this.reset(),this.V.dh){this.B=[];for(var c=0;c<this.A.length;c++)Ap(this,c,!0);zp(this,!0)}}else if(!this.restore(a))return!1;if(c=this.qa.listDrives){for(;c.firstChild;)c.removeChild(c.firstChild);c.value="";for(var d=0;d<this.ka;d++){var e=document.createElement("option");e.value=d;e.text=String.fromCharCode(65+d)+":";c.appendChild(e)}0<this.ka&&(c.value="0",tp(this,0))}}return!0};m.hc=function(a){return a?this.save():!0};m.reset=function(){vp(this)};
|
||||
m.save=function(){var a=new hf(this),b=0,c=[];c[b++]=this.hb;c[b++]=0;c[b++]=this.ma;c[b++]=this.W;c[b++]=this.L;c[b++]=this.C;c[b++]=this.aa;for(var d=b++,e=0,f=[],g=0;g<this.A.length;g++){var h=e++,k=this.A[g],l=0,n=[];n[l++]=k.Cb;n[l++]=[k.name,k.Bb,k.ub,k.lb,k.Va,k.bf,k.zg,k.Nf,k.Of];n[l++]=k.kb;n[l++]=k.ge+100;n[l++]=k.Rb;n[l++]=k.xb;n[l++]=k.he;n[l++]=k.Hb;n[l++]=k.eb;n[l++]=k.$e;n[l++]=k.kk;n[l]=k.Le;f[h]=n}c[d]=f;d=b++;for(e=0;e<this.A.length;e++)f=this.A[e],f.za&&Bp(this,f.Le,f.za);c[d]=
|
||||
m.save=function(){var a=new hf(this),b=0,c=[];c[b++]=this.hb;c[b++]=0;c[b++]=this.ma;c[b++]=this.W;c[b++]=this.L;c[b++]=this.C;c[b++]=this.aa;for(var d=b++,e=0,f=[],g=0;g<this.A.length;g++){var h=e++,k=this.A[g],l=0,n=[];n[l++]=k.Cb;n[l++]=[k.name,k.Bb,k.ub,k.lb,k.Va,k.bf,k.zg,k.Nf,k.Of];n[l++]=k.kb;n[l++]=k.ge+100;n[l++]=k.Qb;n[l++]=k.xb;n[l++]=k.he;n[l++]=k.Hb;n[l++]=k.eb;n[l++]=k.$e;n[l++]=k.kk;n[l]=k.Le;f[h]=n}c[d]=f;d=b++;for(e=0;e<this.A.length;e++)f=this.A[e],f.za&&Bp(this,f.Le,f.za);c[d]=
|
||||
this.B;c[b++]=this.X;c[b]=this.kc;N(a,0,c);return a.data()};m.restore=function(a){return vp(this,a[0])};
|
||||
function vp(a,b){var c=0,d,e=!0;void 0===b&&(b=[0,0,128,Array(9),0,0,0,[]]);a.hb=b[c++];c++;a.ma=b[c++];a.W=b[c++];a.L=b[c++];a.C=b[c++];a.aa=b[c++];var f=b[c++];d=b[c++];null!=d&&(a.B=d);void 0===a.A&&(a.ka=4,a.N&&(a.ka=+Uk(a.N,vk,void 0)),a.A=Array(4));for(d=0;d<a.A.length;d++){var g=a.A[d];if(void 0===g){var g=a.A[d]={},h;if(a.N)a:{h=a.N;if(d<+Uk(h,vk,void 0)){if(!h.ja){h=360;break a}if(d<h.ja.length){h=h.ja[d];break a}}h=0}else h=0;switch(h){case 160:case 180:g.ub=1;default:g.Bb=40;g.lb=9;break;
|
||||
case 720:g.Bb=80;g.lb=9;break;case 1200:g.Bb=80;g.lb=15;break;case 1440:g.Bb=80,g.lb=18}}var k=a,l=d,n=f[d],q=0;h=!0;g.hb=l;g.bd=g.$e=!1;void 0===n&&(n=[192,!0,0,2,0]);"boolean"==typeof n[1]&&(n[1]=["Floppy Drive",g.Bb||40,g.ub||n[3],g.lb||9,g.Va||512,n[1],g.zg,g.Nf,g.Of]);g.Cb=n[q++];var p=n[q++];g.name=p[0];g.Bb=p[1];g.ub=p[2];g.lb=p[3];g.Va=p[4];g.bf=p[5];(g.zg=p[6])?(g.Nf=p[7],g.Of=p[8]):(g.zg=g.Bb,g.Nf=g.ub,g.Of=g.lb);g.kb=n[q++];g.ge=n[q++];g.Rb=n[q++];g.ge=100<=g.ge?g.ge-100:g.ge-g.Rb;g.xb=
|
||||
n[q++];g.he=n[q++];g.Hb=n[q++];g.eb=n[q++];g.pb=null;g.za||(g.Le="");p=n[q++];102==p&&(p=!1);if("boolean"==typeof p){var z=p,p=n[q++],n=n[q];z?(q=p,p=k.A[l],Ap(k,l,!0,!0),p.$e=!0,l=new Ho(k,p,"preload"),k.Hi(p,l,q,n,!0)):Cp(k,l,p,n,!0)?g.za&&n&&Dp(k,p,n,g.za):rb(k,!1)}else void 0!==p&&g.za&&0>g.za.restore(p)&&(h=!1);h&&g.za&&void 0!==g.eb&&(g.pb=g.za.seek(g.Rb,g.kb,g.xb));h||(e=!1)}a.X=b[c++]||0;a.kc=b[c]||0;return e}m.Gi=function(a){var b;a=this.A[a];if(void 0!==a){b={};for(var c in a)b[c]=a[c]}return b};
|
||||
m.lk=function(a,b,c){if(a.za){var d=a.za.info(),e=d[2],f=d[1]*e;if(b+c<=d[0]*f)return a.Rb=Math.floor(b/f),b%=f,a.kb=Math.floor(b/e),a.xb=b%e+1,a.Hb=c*d[3],a.Cb=0,!0}return!1};
|
||||
case 720:g.Bb=80;g.lb=9;break;case 1200:g.Bb=80;g.lb=15;break;case 1440:g.Bb=80,g.lb=18}}var k=a,l=d,n=f[d],q=0;h=!0;g.hb=l;g.bd=g.$e=!1;void 0===n&&(n=[192,!0,0,2,0]);"boolean"==typeof n[1]&&(n[1]=["Floppy Drive",g.Bb||40,g.ub||n[3],g.lb||9,g.Va||512,n[1],g.zg,g.Nf,g.Of]);g.Cb=n[q++];var p=n[q++];g.name=p[0];g.Bb=p[1];g.ub=p[2];g.lb=p[3];g.Va=p[4];g.bf=p[5];(g.zg=p[6])?(g.Nf=p[7],g.Of=p[8]):(g.zg=g.Bb,g.Nf=g.ub,g.Of=g.lb);g.kb=n[q++];g.ge=n[q++];g.Qb=n[q++];g.ge=100<=g.ge?g.ge-100:g.ge-g.Qb;g.xb=
|
||||
n[q++];g.he=n[q++];g.Hb=n[q++];g.eb=n[q++];g.pb=null;g.za||(g.Le="");p=n[q++];102==p&&(p=!1);if("boolean"==typeof p){var z=p,p=n[q++],n=n[q];z?(q=p,p=k.A[l],Ap(k,l,!0,!0),p.$e=!0,l=new Ho(k,p,"preload"),k.Hi(p,l,q,n,!0)):Cp(k,l,p,n,!0)?g.za&&n&&Dp(k,p,n,g.za):rb(k,!1)}else void 0!==p&&g.za&&0>g.za.restore(p)&&(h=!1);h&&g.za&&void 0!==g.eb&&(g.pb=g.za.seek(g.Qb,g.kb,g.xb));h||(e=!1)}a.X=b[c++]||0;a.kc=b[c]||0;return e}m.Gi=function(a){var b;a=this.A[a];if(void 0!==a){b={};for(var c in a)b[c]=a[c]}return b};
|
||||
m.lk=function(a,b,c){if(a.za){var d=a.za.info(),e=d[2],f=d[1]*e;if(b+c<=d[0]*f)return a.Qb=Math.floor(b/f),b%=f,a.kb=Math.floor(b/e),a.xb=b%e+1,a.Hb=c*d[3],a.Cb=0,!0}return!1};
|
||||
function zp(a,b){b||(a.fa=0);if(a.U)for(var c in a.U){var d=a.U[c],e=d.path,f;if(!(f=d.name))a:{if((f=a.qa.listDisks)&&f.options)for(var g=0;g<f.options.length;g++){var h=f.options[g];if(h.value==e){f=h.text;break a}}f=fa(e,!0)}if(e&&f&&(g=c.charCodeAt(0)-65,0<=g&&g<a.A.length)){!Cp(a,g,f,e,!0)&&b&&rb(a,!1);continue}a.Na("Incorrect auto-mount settings for drive "+c+" ("+JSON.stringify(d)+")")}return!!a.fa}
|
||||
function up(a,b,c,d){var e,f=a.qa.listDrives;if(f&&!isNaN(e=ca(f.value,10))&&0<=e&&e<a.A.length)if(c)if("?"==c)a.Na('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=fa(c)}for(;0>Cp(a,e,b,c,!1,d)&&window.confirm("Click OK to reload the original disk.\n(WARNING: All disk changes will be discarded)");){for(var f=a,g=c,h=void 0,h=0;h<f.B.length;h++)if(f.B[h][1]==g){f.B.splice(h,1);break}Ap(a,
|
||||
e,!1,!0)}}else Ap(a,e);else a.Na("Unable to load the selected drive")}function Cp(a,b,c,d,e,f){var g=a.A[b];if(d&&g.Le!=d){Ap(a,b,e,!0);if(g.bd)return a.Na("Drive "+b+" busy"),0;g.bd=!0;e&&(g.Ae=!0,a.fa++,A(a)&&y(a,"loading diskette '"+c+"'"));g.$e=!!f;return(new Ho(a,g,"preload")).load(c,d,f,a.Hi)?1:0}return-1}
|
||||
|
|
@ -613,18 +613,18 @@ function yp(a,b,c,d){if((a=a.qa.listDisks)&&a.options){for(var e=0;e<a.options.l
|
|||
function tp(a,b){if(0<=b&&b<a.A.length){var c=a.A[b],d=a.qa.listDisks,e=a.qa.listDrives;if(d&&e&&d.options&&e.options&&(e=ca(e.value,10),c=c.$e?"?":c.Le,!isNaN(e)&&e==b)){for(e=0;e<d.options.length;e++)if(d.options[e].value==c){d.selectedIndex!=e&&(d.selectedIndex=e);break}e==d.options.length&&(d.selectedIndex=0)}}}function Ap(a,b,c,d){var e=a.A[b];e.za&&(Bp(a,e.Le,e.za),e.kk="",e.Le="",e.za=null,e.$e=!1,a.X|=128,d||a.Na("Drive "+String.fromCharCode(65+b)+" unloaded",c),c||d||tp(a,b))}
|
||||
function Dp(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 Bp(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}}m.Qm=function(a,b,c){x(this,a,b,c,"OUTPUT");b&4?this.aa&4||this.aa&8&&this.N&&eg(this.N,6):vp(this);this.aa=b};m.vl=function(a,b){x(this,a,null,b,"DIAG",80);return 80};m.xl=function(a,b){x(this,a,null,b,"STATUS",this.ma);return this.ma};
|
||||
m.ul=function(a,b){var c=0;this.L<this.C&&(c=this.W[this.L]);this.aa&8&&this.N&&dg(this.N,6);A(this)&&x(this,a,null,b,"DATA["+this.L+"]",c);++this.L>=this.C&&(this.ma&=-81,this.L=this.C=0);return c};
|
||||
m.Pm=function(a,b,c){A(this)&&x(this,a,b,c,"DATA["+this.C+"]");this.C<this.W.length&&(this.W[this.C++]=b);a=this.W[0]&31;if(void 0!==sp[a]&&this.C>=sp[a].Vd){b=!1;this.L=0;a=Ep(this);var d,e,f,g,h=a&31;switch(h){case 3:Ep(this);Ep(this);Fp(this);break;case 4:c=Ep(this);this.hb=c&3;d=this.A[this.hb];Fp(this);Gp(this,(d.Cb&-16777216)>>>24);break;case 5:case 6:c=Ep(this);b=c>>2&1;this.hb=c&3;d=this.A[this.hb];d.kb=b;c=d.Rb=Ep(this);e=Ep(this);f=d.xb=Ep(this);g=Ep(this);d.Hb=128<<g;d.he=Ep(this);Ep(this);
|
||||
Ep(this);6==h?(h=d,h.Cb=72,h.za&&(h.pb=null,h.Cb=0,this.N&&(xl(this.N,2,this,"dmaRead",h),pl(this.N,2)))):(h=d,h.Cb=72,h.za&&(h.za.ef?h.Cb=576:(h.pb=null,h.Cb=0,this.N&&(xl(this.N,2,this,"dmaWrite",h),pl(this.N,2)))));Hp(this,d,a,b,c,e,f,g);b=!0;break;case 7:c=Ep(this);this.hb=c&3;d=this.A[this.hb];d.Rb=d.ge=0;d.Cb=268435488;Fp(this);b=!0;break;case 8:d=this.A[this.hb];d.kb=0;Fp(this);Gp(this,d.hb|d.kb<<2|d.Cb&255);Gp(this,d.Rb);this.hb=this.hb+1&3;break;case 10:c=Ep(this);b=c>>2&1;this.hb=c&3;d=
|
||||
this.A[this.hb];c=d.Rb;e=d.kb=b;f=d.xb=1;g=0;d.Cb=0;d.za&&(d.pb=d.za.seek(d.Rb,d.kb,d.xb))?g=d.pb.length>>8:d.Cb=72;Hp(this,d,a,b,c,e,f,g);b=!0;break;case 13:c=Ep(this);b=c>>2&1;this.hb=c&3;d=this.A[this.hb];c=d.Rb;e=d.kb=b;f=1;g=Ep(this);d.Hb=128<<g;d.he=Ep(this);Ep(this);d.xi=Ep(this);h=d;h.Cb=72;h.za&&(h.pb=null,h.Cb=0,this.N&&(h.Ve=0,h.md=Array(4),h.Yg=!0,h.ng=0,xl(this.N,2,this,"dmaFormat",h),pl(this.N,2),h.Yg=!1));Hp(this,d,a,b,c,e,f,g);b=!0;break;case 15:c=Ep(this),this.hb=c&3,d=this.A[this.hb],
|
||||
d.kb=c>>2&1,c=Ep(this),d.Rb+=c-d.ge,0>d.Rb&&(d.Rb=0),d.Rb>=d.Bb&&(d.Rb=d.Bb-1),d.ge=c,d.Cb=32,d.Rb||(d.Cb|=268435456),Fp(this),b=!0}0<this.C&&(this.ma|=80);this.aa&8&&(!d||d.Cb&8||!b||this.N&&eg(this.N,6))}};m.wl=function(a,b){var c=this.X;this.X&=-129;x(this,a,null,b,"INPUT",c);return c};m.Om=function(a,b,c){x(this,a,b,c,"CONTROL");this.kc=b};
|
||||
function Hp(a,b,c,d,e,f,g,h){Fp(a);Gp(a,b.hb|b.kb<<2|b.Cb&255);Gp(a,(b.Cb&65280)>>>8);Gp(a,(b.Cb&16711680)>>>16);var k=0;if(e!=b.Rb||f!=b.kb)k=g=1;c&128&&(f^=k,d||(k=0));Gp(a,e+k);Gp(a,f);Gp(a,g);Gp(a,h)}function Ep(a){var b=a.W[a.L];a.L++;return b}function Fp(a){a.L=a.C=0}function Gp(a,b){a.W[a.C++]=b}
|
||||
m.wk=function(a,b,c){if(void 0===b||0>b){b=-1;var d=null,e=0;if(!a.Cb&&a.za){do{if(a.pb&&(e=a.eb,0<=(b=a.za.read(a.pb,a.eb++)))){d=a.pb;break}a.pb=a.za.seek(a.Rb,a.kb,a.xb);if(!a.pb){a.Cb=1088;break}a.eb=0;Ip(a)}while(1)}c(b,!1,d,e)}else c(-1,!1)};m.xk=function(a,b){return void 0!==b&&0<=b?Jp(a,b):-1};
|
||||
m.Lk=function(a,b){var c;if(void 0!==b&&0<=b)a:if(c=b,a.Cb)c=-1;else{a.md[a.Ve++]=c;if(a.Ve==a.md.length){a.Rb=a.md[0];a.kb=a.md[1];a.xb=a.md[2];a.Hb=128<<a.md[3];for(var d=a.Ve=0;d<a.Hb;d++)if(0>Jp(a,a.xi)){c=-1;break a}a.ng++}a.ng>=a.he&&(c=-1)}else c=-1;return c};function Jp(a,b){if(a.Cb||!a.za)return-1;do{if(a.pb&&a.za.write(a.pb,a.eb++,b))break;a.pb=a.za.seek(a.Rb,a.kb,a.xb);if(!a.pb){a.Cb=8256;b=-1;break}a.eb=0;Ip(a)}while(1);return b}
|
||||
function Ip(a){a.xb++;a.xb>=a.Of+1&&(a.xb=1,a.kb++,a.kb>=a.Nf&&(a.kb=0,a.Rb++))}var wp={1009:rp.prototype.vl,1012:rp.prototype.xl,1013:rp.prototype.ul,1015:rp.prototype.wl},xp={1010:rp.prototype.Qm,1013:rp.prototype.Pm,1015:rp.prototype.Om};Qa(function(){for(var a=nb(document,"pcjs","fdc"),b=0;b<a.length;b++){var c=a[b],d=jb(c),d=new rp(d);mb(d,c)}});
|
||||
m.Pm=function(a,b,c){A(this)&&x(this,a,b,c,"DATA["+this.C+"]");this.C<this.W.length&&(this.W[this.C++]=b);a=this.W[0]&31;if(void 0!==sp[a]&&this.C>=sp[a].Vd){b=!1;this.L=0;a=Ep(this);var d,e,f,g,h=a&31;switch(h){case 3:Ep(this);Ep(this);Fp(this);break;case 4:c=Ep(this);this.hb=c&3;d=this.A[this.hb];Fp(this);Gp(this,(d.Cb&-16777216)>>>24);break;case 5:case 6:c=Ep(this);b=c>>2&1;this.hb=c&3;d=this.A[this.hb];d.kb=b;c=d.Qb=Ep(this);e=Ep(this);f=d.xb=Ep(this);g=Ep(this);d.Hb=128<<g;d.he=Ep(this);Ep(this);
|
||||
Ep(this);6==h?(h=d,h.Cb=72,h.za&&(h.pb=null,h.Cb=0,this.N&&(xl(this.N,2,this,"dmaRead",h),pl(this.N,2)))):(h=d,h.Cb=72,h.za&&(h.za.ef?h.Cb=576:(h.pb=null,h.Cb=0,this.N&&(xl(this.N,2,this,"dmaWrite",h),pl(this.N,2)))));Hp(this,d,a,b,c,e,f,g);b=!0;break;case 7:c=Ep(this);this.hb=c&3;d=this.A[this.hb];d.Qb=d.ge=0;d.Cb=268435488;Fp(this);b=!0;break;case 8:d=this.A[this.hb];d.kb=0;Fp(this);Gp(this,d.hb|d.kb<<2|d.Cb&255);Gp(this,d.Qb);this.hb=this.hb+1&3;break;case 10:c=Ep(this);b=c>>2&1;this.hb=c&3;d=
|
||||
this.A[this.hb];c=d.Qb;e=d.kb=b;f=d.xb=1;g=0;d.Cb=0;d.za&&(d.pb=d.za.seek(d.Qb,d.kb,d.xb))?g=d.pb.length>>8:d.Cb=72;Hp(this,d,a,b,c,e,f,g);b=!0;break;case 13:c=Ep(this);b=c>>2&1;this.hb=c&3;d=this.A[this.hb];c=d.Qb;e=d.kb=b;f=1;g=Ep(this);d.Hb=128<<g;d.he=Ep(this);Ep(this);d.xi=Ep(this);h=d;h.Cb=72;h.za&&(h.pb=null,h.Cb=0,this.N&&(h.Ve=0,h.md=Array(4),h.Yg=!0,h.ng=0,xl(this.N,2,this,"dmaFormat",h),pl(this.N,2),h.Yg=!1));Hp(this,d,a,b,c,e,f,g);b=!0;break;case 15:c=Ep(this),this.hb=c&3,d=this.A[this.hb],
|
||||
d.kb=c>>2&1,c=Ep(this),d.Qb+=c-d.ge,0>d.Qb&&(d.Qb=0),d.Qb>=d.Bb&&(d.Qb=d.Bb-1),d.ge=c,d.Cb=32,d.Qb||(d.Cb|=268435456),Fp(this),b=!0}0<this.C&&(this.ma|=80);this.aa&8&&(!d||d.Cb&8||!b||this.N&&eg(this.N,6))}};m.wl=function(a,b){var c=this.X;this.X&=-129;x(this,a,null,b,"INPUT",c);return c};m.Om=function(a,b,c){x(this,a,b,c,"CONTROL");this.kc=b};
|
||||
function Hp(a,b,c,d,e,f,g,h){Fp(a);Gp(a,b.hb|b.kb<<2|b.Cb&255);Gp(a,(b.Cb&65280)>>>8);Gp(a,(b.Cb&16711680)>>>16);var k=0;if(e!=b.Qb||f!=b.kb)k=g=1;c&128&&(f^=k,d||(k=0));Gp(a,e+k);Gp(a,f);Gp(a,g);Gp(a,h)}function Ep(a){var b=a.W[a.L];a.L++;return b}function Fp(a){a.L=a.C=0}function Gp(a,b){a.W[a.C++]=b}
|
||||
m.wk=function(a,b,c){if(void 0===b||0>b){b=-1;var d=null,e=0;if(!a.Cb&&a.za){do{if(a.pb&&(e=a.eb,0<=(b=a.za.read(a.pb,a.eb++)))){d=a.pb;break}a.pb=a.za.seek(a.Qb,a.kb,a.xb);if(!a.pb){a.Cb=1088;break}a.eb=0;Ip(a)}while(1)}c(b,!1,d,e)}else c(-1,!1)};m.xk=function(a,b){return void 0!==b&&0<=b?Jp(a,b):-1};
|
||||
m.Lk=function(a,b){var c;if(void 0!==b&&0<=b)a:if(c=b,a.Cb)c=-1;else{a.md[a.Ve++]=c;if(a.Ve==a.md.length){a.Qb=a.md[0];a.kb=a.md[1];a.xb=a.md[2];a.Hb=128<<a.md[3];for(var d=a.Ve=0;d<a.Hb;d++)if(0>Jp(a,a.xi)){c=-1;break a}a.ng++}a.ng>=a.he&&(c=-1)}else c=-1;return c};function Jp(a,b){if(a.Cb||!a.za)return-1;do{if(a.pb&&a.za.write(a.pb,a.eb++,b))break;a.pb=a.za.seek(a.Qb,a.kb,a.xb);if(!a.pb){a.Cb=8256;b=-1;break}a.eb=0;Ip(a)}while(1);return b}
|
||||
function Ip(a){a.xb++;a.xb>=a.Of+1&&(a.xb=1,a.kb++,a.kb>=a.Nf&&(a.kb=0,a.Qb++))}var wp={1009:rp.prototype.vl,1012:rp.prototype.xl,1013:rp.prototype.ul,1015:rp.prototype.wl},xp={1010:rp.prototype.Qm,1013:rp.prototype.Pm,1015:rp.prototype.Om};Qa(function(){for(var a=nb(document,"pcjs","fdc"),b=0;b<a.length;b++){var c=a[b],d=jb(c),d=new rp(d);mb(d,c)}});
|
||||
function Kp(a){Ua.call(this,"HDC",a,Kp,1048576);this.dmaRead=this.yk;this.dmaWrite=this.zk;this.dmaWriteBuffer=this.Mk;this.dmaWriteFormat=this.Nk;this.ua=[];this.Fa=a.drives;this.ja="at"==a.type}db(Kp);
|
||||
var Lp=["XTC","ATC","COMPAQ"],Mp=[{0:[306,2],1:[375,8],2:[306,6],3:[306,4]},{1:[306,4],2:[615,4],3:[615,6],4:[940,8],5:[940,6],6:[615,4],7:[462,8],8:[733,5],9:[900,15],10:[820,3],11:[855,5],12:[855,7],13:[306,8],14:[733,7],16:[612,4],17:[977,5],18:[977,7],19:[1024,7],20:[733,5],21:[733,7],22:[733,5],23:[306,4]},{1:[306,4],2:[615,4],3:[615,6],4:[1023,8],5:[940,6],6:[697,5],7:[462,8],8:[925,5],9:[900,15],10:[980,5],11:[925,7],12:[925,9],13:[612,8],14:[980,4],16:[612,4],17:[980,5],18:[966,6],19:[1023,
|
||||
8],20:[733,5],21:[733,7],22:[524,4,40],23:[924,8],24:[966,14],25:[966,16],26:[1023,14],27:[832,6,33],28:[1222,15,34],29:[1240,7,34],30:[615,4,25],31:[615,8,25],32:[905,9,25],33:[832,8,33],34:[966,7,34],35:[966,8,34],36:[966,9,34],37:[966,5,34],38:[612,16,63],39:[1023,11,33],40:[1023,15,34],41:[1630,15,52],42:[1023,16,63],43:[805,4,26],44:[805,2,26],45:[748,8,33],46:[748,6,33],47:[966,5,25]}];m=Kp.prototype;
|
||||
m.Qb=function(a,b,c){var d=this;switch(b){case "saveHD0":case "saveHD1":return this.qa[b]=c,c.onclick=function(a){return function(){var b=d.A&&d.A[a];b&&b.za?(b=b.za,b=Ia(pp(b),"octet-stream",!0,b.Ng.replace(".json",".img")),w(b)):d.Na("Hard disk "+a+" is not available.")}}(+b.slice(-1)),!0}return!1};
|
||||
m.Pb=function(a,b,c){var d=this;switch(b){case "saveHD0":case "saveHD1":return this.qa[b]=c,c.onclick=function(a){return function(){var b=d.A&&d.A[a];b&&b.za?(b=b.za,b=Ia(pp(b),"octet-stream",!0,b.Ng.replace(".json",".img")),w(b)):d.Na("Hard disk "+a+" is not available.")}}(+b.slice(-1)),!0}return!1};
|
||||
m.Ic=function(a,b,c,d){this.ea=b;this.F=c;this.ha=d;this.V=a;if(d=Nc(a,"drives"))this.ua=d;else if(this.Fa)try{this.ua=eval("("+this.Fa+")")}catch(e){w("HDC drive configuration error: "+e.message+" ("+this.Fa+")")}this.N=Eb(a,"ChipSet");this.U=0;this.Ia=3;hc(b,this,this.ja?Np:Op);lc(b,this,this.ja?Pp:Qp);this.ja&&(this.U++,this.N&&5180==this.N.ia&&this.U++,this.Ia=2,b.aa[496]=2,b.fa[496]=2);cf(c,19,this.Zl.bind(this));cf(c,64,this.$l.bind(this));this.reset();Rp(this)||rb(this)};
|
||||
m.ic=function(a,b){if(!b)if(!a||!this.restore)Sp(this),this.V.dh&&Rp(this,!0);else if(!this.restore(a))return!1;return!0};m.hc=function(a){return a?this.save():!0};m.ff=function(){return this.V?this.V.ff():""};m.ke=function(){return this.V?this.V.ke():""};m.reset=function(){Sp(this,null,!0)};
|
||||
m.save=function(){var a=new hf(this),b=0,c=[];this.ja?(c[b++]=this.X,c[b++]=this.Pa,c[b++]=this.aa,c[b++]=this.Ca,c[b++]=this.ya,c[b++]=this.wa,c[b++]=this.ra,c[b++]=this.ma,c[b++]=this.Ea,c[b++]=[this.ga,this.hb]):(c[b++]=this.pa,c[b++]=this.ma,c[b++]=this.W,c[b++]=this.L,c[b++]=this.C,c[b++]=this.Oa,c[b++]=this.Ka,c[b++]=this.Ja,c[b++]=this.ka);for(var d=0,e=[],f=0;f<this.A.length;f++){var g=d++,h=this.A[f],k=0,l=[];l[k++]=h.errorCode;l[k++]=h.mk;l[k++]=h.bf;l[k++]=h.Qe;l[k++]=h.Re;l[k++]=h.kb;
|
||||
|
|
@ -687,25 +687,25 @@ m.cm=function(a){var b=this.F,c=b.G&65535,d=b.H&65535,e=b.I&65535,f=b.M&65535,g=
|
|||
break;case 127:this.C&&(b.G=b.G&-65536|(this.cb?0:1));break;case 131:this.C&&(a=iq(this,b.M,e),this.rb++?(this.O("TRAPFAULT failed"),Rq(this,this.A,a,!0,!0),this.rb=0,this.Wb()):(this.O("INT 0x41 TRAPFAULT: fault="+u(d)+" error="+("0x"+r(b.K))+" addr="+Sq(a)),this.Sd(this.A,a,!0),kq(this,!0)));break;case 141:this.C&&(b.G=b.G&-65536|1);break;case 336:Oq(this,iq(this,b.H,f),!g,!!this.C);break;case 338:Pq(this,d,iq(this,b.J,f))}this.cb=!1;return!this.C};
|
||||
m.dm=function(a){var b=this.F,c=b.G&255,d=b.G>>8&255,e=b.H&65535,f=b.I&65535,g=b.M&65535,h=b.J&65535,k=b.Xa.Z;if(null==this.ka){if(67==d){if(609437257==b.oa((b.va.Z<<4)+10)||1111835735==b.oa((b.va.Z<<4)+95))return!0;df(b,a,function(a){return function(){62342!=(b.G&65535)?(b.G=b.G&-65536|62342,y(a,"INT 0x68 handling enabled",128),a.C=a.ka=!0):(y(a,"INT 0x68 monitoring enabled",128),a.ka=!1)}}(this))}return!0}switch(d){case 67:this.ka&&(b.G=b.G&-65536|62342);break;case 68:this.ka&&(a=gd(b.va,this.Hk.bind(this)))&&
|
||||
(b.J=a[0],wd(b,a[1]));break;case 72:Qq(this,null,e);break;case 80:32==c?Mq(this,iq(this,h,k),0,f,!0,!!this.ka):128>c?Mq(this,iq(this,h,k),e+1,c&64?g:f,!(c&1),!!this.ka):Oq(this,iq(this,h,k),!(c&1),!!this.ka),this.ka&&(b.G=b.G&-256|1)}return!this.ka};m.Hk=function(){var a=this.F;5==(a.G&255)&&(a.I=a.K=0,a.G=a.G&-256|1);return!1};
|
||||
m.Qb=function(a,b,c){var d=this;switch(b){case "debugInput":return this.Ka=this.qa[b]=c,c.onkeydown=function(a){var b;if(13==a.keyCode)b=c.value,c.value="",mq(d,b,!0);else if(27==a.keyCode)c.value=b="";else if(38==a.keyCode?d.U<d.L.length-1&&(b=d.L[++d.U]):40==a.keyCode&&(0<d.U?b=d.L[--d.U]:(b="",d.U=-1)),null!=b){var g=b.length;c.value=b;c.setSelectionRange(g,g)}null!=b&&a.preventDefault&&a.preventDefault()},!0;case "debugEnter":return this.qa[b]=c,Ka(c,function(){if(d.Ka){var a=d.Ka.value;d.Ka.value=
|
||||
m.Pb=function(a,b,c){var d=this;switch(b){case "debugInput":return this.Ka=this.qa[b]=c,c.onkeydown=function(a){var b;if(13==a.keyCode)b=c.value,c.value="",mq(d,b,!0);else if(27==a.keyCode)c.value=b="";else if(38==a.keyCode?d.U<d.L.length-1&&(b=d.L[++d.U]):40==a.keyCode&&(0<d.U?b=d.L[--d.U]:(b="",d.U=-1)),null!=b){var g=b.length;c.value=b;c.setSelectionRange(g,g)}null!=b&&a.preventDefault&&a.preventDefault()},!0;case "debugEnter":return this.qa[b]=c,Ka(c,function(){if(d.Ka){var a=d.Ka.value;d.Ka.value=
|
||||
"";mq(d,a,!0);return!0}return!1}),!0;case "step":return this.qa[b]=c,Ka(c,function(a){var b=!1;qb(d,!0)||(pb(d,!0),b=d.vf(a?1:0),pb(d,!1));return b}),!0}return!1};m.yd=function(){this.Ka&&this.Ka.focus()};function Tq(a){return a.F&&!!(a.F.Za&1)&&!(a.F.ca&131072)}
|
||||
function Fq(a,b,c){var d=Tq(a)?2:1;c||(c=d);if(c==d){if(b===a.F.va.Z)return a.F.va;if(b===a.F.vb.Z)return a.F.vb;if(b===a.F.Xa.Z)return a.F.Xa;if(b===a.F.ta.Z)return a.F.ta;if(80386<=a.F.ia){if(b===a.F.Ob.Z)return a.F.Ob;if(b===a.F.Pb.Z)return a.F.Pb}if(a.fb&&2==c||!a.bc)return null}a=a.bc;if(2!=c)a.lh(b),a.Ta=65535,a.Zb=65536;else{var e;c=a.F;b=b&65535;b&4?(d=c.Bc.Aa,e=d+c.Bc.Ta|0):(d=c.Ec,e=c.Ad);d=d+(b&65528)|0;if(e-d|0){e=If(c,d+0,2);var f=If(c,d+4,2),g=f&7936,h=If(c,d+2,2)|(f&255)<<16,k=If(c,
|
||||
function Fq(a,b,c){var d=Tq(a)?2:1;c||(c=d);if(c==d){if(b===a.F.va.Z)return a.F.va;if(b===a.F.vb.Z)return a.F.vb;if(b===a.F.Xa.Z)return a.F.Xa;if(b===a.F.ta.Z)return a.F.ta;if(80386<=a.F.ia){if(b===a.F.Nb.Z)return a.F.Nb;if(b===a.F.Ob.Z)return a.F.Ob}if(a.fb&&2==c||!a.bc)return null}a=a.bc;if(2!=c)a.lh(b),a.Ta=65535,a.Zb=65536;else{var e;c=a.F;b=b&65535;b&4?(d=c.Bc.Aa,e=d+c.Bc.Ta|0):(d=c.Ec,e=c.Ad);d=d+(b&65528)|0;if(e-d|0){e=If(c,d+0,2);var f=If(c,d+4,2),g=f&7936,h=If(c,d+2,2)|(f&255)<<16,k=If(c,
|
||||
d+6,2);80386<=c.ia&&(h|=(k&65280)<<16,e|=(k&15)<<16,k&128&&(e=e<<12|4095));a.Z=b;a.Aa=h;a.Ta=e;a.Zb=(e>>>0)+1;a.wb=f;a.type=g;a.ext=k;a.Xb=d;fd(a,!0,!0,!1)}}return a}m.dc=function(a,b,c){var d=a&&a.Da;if(null==d&&(d=-1,a)){var e=Fq(this,a.Z,a.type);e&&(b=a.Ra||0,c=c||1,d=e=-1===e.Xb||e.cd&&(b>>>0)+c>e.Zb||!e.cd&&(b>>>0)+c<=e.Zb?e.Aa+b|0:-1,a.Da=d)}return d};m.Qa=function(a,b){var c=255,d=this.dc(a,!1,1);-1!==d&&(c=If(this.F,d,1,5==a.type)|0,b&&Uq(this,a,b));return c};
|
||||
m.tb=function(a,b){return a.Sb?this.oa(a,b?4:0):this.na(a,b?2:0)};m.na=function(a,b){var c=65535,d=this.dc(a,!1,2);-1!==d&&(c=If(this.F,d,2,5==a.type),b&&Uq(this,a,b));return c};m.oa=function(a,b){var c=-1,d=this.dc(a,!1,4);-1!==d&&(c=If(this.F,d,4,5==a.type),b&&Uq(this,a,b));return c};m.qc=function(a,b,c){var d=this.dc(a,!0,1);if(-1!==d){if(5!=a.type)this.F.qc(d,b);else{var e=this.ea;e.sa[(d&e.Gb)>>>e.La].wf(d&e.A,b&255,d)}c&&Uq(this,a,c);Qc(this.F,!0)}};
|
||||
m.jb=function(a,b,c){var d=this.dc(a,!0,2);-1!==d&&(5!=a.type?this.F.jb(d,b):fc(this.ea,d,b),c&&Uq(this,a,c),Qc(this.F,!0))};function iq(a,b,c,d,e,f,g){return Vq(a,{},b,c,d,e,f,g)}function Vq(a,b,c,d,e,f,g,h){b.Ra=c||0;b.Z=d;b.Da=e;b.type=f||(Tq(a)?2:1);b.Sb=null!=g?g:a.F&&4==a.F.va.ba;b.pc=null!=h?h:a.F&&4==a.F.va.Oc;b.Xd=!1;return b}function Wq(a){return[a.Ra,a.Z,a.Da,a.Xd,a.Sb,a.pc,a.Se,a.Wd]}function Xq(a){return{Ra:a[0],Z:a[1],Da:a[2],Xd:a[3],Sb:a[4],pc:a[5],Se:a[6],Wd:a[7]}}
|
||||
function Yq(a,b,c){if(null!=b.Z&&(a=Fq(a,b.Z,b.type))){var d=b.Ra&a.Ba;if(!a.cd){if(d>>>0>=a.Zb)return!1}else if(d>>>0<a.Zb)return!1;c&&(b.Ra=d,b.Sb=4==a.ba,b.pc=4==a.Oc)}return!0}
|
||||
m.tb=function(a,b){return a.Rb?this.oa(a,b?4:0):this.na(a,b?2:0)};m.na=function(a,b){var c=65535,d=this.dc(a,!1,2);-1!==d&&(c=If(this.F,d,2,5==a.type),b&&Uq(this,a,b));return c};m.oa=function(a,b){var c=-1,d=this.dc(a,!1,4);-1!==d&&(c=If(this.F,d,4,5==a.type),b&&Uq(this,a,b));return c};m.qc=function(a,b,c){var d=this.dc(a,!0,1);if(-1!==d){if(5!=a.type)this.F.qc(d,b);else{var e=this.ea;e.sa[(d&e.Gb)>>>e.La].wf(d&e.A,b&255,d)}c&&Uq(this,a,c);Qc(this.F,!0)}};
|
||||
m.jb=function(a,b,c){var d=this.dc(a,!0,2);-1!==d&&(5!=a.type?this.F.jb(d,b):fc(this.ea,d,b),c&&Uq(this,a,c),Qc(this.F,!0))};function iq(a,b,c,d,e,f,g){return Vq(a,{},b,c,d,e,f,g)}function Vq(a,b,c,d,e,f,g,h){b.Ra=c||0;b.Z=d;b.Da=e;b.type=f||(Tq(a)?2:1);b.Rb=null!=g?g:a.F&&4==a.F.va.ba;b.pc=null!=h?h:a.F&&4==a.F.va.Oc;b.Xd=!1;return b}function Wq(a){return[a.Ra,a.Z,a.Da,a.Xd,a.Rb,a.pc,a.Se,a.Wd]}function Xq(a){return{Ra:a[0],Z:a[1],Da:a[2],Xd:a[3],Rb:a[4],pc:a[5],Se:a[6],Wd:a[7]}}
|
||||
function Yq(a,b,c){if(null!=b.Z&&(a=Fq(a,b.Z,b.type))){var d=b.Ra&a.Ba;if(!a.cd){if(d>>>0>=a.Zb)return!1}else if(d>>>0<a.Zb)return!1;c&&(b.Ra=d,b.Rb=4==a.ba,b.pc=4==a.Oc)}return!0}
|
||||
function Zq(a,b,c,d){var e,f=c?a.aa:a.Db;c=d?0:f.type;var g=f.Ra,h=f.Z,f=f.Da;if(void 0!==b){b=$q(a,b);e=b.charAt(0);f=b.indexOf(":");switch(e){case "&":c=1;break;case "#":c=2;break;case "%":c=4;e=b.charAt(1);"%"==e&&(c=5,e+=e);g=0;h=null;break;default:0<=f&&(c=0),e=""}e&&(b=b.substr(e.length),f-=e.length);e=b;var k;if(e.match(/^[a-z_][a-z0-9_]*$/i))for(var l=e.toUpperCase(),n=0;n<a.B.length;n++){e=a.B[n];var q=e.Rd[l];if(void 0!==q){l=q.o;void 0!==l&&(k=q.s,void 0===k&&(k=e.Z),k=iq(a,l,k,q.p));break}}if(e=
|
||||
k)return e;0>f?null!=h?(g=ar(a,b,void 0),f=null):(f=ar(a,b,void 0),null==f&&(g=null)):(h=ar(a,b.substring(0,f),void 0),g=ar(a,b.substring(f+1),void 0),f=null)}null!=g&&(e=iq(a,g,h,f,c),d||Yq(a,e,!0)||(a.O("invalid offset: "+Sq(e)),e=null));return e}function br(a,b,c){c&&(c=c.match(/(['"])(.*?)\1/))&&(b.Dk=cr(a,b.jk=c[2]))}function Uq(a,b,c){c=c||1;null!=b.Da&&(b.Da+=c);null!=b.Z&&(b.Ra+=c,Yq(a,b)||(b.Ra=0,b.Da=null))}function Iq(a,b,c){return null!=b?r(b,4)+":"+r(a,a&-65536||c?8:4):r(a)}
|
||||
function Sq(a){var b;switch(a.type){case 1:case 3:b="&";break;case 2:b="#";break;case 4:b="%";break;case 5:b="%%";break;default:b=a.Z?"":"%"}return 4<=a.type||null==a.Z?b+r(a.Da):b+Iq(a.Ra,a.Z,a.pc)}function Jq(a,b,c){var d="";for(c=c||256;d.length<c;){var e=a.Qa(b,1);if(!e||36==e||127<=e)break;d+=32<=e?String.fromCharCode(e):"."}return d}
|
||||
function Dq(a,b,c,d){var e=0,f=0,g=b.length;if(c){e=a.dc(Zq(a,c));if(-1===e){a.O("invalid address: "+c);return}f=e>>>a.F.La;g=1}a.O("blockid "+(d?"linear ":"physical")+" blockaddr used size type");a.O("-------- --------- ---------- ------ ------ ----");c=-1;for(var h=0;g--;)(d=b[f])&&5==d.type&&(d=Fc(a.F,e,!1,!0)),d.type==c?h++||a.O("..."):(c=d.type,h=sc[c],6==c&&(d=d.Cd,h+=" -> "+sc[d.type]),d&&a.O(r(d.id)+" %"+r(f<<a.F.La)+" %%"+r(d.Da)+" "+u(d.Ne)+" "+u(d.size)+" "+h),c!=
|
||||
rc&&5!=c&&(c=-1),h=0),e+=a.F.Nb,f++}function dr(a,b,c){a=r(a)+" "+r(b)+" ";a=a+(c&&b&64?"D":"-")+(b&32?"A":"-");a+=b&4?"U":"S";a+=b&2?"W":"R";return a+=b&1?"P":"N"}
|
||||
rc&&5!=c&&(c=-1),h=0),e+=a.F.Sb,f++}function dr(a,b,c){a=r(a)+" "+r(b)+" ";a=a+(c&&b&64?"D":"-")+(b&32?"A":"-");a+=b&4?"U":"S";a+=b&2?"W":"R";return a+=b&1?"P":"N"}
|
||||
var Gq={256:["tss286",!1],512:["ldt",!1],768:["busy tss286",!1],1024:["call gate",!0],1280:["task gate",!0],1536:["int gate286",!0],1792:["trap gate286",!0],2304:["tss386",!1],2816:["busy tss386",!1],3072:["call gate386",!0],3584:["int gate386",!0],3840:["trap gate386",!0]},Kq={PREV_TSS:0,CPL0_SP:2,CPL0_SS:4,CPL1_SP:6,CPL1_SS:8,CPL2_SP:10,CPL2_SS:12,TASK_IP:14,TASK_PS:16,TASK_AX:18,TASK_CX:20,TASK_DX:22,TASK_BX:24,TASK_SP:26,TASK_BP:28,TASK_SI:30,TASK_DI:32,TASK_ES:34,TASK_CS:36,TASK_SS:38,TASK_DS:40,
|
||||
TASK_LDT:42},Lq={PREV_TSS:0,CPL0_ESP:4,CPL0_SS:8,CPL1_ESP:12,CPL1_SS:16,CPL2_ESP:20,CPL2_SS:24,TASK_CR3:28,TASK_EIP:32,TASK_PS:36,TASK_EAX:40,TASK_ECX:44,TASK_EDX:48,TASK_EBX:52,TASK_ESP:56,TASK_EBP:60,TASK_ESI:64,TASK_EDI:68,TASK_ES:72,TASK_CS:76,TASK_SS:80,TASK_DS:84,TASK_FS:88,TASK_GS:92,TASK_LDT:96,TASK_IOPM:100};
|
||||
function Nq(a,b,c){var d=[],e;for(e=null;e=Eb(a.V,"Disk",e);){var f=e,g=b,h=c,d=[];if(f.C)for(var k=0;k<f.C.length;k++){var l=f.C[k];if(l.fg==g&&(l=l.zd[h])){for(var n in l.we)f=l.we[n],d[f[1]]=f[0];break}}if(d.length)break}return d}function lq(a,b){a.ha=a;a.wc=a.Gk=1073741824;a.Pa=null;var c=cr(a,b.replace("keys","key").replace("kbd","keyboard"),!1,"|");if(c.length)for(var d in wq)0<=ua(c,d)&&(a.wc|=wq[d],a.O(d+" messages enabled"));kq(a)}
|
||||
function Mk(a,b,c){for(var d in wq)if(b==wq[d]){a.$a[d]=c;break}}function er(a,b){var c;a=a.toUpperCase();null==b?c=ua(uq,a):(c=ua(uq,a.substr(b,3)),0>c&&(c=ua(uq,a.substr(b,2))));return c}
|
||||
function fr(a,b){var c=0,d=gr(a,b);if(void 0!==d)switch(b){case 0:case 1:case 2:case 3:case 4:case 5:case 6:case 7:c=2;break;case 8:case 9:case 10:case 11:case 12:case 13:case 14:case 15:case 22:case 16:case 17:case 18:case 19:case 20:case 21:c=4;break;case 24:case 25:case 26:case 27:case 28:case 29:case 30:case 31:case 32:case 33:case 34:case 35:case 56:c=8;break;case 23:c=a.Ja}return c?r(d,c):"??"}
|
||||
function gr(a,b){var c;if(0<=b){var d=a.F;switch(b){case 0:c=d.G&255;break;case 1:c=d.I&255;break;case 2:c=d.M&255;break;case 3:c=d.H&255;break;case 4:c=d.G>>8&255;break;case 5:c=d.I>>8&255;break;case 6:c=d.M>>8&255;break;case 7:c=d.H>>8&255;break;case 8:c=d.G&65535;break;case 9:c=d.I&65535;break;case 10:c=d.M&65535;break;case 11:c=d.H&65535;break;case 12:c=I(d)&65535;break;case 13:c=d.P&65535;break;case 14:c=d.K&65535;break;case 15:c=d.J&65535;break;case 22:c=K(d)&65535;break;case 23:c=xd(d);break;
|
||||
case 16:c=d.Xa.Z;break;case 17:c=d.va.Z;break;case 18:c=d.ta.Z;break;case 19:c=d.vb.Z;break;default:if(80286==a.F.ia)32==b&&(c=d.Za);else if(80386<=a.F.ia)switch(b){case 24:c=d.G;break;case 25:c=d.I;break;case 26:c=d.M;break;case 27:c=d.H;break;case 28:c=I(d);break;case 29:c=d.P;break;case 30:c=d.K;break;case 31:c=d.J;break;case 32:c=d.Za;break;case 33:c=d.ji;break;case 34:c=d.te;break;case 35:c=d.Pd;break;case 20:c=d.Ob.Z;break;case 21:c=d.Pb.Z;break;case 56:c=K(d)}}}return c}
|
||||
case 16:c=d.Xa.Z;break;case 17:c=d.va.Z;break;case 18:c=d.ta.Z;break;case 19:c=d.vb.Z;break;default:if(80286==a.F.ia)32==b&&(c=d.Za);else if(80386<=a.F.ia)switch(b){case 24:c=d.G;break;case 25:c=d.I;break;case 26:c=d.M;break;case 27:c=d.H;break;case 28:c=I(d);break;case 29:c=d.P;break;case 30:c=d.K;break;case 31:c=d.J;break;case 32:c=d.Za;break;case 33:c=d.ji;break;case 34:c=d.te;break;case 35:c=d.Pd;break;case 20:c=d.Nb.Z;break;case 21:c=d.Ob.Z;break;case 56:c=K(d)}}}return c}
|
||||
function hr(a,b){b=$q(a,b);for(var c=0,d,e;0<=(c=b.indexOf("@",c));)e=er(b,c+1),0<=e&&(b=b.substr(0,c)+fr(a,e)+b.substr(c+1+uq[e].length)),c++;for(c=0;0<=(c=b.indexOf("#",c));)e=b.substr(c+1,2),d=ca(e,16),null!=d&&32<=d&&128>d?(d=e+" '"+String.fromCharCode(d)+"'",b=b.replace("#"+e,d),c+=d.length):c++;for(c=0;0<=(c=b.indexOf("$",c));)e=b.substr(c+1,9),(d=Zq(a,e))?(d=e+' "'+Jq(a,d)+'"',b=b.replace("$"+e,d),c+=d.length):c++;for(c=0;0<=(c=b.indexOf("^",c));)e=b.substr(c+1,9),(d=Zq(a,e))?(Uq(a,d),d=e+
|
||||
' "'+Jq(a,d,11)+'"',b=b.replace("^"+e,d),c+=d.length):c++;return b}m=hq.prototype;m.message=function(a,b){b&&(a+=" at "+Sq(iq(this,K(this.F),this.F.va.Z))+" (%"+r(this.F.Ga)+")");if(!this.Pa||a!=this.Pa)if(this.Pa=a,this.wc&-2147483648&&(this.Wb(),a+=" (cpu halted)"),this.O(a),this.F){var c=this.F;c.Y.mf=0;c.fb-=c.A;c.A=0;Qc(c)}};
|
||||
function kk(a,b,c,d){var e,f;if(!d&&(d=A(a,1)&&0>oq.indexOf(b),!d)){var g=nq[b];g&&(d=A(a,g)?!0:524288==g&&A(a,g=1048576))}d&&(e=a.F.G>>8&255,f=a.F.M&255,33==b&&11==e||524288==g&&128<=f||1048576==g&&128>f)&&(d=!1);d&&((g=(g=yb[b])&&g[e]||"")&&(g=" "+hr(a,g)),a.message("INT "+t(b)+": AH="+t(e)+" at "+Iq(c-2-a.F.va.Aa,a.F.va.Z)+g));return d}
|
||||
|
|
@ -721,21 +721,21 @@ m.Sd=function(a,b,c){var d=!0;c||Rq(this,a,b,!1,!0);if(a!=this.A){var e=this.dc(
|
|||
function Rq(a,b,c,d,e){for(var f=!1,g=or(a,a.dc(c)),h=1;h<b.length;h++){var k=b[h];if(-1!==g&&g==or(a,a.dc(k))||-1===g&&c.Z==k.Z&&c.Ra==k.Ra)if(!d||k.Xd){f=!0;k.Xd||e||nr(a,b,h,"cleared");b.splice(h,1);b!=a.A&&re(a.F,g,b==a.ga,5==k.type);k.Xd||kq(a);break}}return f}function pr(a,b){for(var c=1;c<b.length;c++)nr(a,b,c);return b.length-1}function nr(a,b,c,d){c=b[c];a.O(b[0]+" "+Sq(c)+(d?" "+d:c.jk?' "'+c.jk+'"':""))}
|
||||
function lr(a,b){if(void 0!==b)mr(a,b,1,a.A,!0),a.N=0;else for(var c=1;c<a.A.length;c++){var d=a.A[c];if(d.Xd){if(!Rq(a,a.A,d,!0))break;c=0}}}function or(a,b){if(-1!==b){var c=a.Ba&-65536;(b&c)==c&&(b&=1048575)}return b}
|
||||
function mr(a,b,c,d,e){var f=!1;if(!a.fb++){b=or(a,b);A(a,-2147483632)&&204==If(a.F,b)&&(f=!0);for(var g=1;!f&&g<d.length;g++){var h=d[g];if(!e||h.Xd){null!=h.Z&&(h.Da=null);for(var k=or(a,a.dc(h)),l=0;l<c;l++)if(b+l==k){var n,f=!0;h.Xd&&(Rq(a,d,h,!0),e=!0);if(n=h.Dk){for(var f=!1,q=0;q<n.length;q++)if(!qr(a,n[q],!0)){if(n[q].indexOf("if")){f=!0;break}for(var p=q+1;p<n.length&&n[p].indexOf("else");p++)q++;if(p==n.length){f=!0;break}}a.F.la.Ib||(f=!0)}if(f){e||nr(a,d,g,"hit");break}}}}}a.fb--;return f}
|
||||
function rr(a,b,c,d){for(var e=iq(a,b.Ra,b.Z,b.Da,b.type),f=a.Qa(b,1),g=4,h=0,k=!1,l=!1;(102==f||103==f)&&g--;)102==f?k||(b.Sb=!b.Sb,k=!0):l||(b.pc=!b.pc,l=!0),h++,f=a.Qa(b,1);var g=-1,n=qq,k=a.Ia[f],l=k[0];176==l&&(l=a.Qa(b,1),k=Aq[l]||xq,f|=l<<8,l=k[0]);if(36==l){var g=a.Qa(b,1),q;q=null;var p=g>>3&7,z=(3>(g>>6&3)?0:48)+p;(217==f||219==f)&&52<=z&&(z=p<<4|g&7);(p=Bq[f])&&(q=p[z]);q&&(n=rq,k=q,l=k[0])}l>=n.length&&(g=a.Qa(b,1),k=Cq[l-n.length][g>>3&7],l=k[0]);n=n[l];p=k.length-1;q="";b.Sb&&(18==l?
|
||||
n="CWDE":28==l?n="CDQ":104<=l&&107>=l&&(n+="D"));if(164<=f&&167>=f||170<=f&&175>=f)p=0,b.Sb&&"W"==n.slice(-1)&&(n=n.slice(0,-1)+"D");for(var f=null,z=!0,F=1;F<=p;F++){var v,E;v="";E=k[F];if(void 0!==E){null==f&&(f=E>>14);80==l&&(2==f?q="[%800]":3==f&&(q="ES:["+(b.pc?"E":"")+"DI]"));var H=E&15;if(0!=H)if(8==H)z=!1;else{var L=E&240;if(128<=L)if(0>g&&(g=a.Qa(b,1)),160>L){v=a;var V=p,H=b,P="",bb=g>>6,ia=g&7;if(3>bb){var ja=void 0,L=0==n.indexOf("FI");if(!bb&&(!H.pc&&6==ia||H.pc&&5==ia))bb=2;else{if(H.pc)if(4!=
|
||||
ia)ia+=8;else{var P=v,ja=bb,Ha=H,Xa=P.Qa(Ha,1),Ba=Xa>>6,Vb=Xa>>3&7,Xa=Xa&7,wa="";if(ja||5!=Xa)wa=vq[Xa+8];4!=Vb&&(wa&&(wa+="+"),wa+=vq[Vb+8],Ba&&(wa+="*"+(1<<Ba)));ja||5!=Xa||(wa&&(wa+="+"),wa+=r(P.oa(Ha,4)));P=wa}P||(P=vq[ia])}1==bb?(ja=v.Qa(H,1),ja&128?(ja=ja<<24>>24,P+="-"+r(-ja,2)):P+="+"+r(ja,2)):2==bb&&(P&&(P+="+"),H.pc?(ja=v.oa(H,4),P+=r(ja)):(ja=v.na(H,2),P+=r(ja,4)));P="["+P+"]";if(1==V){v="";E&=15;4==E&&(E=H.Sb?5:3);switch(E){case 7:v="FAR";break;case 1:v="BYTE";break;case 3:if(L){v="INT16";
|
||||
break}v="WORD";break;case 5:v="DWORD";break;case 11:if(L){v="INT32";break}case 11:v="REAL32";break;case 12:if(L){v="INT64";break}case 12:v="REAL64";break;case 13:v="REAL80";break;case 14:v="BCD80"}v&&(P=v+" "+P)}}else P=sr(v,ia,E,H);v=P}else v=160==L?sr(a,g&7,E,b):sr(a,g>>3&7,E,b);else if(16==L)v="1";else if(0==L){v=a;H=E;L=b;E=" ";switch(H&15){case 1:H&12288&&(E=r(v.Qa(L,1),2));break;case 2:E=r(v.Qa(L,1)<<24>>24,L.Sb?8:4);break;case 4:if(L.Sb){E=r(v.oa(L,4));break}case 3:E=r(v.na(L,2),4);break;case 7:L=
|
||||
iq(v,v.tb(L,!0),v.na(L,2),null,L.type,L.Sb,L.pc);E=Sq(L);v=tr(v,L);v[0]&&(E+=" ("+v[0]+")");break;default:E="imm("+u(H)+")"}v=E}else 32==L?(b.pc?(v=8,E=a.oa(b,4)):(v=4,E=a.na(b,2)),v="["+r(E,v)+"]"):48==L?(v=1==H?a.Qa(b,1)<<24>>24:a.tb(b,!0),E=b.Ra+v&(b.Sb?-1:65535),v=r(E,b.Sb?8:4),E=tr(a,iq(a,E,b.Z)),E[0]&&(v+=" ("+E[0]+")")):96==L?v=9==H?"ST":10==H?"ST("+(g&7)+")":sr(a,(E&3840)>>8,E,b):112==L?v=sr(a,(E&3840)>>8,192,b):64==L?v="DS:[SI]":80==L&&(v="ES:[DI]");if(!v||!v.length){q="INVALID";break}0<
|
||||
function rr(a,b,c,d){for(var e=iq(a,b.Ra,b.Z,b.Da,b.type),f=a.Qa(b,1),g=4,h=0,k=!1,l=!1;(102==f||103==f)&&g--;)102==f?k||(b.Rb=!b.Rb,k=!0):l||(b.pc=!b.pc,l=!0),h++,f=a.Qa(b,1);var g=-1,n=qq,k=a.Ia[f],l=k[0];176==l&&(l=a.Qa(b,1),k=Aq[l]||xq,f|=l<<8,l=k[0]);if(36==l){var g=a.Qa(b,1),q;q=null;var p=g>>3&7,z=(3>(g>>6&3)?0:48)+p;(217==f||219==f)&&52<=z&&(z=p<<4|g&7);(p=Bq[f])&&(q=p[z]);q&&(n=rq,k=q,l=k[0])}l>=n.length&&(g=a.Qa(b,1),k=Cq[l-n.length][g>>3&7],l=k[0]);n=n[l];p=k.length-1;q="";b.Rb&&(18==l?
|
||||
n="CWDE":28==l?n="CDQ":104<=l&&107>=l&&(n+="D"));if(164<=f&&167>=f||170<=f&&175>=f)p=0,b.Rb&&"W"==n.slice(-1)&&(n=n.slice(0,-1)+"D");for(var f=null,z=!0,F=1;F<=p;F++){var v,E;v="";E=k[F];if(void 0!==E){null==f&&(f=E>>14);80==l&&(2==f?q="[%800]":3==f&&(q="ES:["+(b.pc?"E":"")+"DI]"));var H=E&15;if(0!=H)if(8==H)z=!1;else{var L=E&240;if(128<=L)if(0>g&&(g=a.Qa(b,1)),160>L){v=a;var V=p,H=b,P="",bb=g>>6,ia=g&7;if(3>bb){var ja=void 0,L=0==n.indexOf("FI");if(!bb&&(!H.pc&&6==ia||H.pc&&5==ia))bb=2;else{if(H.pc)if(4!=
|
||||
ia)ia+=8;else{var P=v,ja=bb,Ha=H,Xa=P.Qa(Ha,1),Ba=Xa>>6,Vb=Xa>>3&7,Xa=Xa&7,wa="";if(ja||5!=Xa)wa=vq[Xa+8];4!=Vb&&(wa&&(wa+="+"),wa+=vq[Vb+8],Ba&&(wa+="*"+(1<<Ba)));ja||5!=Xa||(wa&&(wa+="+"),wa+=r(P.oa(Ha,4)));P=wa}P||(P=vq[ia])}1==bb?(ja=v.Qa(H,1),ja&128?(ja=ja<<24>>24,P+="-"+r(-ja,2)):P+="+"+r(ja,2)):2==bb&&(P&&(P+="+"),H.pc?(ja=v.oa(H,4),P+=r(ja)):(ja=v.na(H,2),P+=r(ja,4)));P="["+P+"]";if(1==V){v="";E&=15;4==E&&(E=H.Rb?5:3);switch(E){case 7:v="FAR";break;case 1:v="BYTE";break;case 3:if(L){v="INT16";
|
||||
break}v="WORD";break;case 5:v="DWORD";break;case 11:if(L){v="INT32";break}case 11:v="REAL32";break;case 12:if(L){v="INT64";break}case 12:v="REAL64";break;case 13:v="REAL80";break;case 14:v="BCD80"}v&&(P=v+" "+P)}}else P=sr(v,ia,E,H);v=P}else v=160==L?sr(a,g&7,E,b):sr(a,g>>3&7,E,b);else if(16==L)v="1";else if(0==L){v=a;H=E;L=b;E=" ";switch(H&15){case 1:H&12288&&(E=r(v.Qa(L,1),2));break;case 2:E=r(v.Qa(L,1)<<24>>24,L.Rb?8:4);break;case 4:if(L.Rb){E=r(v.oa(L,4));break}case 3:E=r(v.na(L,2),4);break;case 7:L=
|
||||
iq(v,v.tb(L,!0),v.na(L,2),null,L.type,L.Rb,L.pc);E=Sq(L);v=tr(v,L);v[0]&&(E+=" ("+v[0]+")");break;default:E="imm("+u(H)+")"}v=E}else 32==L?(b.pc?(v=8,E=a.oa(b,4)):(v=4,E=a.na(b,2)),v="["+r(E,v)+"]"):48==L?(v=1==H?a.Qa(b,1)<<24>>24:a.tb(b,!0),E=b.Ra+v&(b.Rb?-1:65535),v=r(E,b.Rb?8:4),E=tr(a,iq(a,E,b.Z)),E[0]&&(v+=" ("+E[0]+")")):96==L?v=9==H?"ST":10==H?"ST("+(g&7)+")":sr(a,(E&3840)>>8,E,b):112==L?v=sr(a,(E&3840)>>8,192,b):64==L?v="DS:[SI]":80==L&&(v="ES:[DI]");if(!v||!v.length){q="INVALID";break}0<
|
||||
q.length&&(q+=",");q+=v||"???"}}}g="";k=Sq(e)+" ";if(-1!==e.Da&&-1!==b.Da){do if(g+=r(a.Qa(e,1),2),null==e.Da)break;while(e.Da!=b.Da)}k+=ma(g,e.pc?24:16);k+=ma(n,8);q&&(k+=" "+q);a.F.ia<tq[f]&&(c=tq[f]+" CPU only");c&&z&&(k=ma(k,e.pc?74:56)+";"+c,k=a.F.la.Ye?k+("cycles="+Wc(a.F).toString()+" cs="+r(a.F.Y.If)):k+(null!=d?"="+d.toString():""));ur(b,z,h);return k}
|
||||
function sr(a,b,c,d){var e=c&240;if(192==e){if(5<b||4<=b&&80386>a.F.ia)return"??";b+=16}else if(208==e)b+=32;else if(224==e)b+=40;else if(240==e)b+=48;else if(a=c&15,3<=a&&(8>b&&(b+=8),5==a||4==a&&d.Sb))b+=16;return uq[b]}
|
||||
function sr(a,b,c,d){var e=c&240;if(192==e){if(5<b||4<=b&&80386>a.F.ia)return"??";b+=16}else if(208==e)b+=32;else if(224==e)b+=40;else if(240==e)b+=48;else if(a=c&15,3<=a&&(8>b&&(b+=8),5==a||4==a&&d.Rb))b+=16;return uq[b]}
|
||||
function vr(a,b){var c;switch(b){case "V":c=uf(a.F);break;case "D":c=a.F.ca&1024;break;case "I":c=a.F.ca&512;break;case "T":c=a.F.ca&256;break;case "S":c=tf(a.F);break;case "Z":c=sf(a.F);break;case "A":c=rf(a.F);break;case "P":c=qf(a.F);break;case "C":c=pf(a.F);break;default:c=0}return b+(c?"1":"0")+" "}function Hq(a){return r(a,a&-65536?8:4)}function wr(a,b){8<=b&&15>=b&&4<a.Ja&&(b+=16);var c=uq[b];32==b&&80286==a.F.ia&&(c="MS");return c+"="+fr(a,b)+" "}
|
||||
function xr(a,b,c){return b.lc+"="+r(b.Z,4)+(c?"["+r(b.Aa,a.Ca)+","+Hq(b.Ta)+"]":"")}function yr(a,b,c,d,e){return b+"="+(null!=c?r(c,4):"")+"["+r(d,a.Ca)+","+r(e-d,4)+"]"}
|
||||
function zr(a,b){var c;void 0===b&&(b=Tq(a));c=wr(a,8)+wr(a,11)+wr(a,9)+wr(a,10)+(4<a.Ja?"\n":"")+wr(a,12)+wr(a,13)+wr(a,14)+wr(a,15)+"\n"+xr(a,a.F.ta,b)+" "+xr(a,a.F.vb,b)+" "+xr(a,a.F.Xa,b)+" ";if(b){var d="TR="+r(a.F.Sa.Z,4),e=a.ea,e="A20="+(e.V||e.xg!=e.Gb?"OFF ":"ON ");80386>a.F.ia&&(d="\n"+d,c+=e,e="");c+="\n"+xr(a,a.F.va,b)+" ";80386<=a.F.ia&&(e+="\n",c+=xr(a,a.F.Ob,b)+" "+xr(a,a.F.Pb,b)+"\n");c+=yr(a,"LD",a.F.Bc.Z,a.F.Bc.Aa,a.F.Bc.Aa+a.F.Bc.Ta)+" "+yr(a,"GD",null,a.F.Ec,a.F.Ad)+" "+yr(a,"ID",
|
||||
null,a.F.Mc,a.F.Td)+" ";c=c+(d+" "+e)+wr(a,32);80386<=a.F.ia&&(c+=wr(a,34)+wr(a,35))}else 80386<=a.F.ia&&(c+=xr(a,a.F.Ob,b)+" "+xr(a,a.F.Pb,b)+" ");return c+=wr(a,23)+vr(a,"V")+vr(a,"D")+vr(a,"I")+vr(a,"T")+vr(a,"S")+vr(a,"Z")+vr(a,"A")+vr(a,"P")+vr(a,"C")}var Ar={"||":0,"&&":1,"|":2,"^":3,"&":4,"!=":5,"==":5,">=":6,">":6,"<=":6,"<":6,">>>":7,">>":7,"<<":7,"-":8,"+":8,"%":9,"/":9,"*":9};
|
||||
function zr(a,b){var c;void 0===b&&(b=Tq(a));c=wr(a,8)+wr(a,11)+wr(a,9)+wr(a,10)+(4<a.Ja?"\n":"")+wr(a,12)+wr(a,13)+wr(a,14)+wr(a,15)+"\n"+xr(a,a.F.ta,b)+" "+xr(a,a.F.vb,b)+" "+xr(a,a.F.Xa,b)+" ";if(b){var d="TR="+r(a.F.Sa.Z,4),e=a.ea,e="A20="+(e.V||e.xg!=e.Gb?"OFF ":"ON ");80386>a.F.ia&&(d="\n"+d,c+=e,e="");c+="\n"+xr(a,a.F.va,b)+" ";80386<=a.F.ia&&(e+="\n",c+=xr(a,a.F.Nb,b)+" "+xr(a,a.F.Ob,b)+"\n");c+=yr(a,"LD",a.F.Bc.Z,a.F.Bc.Aa,a.F.Bc.Aa+a.F.Bc.Ta)+" "+yr(a,"GD",null,a.F.Ec,a.F.Ad)+" "+yr(a,"ID",
|
||||
null,a.F.Mc,a.F.Td)+" ";c=c+(d+" "+e)+wr(a,32);80386<=a.F.ia&&(c+=wr(a,34)+wr(a,35))}else 80386<=a.F.ia&&(c+=xr(a,a.F.Nb,b)+" "+xr(a,a.F.Ob,b)+" ");return c+=wr(a,23)+vr(a,"V")+vr(a,"D")+vr(a,"I")+vr(a,"T")+vr(a,"S")+vr(a,"Z")+vr(a,"A")+vr(a,"P")+vr(a,"C")}var Ar={"||":0,"&&":1,"|":2,"^":3,"&":4,"!=":5,"==":5,">=":6,">":6,"<=":6,"<":6,">>>":7,">>":7,"<<":7,"-":8,"+":8,"%":9,"/":9,"*":9};
|
||||
function Br(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 ar(a,b,c){var d;if(b){b=$q(a,b);for(var e=0,f=!1,g=b,h=[],k=[],l=b.split(/(\|\||&&|\||^|&|!=|==|>=|>>>|>>|>|<=|<<|<|-|\+|%|\/|\*)/);e<l.length;){var n=l[e++],q=n.length,n=na(n);if(!n){f=!0;break}n=Eq(a,n,null,!1===c);if(void 0===n){f=!0;c=!1;break}h.push(n);if(e==l.length)break;var n=l[e++],p=n.length;k.length&&Ar[n]<Ar[k[k.length-1]]&&Br(h,k,1);k.push(n);b=b.substr(q+p)}Br(h,k)&&1==h.length||(f=!0);f?c&&a.O("error parsing '"+g+"' at character "+(g.length-b.length)):(d=h.pop(),c&&Cr(a,null,
|
||||
d))}return d}function $q(a,b){for(var c;(c=b.match(/\{(.*?)}/))&&!(0<=c[1].indexOf("{"));){var d=ar(a,c[1]);b=b.replace("{"+c[1]+"}",null!=d?r(d):"undefined")}for(;(c=b.match(/\[(.*?)]/))&&!(0<=c[1].indexOf("["));)d=Zq(a,c[1]),b=b.replace("["+c[1]+"]",d?r(a.tb(d),d.Sb?8:4):"undefined");for(c=b;d=c.match(/\$([a-z]+)/i);){var e=null;switch(d[1].toLowerCase()){case "ops":e=a.pa-a.ya}if(null==e)break;c=c.replace(d[0],e.toString())}return c}
|
||||
d))}return d}function $q(a,b){for(var c;(c=b.match(/\{(.*?)}/))&&!(0<=c[1].indexOf("{"));){var d=ar(a,c[1]);b=b.replace("{"+c[1]+"}",null!=d?r(d):"undefined")}for(;(c=b.match(/\[(.*?)]/))&&!(0<=c[1].indexOf("["));)d=Zq(a,c[1]),b=b.replace("["+c[1]+"]",d?r(a.tb(d),d.Rb?8:4):"undefined");for(c=b;d=c.match(/\$([a-z]+)/i);){var e=null;switch(d[1].toLowerCase()){case "ops":e=a.pa-a.ya}if(null==e)break;c=c.replace(d[0],e.toString())}return c}
|
||||
function Eq(a,b,c,d){var e;void 0!==b?(e=er(b),0<=e?e=gr(a,e):(e=a.wa[b],void 0===e&&(e=ca(b))),void 0!==e||d||a.O("invalid "+(c?c:"value")+": "+b)):d||a.O("missing "+(c||"value"));return e}function Cr(a,b,c){var d,e=!1;void 0!==c&&(e=!0,d="0x"+r(c)+" "+c+". ("+ea(c)+")");a.O((null!=b?b+": ":"")+d);return e}function Dr(a,b){if(b)return Cr(a,b,a.wa[b]);var c=0;for(b in a.wa)Cr(a,b,a.wa[b]),c++;return 0<c}hq.prototype.sb=function(a,b){return a[0]>b[0]?1:a[0]<b[0]?-1:0};
|
||||
function am(a,b,c,d,e,f,g,h){var k={},l=[],n;for(n in h){var q=h[n];"number"==typeof q&&(h[n]=q={o:q});var p=q.o,z=q.s,F=q.a;if(void 0!==p){void 0!==z&&(k.Ra=p,k.Z=z,k.Da=null,a.dc(k),(k.Da&-65536)==(a.ea.xg&-65536)&&(k.Da&=1048575),q.p=k.Da);var z=l,p=[p>>>0,n],v=oa(z,p,a.sb);0>v&&z.splice(-(v+1),0,p)}F&&(q.a=F.replace(/''/g,'"'))}a.B.push({fg:b,mm:c,Z:d,Ra:e,Da:f,em:g,Rd:h,ri:l})}
|
||||
function Qq(a,b,c){for(var d=0;d<a.B.length;d++){var e=a.B[d];if(!b||e.fg==b)if(b&&c==e.mm||!b&&c==e.Z){a.B.splice(d,1);break}}}function tr(a,b,c){for(var d=[],e=b.Ra>>>0,f=a.dc(b)>>>0,g=0;g<a.B.length;g++){var h=a.B[g],k=h.Z,l=h.Ra>>>0,n=h.Da;null!=n&&(n>>>=0);var q=h.em;48==k&&(k=40);if(k==b.Z&&e>=l&&e<l+q||null!=n&&f>=n&&f<n+q){b=oa(h.ri,[e],a.sb);0<=b?Er(a,g,b,d):c&&(b=~b,Er(a,g,b-1,d),Er(a,g,b,d));break}}!d.length&&(a=a.ea.Si(f,!0))&&(d.push(a),d.push(f));return d}
|
||||
|
|
@ -750,9 +750,9 @@ h[2]}if(!e)break;a.O("ST"+g+": "+ma(e[2].toFixed(15),24,!0)+" "+r(e[4])+","+r(e
|
|||
k){case "AL":a.F.G=a.F.G&-256|h&255;break;case "AH":a.F.G=a.F.G&-65281|h<<8&255;break;case "AX":a.F.G=a.F.G&-65536|h&65535;break;case "BL":a.F.H=a.F.H&-256|h&255;break;case "BH":a.F.H=a.F.H&-65281|h<<8&255;break;case "BX":a.F.H=a.F.H&-65536|h&65535;break;case "CL":a.F.I=a.F.I&-256|h&255;break;case "CH":a.F.I=a.F.I&-65281|h<<8&255;break;case "CX":a.F.I=a.F.I&-65536|h&65535;break;case "DL":a.F.M=a.F.M&-256|h&255;break;case "DH":a.F.M=a.F.M&-65281|h<<8&255;break;case "DX":a.F.M=a.F.M&-65536|h&65535;
|
||||
break;case "SP":G(a.F,I(a.F)&-65536|h&65535);break;case "BP":a.F.P=a.F.P&-65536|h&65535;break;case "SI":a.F.K=a.F.K&-65536|h&65535;break;case "DI":a.F.J=a.F.J&-65536|h&65535;break;case "DS":vd(a.F,h);break;case "ES":wd(a.F,h);break;case "SS":kd(a.F,h);break;case "CS":kf(a.F,h);a.aa=iq(a,K(a.F),a.F.va.Z);break;case "IP":case "EIP":O(a.F,h);a.aa=iq(a,K(a.F),a.F.va.Z);break;case "PC":case "PS":yd(a.F,h);break;case "C":h?wf(a.F):xf(a.F);break;case "P":h?(e=a.F,e.resultType&=-3,e.ca|=4):(e=a.F,e.resultType&=
|
||||
-3,e.ca&=-5);break;case "A":h?Ef(a.F):Cf(a.F);break;case "Z":h?Ff(a.F):Df(a.F);break;case "S":h?(e=a.F,e.resultType&=-17,e.ca|=128):(e=a.F,e.resultType&=-17,e.ca&=-129);break;case "I":h?(e=a.F,e.ca|=512):(e=a.F,e.ca&=-513);break;case "D":h?(e=a.F,e.ca|=1024):(e=a.F,e.ca&=-1025);break;case "V":h?yf(a.F):zf(a.F);break;default:var l=!0;if(80286<=a.F.ia)switch(l=!1,k){case "MS":Gf(a.F,h);break;case "TR":-1===a.F.Sa.load(h)&&(g=!1);break;default:if(l=!0,80386<=a.F.ia)switch(l=!1,k){case "EAX":a.F.G=h;
|
||||
break;case "EBX":a.F.H=h;break;case "ECX":a.F.I=h;break;case "EDX":a.F.M=h;break;case "ESP":G(a.F,h);break;case "EBP":a.F.P=h;break;case "ESI":a.F.K=h;break;case "EDI":a.F.J=h;break;case "FS":a.F.Ob.load(h);break;case "GS":a.F.Pb.load(h);break;case "CR0":a.F.Za=h;pj.call(a.F,h);break;case "CR2":a.F.te=h;break;case "CR3":a.F.Pd=h;Ad.call(a.F,h);break;default:l=!0}}if(l){a.O("unknown register: "+e);return}}if(!g){a.O("invalid value: "+f);return}Qc(a.F);a.O("updated registers:")}}a.O(zr(a,d));c&&(a.aa=
|
||||
break;case "EBX":a.F.H=h;break;case "ECX":a.F.I=h;break;case "EDX":a.F.M=h;break;case "ESP":G(a.F,h);break;case "EBP":a.F.P=h;break;case "ESI":a.F.K=h;break;case "EDI":a.F.J=h;break;case "FS":a.F.Nb.load(h);break;case "GS":a.F.Ob.load(h);break;case "CR0":a.F.Za=h;pj.call(a.F,h);break;case "CR2":a.F.te=h;break;case "CR3":a.F.Pd=h;Ad.call(a.F,h);break;default:l=!0}}if(l){a.O("unknown register: "+e);return}}if(!g){a.O("invalid value: "+f);return}Qc(a.F);a.O("updated registers:")}}a.O(zr(a,d));c&&(a.aa=
|
||||
iq(a,K(a.F),a.F.va.Z),kr(a,Sq(a.aa)))}}function Kr(a,b){b=na(b);var c=b.match(/^(['"])(.*?)\1$/);c?a.O(hr(a,c[2])):ar(a,b,!0)}function Lr(a,b,c){for(var d=null,e=b.Ra,f=e,g=1;6>=g&&e;g++){if(2<g){b.Ra=e;b.Da=null;var h=rr(a,b);if(0<h.indexOf("CALL")||c&&0<h.indexOf("INT")){var k=h.indexOf(" ");if(e+(h.indexOf(" ",k+1)-k-1)/2==f){d=h;break}}}e--}b.Ra=f;return d}
|
||||
function Mr(a,b,c){var d="t"!=b;c=Eq(a,c,null,!0)||1;var e=1==c?0:1;"tc"==b&&(e=c,c=1);Ja(c,function(){return pb(a,!0)&&a.vf(e,d,!1)},function(){Qc(a.F);pb(a,!1)})}function ur(a,b,c){if(a.Wd=b)null!=a.Li&&(a.Sb=a.Li),null!=a.Ji&&(a.pc=a.Ji),a.Li=a.Sb,a.Ji=a.pc;a.Se=c||0}
|
||||
function Mr(a,b,c){var d="t"!=b;c=Eq(a,c,null,!0)||1;var e=1==c?0:1;"tc"==b&&(e=c,c=1);Ja(c,function(){return pb(a,!0)&&a.vf(e,d,!1)},function(){Qc(a.F);pb(a,!1)})}function ur(a,b,c){if(a.Wd=b)null!=a.Li&&(a.Rb=a.Li),null!=a.Ji&&(a.pc=a.Ji),a.Li=a.Rb,a.Ji=a.pc;a.Se=c||0}
|
||||
function kr(a,b,c,d){if(b=Zq(a,b,!0)){void 0===d&&(d=1);var e=256;if(void 0!==c){d=Zq(a,c,!0);if(!d||d.Ra<b.Ra)return;e=d.Ra-b.Ra;if(256<e){a.O("range too large");return}d=-1}c=0;var f;for(ur(b,!0);0<e&&d--;){f=qb(a,!1)||a.N?a.fa:null;var g=null!=f?"cycles":null,h=tr(a,b),k=b.Da;if(h[0]&&d&&(!c&&d||0>h[0].indexOf("+"))){var l=h[0]+":";h[2]&&(l+=" "+h[2]);a.O(l)}h[3]&&(g=h[3],f=null);f=rr(a,b,g,f);b.Wd||d||d++;a.O(f);a.aa=b;e-=b.Da-k;c++}}}
|
||||
function cr(a,b,c,d){if(c)if(b){0>a.U&&a.L.length&&(a.U=0);if(0>a.U||b!=a.L[a.U])a.L.splice(0,0,b),a.U=0;a.U--}else b=a.L[a.U+1];a=[];if(b){b=b.toLowerCase().replace(/""/g,"'");c=0;var e=null;d=d||";";for(var f=0;f<=b.length;f++){var g=b.charAt(f);if('"'==g||"'"==g)e?g==e&&(e=null):e=g;else if(g==d&&!e||!g)a.push(na(b.substring(c,f))),c=f+1}}return a}
|
||||
function qr(a,b,c){var d=!0;try{if(!b.length||"end"==b)a.Ea&&(a.O("ended assemble at "+Sq(a.ua)),a.aa=a.ua,a.Ea=!1),b="";else if(!c){var e=">> ";a.F.Za&1&&(e=a.F.ca&131072?"-- ":"## ");a.O(e+b)}var f=b.charAt(0);if('"'==f||"'"==f)return!0;a.Pa=null;if(sb(a)&&0<b.length){a.Ea&&(b="a "+Sq(a.ua)+" "+b);var g=b.replace(/ +/g," ").split(" ");if(g&&g.length)for(var h=g[0],k=h.charAt(0),l=1;l<h.length;l++){var n=h.charAt(l);if("?"==k||"r"==k||"a">n||"z"<n){g[0]=h.substr(l);g.unshift(h.substr(0,l));break}}switch(g[0].charAt(0)){case "a":var q=
|
||||
|
|
@ -763,7 +763,7 @@ a.A,V)||Rq(a,a.ra,V)||Rq(a,a.ga,V)||a.O("breakpoint missing: "+Sq(V)):"i"==H?a.O
|
|||
a.O(Vb))}else if("symbols"==ja)for(var wa=0;wa<a.B.length;wa++){var Vd=a.B[wa],Rc;for(Rc in Vd.Rd)if("."!=Rc.charAt(0)){var Wd=Vd.Rd[Rc],Ie=Wd.o;if(void 0!==Ie){var Xd=Wd.s;void 0===Xd&&(Xd=Vd.Z);var Je=Vd.Rd[Rc].l;Je&&(Rc=Je);a.O(Iq(Ie,Xd)+" "+Rc)}}}else{if("ds"==ia||"dg"==ia||"dl"==ia)ia="d",P=[ia,"desc",ja];"d"==ia&&"page"==ja&&(ia="dp",P.shift());if("dp"==ia){P.shift();var ji=P[0];if(ji){var Te=a.dc(Zq(a,ji));if(-1===Te)a.O("invalid address: "+ji);else{var be,Da=null;if(80386<=a.F.ia){var ce=
|
||||
a.ea,Da={};Da.bk=(Te&-4194304)>>>20;Da.ui=a.F.Pd+Da.bk;Da.yb=ce.sa[(Da.ui&ce.Gb)>>>ce.La];Da.Ui=Da.yb.Nd(Da.bk);Da.ck=(Te&4190208)>>>10;Da.vi=(Da.Ui&-4096)+Da.ck;Da.zb=ce.sa[(Da.vi&ce.Gb)>>>ce.La];Da.Vi=Da.zb.Nd(Da.ck);Da.Fk=(Da.Vi&-4096)+(Te&4095)}if(be=Da){a.O("linear PDE addr PDE PTE addr PTE physical");a.O("--------- ---------- -------- ---------- -------- ----------");var qd="%"+r(Te),qd=qd+(" %%"+dr(be.ui,be.Ui)),qd=qd+(" %%"+dr(be.vi,be.Vi,!0)),
|
||||
qd=qd+(" %%"+r(be.Fk));a.O(qd)}else a.O("unsupported operation")}}else a.O("missing address")}else{if("d"==ia){if("disk"==ja){P[0]="l";P[1]="json";Jr(a,P);break a}for(bb in wq)if(P[1]==bb){var En=a.$a[bb];En?(P.shift(),P.shift(),En(P)):a.O("no dump registered for "+ja);break a}ja||(ia=a.Cc||"db")}else a.Cc=ia;if("dh"==ia){var Fn=ja,Gn=Ha,Hn="",In=0,tb=a.Fa,tc=a.ja;if(tc.length){var Db=+Fn||a.Ub,de=+Gn||10;isNaN(Db)?Db=de:Hn="more ";Db>tc.length&&(a.O("note: only "+tc.length+" available"),Db=tc.length);
|
||||
tb-=Db;0>tb&&(null==tc[tc.length-1].Z?(Db=tb+Db,tb=0):tb+=tc.length);var ki=[];"call"==Gn&&(de=1E5,ki=["CALL"]);for(void 0!==Fn&&a.O(Db+" instructions earlier:");0<de&&tb!=a.Fa;){var rd=tc[tb++];if(null==rd.Z)break;var Ue=iq(a,rd.Ra,rd.Z,rd.Da,rd.type,rd.Sb,rd.pc),gs=Db--,Jn=rr(a,Ue,"history",gs);(!ki.length||0<=Jn.indexOf(ki[0]))&&a.O(Jn);Ue.Se&&(tb+=Ue.Se,de-=Ue.Se,Db-=Ue.Se);tb>=tc.length&&(tb=0);a.Ub=Db;In++;de--}}In||(a.O("no "+Hn+"history available"),a.Ub=void 0)}else if("di"==ia){P.shift();
|
||||
tb-=Db;0>tb&&(null==tc[tc.length-1].Z?(Db=tb+Db,tb=0):tb+=tc.length);var ki=[];"call"==Gn&&(de=1E5,ki=["CALL"]);for(void 0!==Fn&&a.O(Db+" instructions earlier:");0<de&&tb!=a.Fa;){var rd=tc[tb++];if(null==rd.Z)break;var Ue=iq(a,rd.Ra,rd.Z,rd.Da,rd.type,rd.Rb,rd.pc),gs=Db--,Jn=rr(a,Ue,"history",gs);(!ki.length||0<=Jn.indexOf(ki[0]))&&a.O(Jn);Ue.Se&&(tb+=Ue.Se,de-=Ue.Se,Db-=Ue.Se);tb>=tc.length&&(tb=0);a.Ub=Db;In++;de--}}In||(a.O("no "+Hn+"history available"),a.Ub=void 0)}else if("di"==ia){P.shift();
|
||||
var li=P[0];if(li){var Ve=Eq(a,li);if(void 0===Ve||0>Ve||255<Ve)a.O("invalid vector: "+li);else{var Kn="&",Ln=!!(a.F.Za&1),Mn=!1,pg=a.F.Mc+(Ve<<(Ln?3:2)),mi=a.F.na(pg+0),hs=a.F.na(pg+2);Ln&&(Kn="#",a.F.na(pg+4)&2048&&(Mn=!0,mi|=a.F.na(pg+6)<<16));a.O("dumpIDT("+u(Ve)+"): "+Kn+r(hs,4)+":"+r(mi,Mn?8:4))}}else a.O("no IDT vector")}else if("dt"==ia)P.shift(),a.O("no information");else{var ee=Zq(a,ja);if(ee&&(null!=ee.Z||null!=ee.Da)){var qg=0;Ha&&("l"==Ha.charAt(0)&&(Ha=Ha.substr(1)||Xa),qg=Eq(a,Ha)>>>
|
||||
0,65536<qg&&(qg=65536));for(var sd="",is=(qg||128)+15>>4||1,ni="dd"==ia?4:"dw"==ia?2:1,Nn=0;Nn<is;Nn++){for(var rg=0,oi=0,We="",pi="",ja=Sq(ee),qi=0;16>qi;qi++){var sg=a.Qa(ee,1),rg=rg|sg<<(oi++<<3);oi==ni&&(We+=r(rg,2*ni),We+=1==ni?7==qi?"-":" ":" ",rg=oi=0);pi+=32<=sg&&128>sg?String.fromCharCode(sg):"."}sd&&(sd+="\n");sd+=ja+" "+We+" "+pi}sd&&a.O(sd);a.Db=ee}}}}}break;case "e":if("else"==g[0])break;var tg=1,On=255,Pn=a.Qa,Qn=a.qc;"ew"==g[0]&&(tg=2,On=65535,Pn=a.na,Qn=a.jb);var Rn=tg<<1,Sn=g[1];
|
||||
if(null==Sn)a.O("edit memory commands:"),a.O("\teb [a] [...] edit bytes at address a"),a.O("\tew [a] [...] edit words at address a");else{var ug=Zq(a,Sn);if(ug)for(var vg=2;vg<g.length;vg++){var Xe=ar(a,g[vg]);if(void 0===Xe){a.O("unrecognized value: "+g[vg]);break}Xe&~On&&a.O("warning: "+r(Xe)+" exceeds "+tg+"-byte value");var js=Pn.call(a,ug);a.O("changing "+Sq(ug)+" from 0x"+r(js,Rn)+" to 0x"+r(Xe,Rn));Qn.call(a,ug,Xe,tg)}}break;case "f":Gr(a,g[1]);break;case "g":a:{var Tn=g[1],ks=b;"gt"==g[0]&&
|
||||
|
|
@ -773,14 +773,14 @@ Sq(Tc));10>wi;){for(var uc=null,ns=256;Tc.Ra>>>0<a.F.Lg>>>0;){Ze.Ra=a.tb(Tc,!0);
|
|||
g[1],xg=g[2];if(a.W){var Xn=1;"-"==xg.charAt(0)&&(Xn=-1,xg=xg.substr(1));var td=Eq(a,xg,xi);if(void 0!==td)switch(td=td*Xn|0,xi){case "x":a.W.Hf(td,0);break;case "y":a.W.Hf(0,td);break;case "click":a.W.je(td,!0);a.W.je(td,!1);break;default:a.O("unknown action: "+xi)}}else a.O("no mouse");break}a:{var vc,wc=null,Oa=g[1];"?"==Oa&&(Oa=void 0);if(void 0!==Oa){var ud=0;if("all"==Oa)ud=1610481663,Oa=null;else if("on"==Oa)wc=!0,Oa=null;else if("off"==Oa)wc=!1,Oa=null;else{"keys"==Oa&&(Oa="key");"kbd"==Oa&&
|
||||
(Oa="keyboard");for(vc in wq)if(Oa==vc){ud=wq[vc];wc=!!(a.wc&ud);break}if(!ud){a.O("unknown message category: "+Oa);break a}}ud&&("on"==g[2]?(a.wc|=ud,wc=!0):"off"==g[2]&&(a.wc&=~ud,wc=!1))}var os=0,Uc="";for(vc in wq)if(!Oa||Oa==vc){var ps=!!(a.wc&wq[vc]);if(null===wc||wc==ps)Uc&&(Uc+=","),++os%10||(Uc+="\n\t"),"key"==vc&&(vc="keys"),Uc+=vc}void 0===Oa&&a.O("message commands:\n\tm [category] [on|off]\tturn categories on/off");a.O((null!==wc?wc?"messages on: ":"messages off: ":"message categories:\n\t")+
|
||||
(Uc||"none"));kq(a)}break;case "o":var yi=g[1],qs=g[2];if(yi&&"?"!=yi){var zi=Eq(a,yi,"port #"),Ai=Eq(a,qs);void 0!==zi&&void 0!==Ai&&(mc(a.ea,zi,1,Ai),a.O(u(zi)+": "+t(Ai)))}else a.O("output commands:"),a.O("\to [p] [b]\twrite byte [b] to port [p]"),a.O("warning: port accesses can affect hardware state");break;case "p":if("print"==g[0]){Kr(a,b.substr(5));break}var Yn="pr"==g[0]?1:0,fe=1+Yn;if(a.N)a.O("step in progress");else{var yg,Zn=!1,lb=iq(a,K(a.F),a.F.va.Z);do switch(yg=!1,a.Qa(lb)){case 38:case 46:case 54:case 62:case 100:case 101:case 102:case 103:case 240:Uq(a,
|
||||
lb,1);yg=!0;break;case 204:case 206:a.N=fe;Uq(a,lb,1);break;case 205:case 224:case 225:case 226:a.N=fe;Uq(a,lb,lb.Sb?4:2);break;case 232:a.N=fe;Uq(a,lb,lb.Sb?5:3);break;case 154:a.N=fe;Uq(a,lb,lb.Sb?7:5);break;case 255:var $n=a.tb(lb)&14591;if(4351==$n||6399==$n)a.N=fe,rr(a,lb);break;case 243:case 242:Uq(a,lb,1);Zn=yg=!0;break;case 108:case 109:case 110:case 111:case 164:case 165:case 166:case 167:case 170:case 171:case 172:case 173:case 174:case 175:Zn&&(a.N=fe,Uq(a,lb,1))}while(yg);a.N?(a.Sd(a.A,
|
||||
lb,1);yg=!0;break;case 204:case 206:a.N=fe;Uq(a,lb,1);break;case 205:case 224:case 225:case 226:a.N=fe;Uq(a,lb,lb.Rb?4:2);break;case 232:a.N=fe;Uq(a,lb,lb.Rb?5:3);break;case 154:a.N=fe;Uq(a,lb,lb.Rb?7:5);break;case 255:var $n=a.tb(lb)&14591;if(4351==$n||6399==$n)a.N=fe,rr(a,lb);break;case 243:case 242:Uq(a,lb,1);Zn=yg=!0;break;case 108:case 109:case 110:case 111:case 164:case 165:case 166:case 167:case 170:case 171:case 172:case 173:case 174:case 175:Zn&&(a.N=fe,Uq(a,lb,1))}while(yg);a.N?(a.Sd(a.A,
|
||||
lb,!0),a.Ke()||(a.V&&a.V.yd(),a.N=0)):Mr(a,Yn?"tr":"t")}break;case "r":if("reset"==b){a.V&&a.V.reset();break}jr(a,g);break;case "t":Mr(a,g[0],g[1]);break;case "u":kr(a,g[1],g[2],8);break;case "v":if("var"==g[0]){Hr(a,b.substr(3))||(d=!1);break}a.O("PCjs version 1.21.7 ("+a.F.ia+",RELEASE,NOPREFETCH"+(vb?",TYPEDARRAYS":",LONGARRAYS")+",NOBACKTRACK)");a.O(ya());break;case "x":a:if(g[1]&&"?"!=g[1])switch(g[1]){case "cs":var $e;void 0!==g[3]&&($e=+g[3]);switch(g[2]){case "int":a.F.Y.jf=$e;break;case "start":a.F.Y.Jf=
|
||||
$e;break;case "stop":a.F.Y.lf=$e;break;default:a.O("unknown cs option");break a}void 0!==$e&&Pc(a.F);a.O("checksums "+(a.F.la.Ye?"enabled":"disabled"));break;case "sp":void 0!==g[2]&&(Xc(a.F,+g[2])||a.O("warning: using 1x multiplier, previous target not reached"));a.O("target speed: "+(a.F.Y.Fe.toFixed(2)+"Mhz")+" ("+a.F.Y.Yd+"x)");break;default:a.O("unknown option: "+g[1])}else a.O("execution options:"),a.O("\tcs int #\tset checksum cycle interval to #"),a.O("\tcs start #\tset checksum cycle start count to #"),
|
||||
a.O("\tcs stop #\tset checksum cycle stop count to #"),a.O("\tsp #\t\tset speed multiplier to #");break;case "?":if(g[1]){Kr(a,b.substr(1));break}var af="commands:",Bi;for(Bi in pq)af+="\n"+ma(Bi,7)+pq[Bi];Tf(a)||(af+="\nnote: frequency/history disabled if no exec breakpoints");a.O(af);break;default:a.O("unknown command: "+b),d=!1}}}catch(ao){a.O("debugger error: "+(ao.stack||ao.message)),d=!1}return d}function mq(a,b,c){b=cr(a,b,c);for(var d in b)if(!qr(a,b[d]))return!1;return!0}
|
||||
Qa(function(){for(var a=nb(document,"pcjs","debugger"),b=0;b<a.length;b++){var c=a[b],d=jb(c),d=new hq(d);mb(d,c)}});function hf(a,b,c){this.id=a.id;this.key=Or(a,b,c);this.ha=a.ha;Pr(this,a.gk)}function Or(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}
|
||||
hf.prototype={constructor:hf,value:function(){return this[this.id]},data:function(){return this[this.id]},load:function(a){return a?(this[this.id]=a,this.A=!0):this.A?!0:Ca()&&(a=Ea(this.key))?(this[this.id]=a,this.A=!0):!1},toString:function(){var a=this[this.id];return"string"==typeof a?a:JSON.stringify(a)},clear:function(a){Pr(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 Pr(a,b){a[a.id]={};b&&N(a,"parms",b);a.A=!1}function Qr(a){var b=!0;if(Ca()){var c=JSON.stringify(a[a.id]);Fa(a.key,c)||(w("Unable to store "+c.length+" bytes in browser local storage"),b=!1)}return b}function Rr(a){var b=!0;try{a[a.id]=JSON.parse(a[a.id])}catch(c){w(c.message||c),b=!1}return b}function Sr(a,b){return a[a.id][b]||null}function N(a,b,c){try{a[a.id][b]=c}catch(d){}}
|
||||
function Tr(a,b,c){Ua.call(this,"Computer",a,Tr,67108864);this.la.cc=!1;Ur(this,b);this.ga=Nc(this,"autoPower",a);this.N=0;this.ua=a.busWidth||a.buswidth;this.A=Vr;this.aa=null;this.W=this.ra=!1;this.wa=Nc(this,"url")||"";this.ya=(Math.random()+.1).toString(36).substr(2,12);this.B=Wr(this);if(this.F=ib("CPU",this.id)){this.ha=ib("Debugger",this.id);this.L=[];for(b=null;b=Eb(this,"Video",b);)this.L.push(b);this.ea=new Lb({id:this.ve+".bus",buswidth:this.ua},this.F,this.ha);var d,e=gb(this.id);if((this.C=
|
||||
function Tr(a,b,c){Ua.call(this,"Computer",a,Tr,67108864);this.la.cc=!1;Ur(this,b);this.ga=Nc(this,"autoPower",a);this.N=0;this.ua=a.busWidth||a.buswidth;this.A=Vr;this.aa=null;this.W=this.ra=!1;this.wa=Nc(this,"url")||"";this.ya=(Math.random()+.1).toString(36).substr(2,12);this.B=Wr(this);if(this.F=ib("CPU",this.id)){this.ha=ib("Debugger",this.id);this.L=[];for(b=null;b=Eb(this,"Video",b);)this.L.push(b);this.ea=new Lb({id:this.ve+".bus",busWidth:this.ua},this.F,this.ha);var d,e=gb(this.id);if((this.C=
|
||||
ib("Panel",this.id))&&this.C.Df)for(b=0;b<e.length;b++)d=e[b],d.Na=this.C.Na,d.O=this.C.O,d.Df=this.C.Df;for(b=0;b<e.length;b++)d=e[b],d.Ic&&d.Ic(this,this.ea,this.F,this.ha);b=null;d=a.resume;void 0!==d&&(1<d.length?b=this.X=d:this.A=parseInt(d,10));var f;if(a=Nc(this,"state")||(f=!0,a.state))b=this.ja=a,f||(this.W=!0,this.A=Vr),this.A&&(this.fa=new hf(this,Xr),this.fa.load()?b=null:delete this.fa);!b&&this.A&&(b=Yr(this))&&(this.W=!0);if(b){var g=this;va(b,null,!0,function(a,b,c){c?(g.X=null,g.W=
|
||||
!1,g.Na("Unable to load machine state from server (error "+c+(b?": "+na(b):"")+")")):(g.aa=b,g.ra=!0);rb(g)})}else rb(this);this.qa.power||(this.ga=!0);!c&&this.ga&&Zr(this,this.$f)}else w("Unable to find CPU component")}db(Tr);var Xr="1.21.7",Vr=0;m=Tr.prototype;m.ff=function(){return this.ya};function Ur(a,b){if(!b){var c;if("object"==typeof resources&&(c=resources.parms))try{b=eval("("+c+")")}catch(d){w(d.message+" ("+c+")")}}a.U=b}
|
||||
function Nc(a,b,c){var d=b.toLowerCase(),d=Ya[b]||Ya[d];void 0===d&&a.U&&(d=a.U[b]);void 0===d&&c&&(d=c[b]);void 0===d&&"object"==typeof resources&&resources[b]&&(d=b);return d}m.ke=function(){return this.B||""};function Zr(a,b,c){for(var d=gb(a.id),e=0;e<=d.length;e++){var f=e<d.length?d[e]:a;if(!sb(f)){sb(f,function(){Zr(a,b,c)});return}}b.call(a,c)}
|
||||
|
|
@ -793,15 +793,15 @@ function as(a,b){if(za("There may be a problem with your PCjs machine.\n\nTo hel
|
|||
function Nr(a,b,c){var d,e="none";if(a.N)return null;a.N--;var f=new hf(a,Xr),g=new hf(a,Xr,"validate"),h=qa();N(g,"timestamp",h);N(f,"timestamp",h);N(f,"version","1.21.7");N(f,"url",window?window.location.href:null);N(f,"browser",ya());a.F&&a.F.hc&&(c&&a.F.Wb(),d=a.F.hc(b,c),"object"===typeof d&&N(f,a.F.id,d),c&&(a.F.la.cc=!1,!1===d&&(e=null)));for(var h=gb(a.id),k=0;k<h.length;k++){var l=h[k];l.la.cc&&(l.hc&&(d=l.hc(b,c),"object"===typeof d&&N(f,l.id,d)),c&&(l.la.cc=!1,!1===d&&(e=null)))}e&&(c?
|
||||
(h=d=!1,b?(a.B&&cs(a,a.B,f.toString()),Qr(g)&&Qr(f)||(e=null,d=h=!0)):a.A&&(d=!0,h=3==a.A),d&&f.clear(h)):e=f.toString());c&&(a.la.cc=!1,b=a.qa.power)&&(b.textContent="Power");a.N=0;return e}m.reset=function(){this.ea&&this.ea.reset&&(y(this,"Resetting "+this.ea.type),this.ea.reset());for(var a=gb(this.id),b=0;b<a.length;b++){var c=a[b];c!==this&&c!==this.ea&&c.reset&&(y(this,"Resetting "+c.type),c.reset())}};
|
||||
m.start=function(a,b){for(var c=gb(this.id),d=0;d<c.length;d++){var e=c[d];"CPU"!=e.type&&e!==this&&e.start&&e.start(a,b)}};m.stop=function(a,b){for(var c=gb(this.id),d=0;d<c.length;d++){var e=c[d];"CPU"!=e.type&&e!==this&&e.stop&&e.stop(a,b)}};
|
||||
m.Qb=function(a,b,c){var d=this;switch(b){case "power":return this.qa[b]=c,c.onclick=function(){d.N||(d.la.cc?Nr(d,!1,!0):Zr(d,d.$f))},!0;case "reset":return this.qa[b]=c,c.onclick=function(){if(d.la.cc&&!d.N)if(d.A&&!d.X){var a=za("Click OK to save changes to this PCjs machine.\n\nWARNING: If you CANCEL, all disk changes will be discarded.");Nr(d,a,!0);!a&&d.ja?window&&window.location.reload():(a||(d.dh=!0),d.$f(Vr),d.dh=!1)}else d.reset(),d.F&&Sc(d.F)},!0;case "save":if(ha(xa(),"pcjs.org")){c.parentNode.removeChild(c);
|
||||
m.Pb=function(a,b,c){var d=this;switch(b){case "power":return this.qa[b]=c,c.onclick=function(){d.N||(d.la.cc?Nr(d,!1,!0):Zr(d,d.$f))},!0;case "reset":return this.qa[b]=c,c.onclick=function(){if(d.la.cc&&!d.N)if(d.A&&!d.X){var a=za("Click OK to save changes to this PCjs machine.\n\nWARNING: If you CANCEL, all disk changes will be discarded.");Nr(d,a,!0);!a&&d.ja?window&&window.location.reload():(a||(d.dh=!0),d.$f(Vr),d.dh=!1)}else d.reset(),d.F&&Sc(d.F)},!0;case "save":if(ha(xa(),"pcjs.org")){c.parentNode.removeChild(c);
|
||||
break}this.qa[b]=c;c.onclick=function(){var a=Wr(d,!0);if(a){var b=!!(d.A&&!d.X||d.ja),c=Nr(d,b);b?cs(d,a,c):d.Na("Resume disabled, machine state not saved")}};return!0}return!1};
|
||||
function Wr(a,b){var c=a.B;c||(c=Ea("user"),void 0!==c?!c&&b&&(c=null,window&&(c=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&&((c=ds(a,c))||a.Na("The user ID is invalid."))):b&&a.Na("Browser local storage is not available"));return c}
|
||||
function ds(a,b){a.B=null;var c=va(xa()+"/api/v1/user?req=verify&user="+b),d=c[1];if(!c[0]&&d)try{c=eval("("+d+")"),c.code&&"ok"==c.code&&(Fa("user",c.data),a.B=c.data)}catch(e){w(e.message+" ("+d+")")}return a.B}function Yr(a){var b=null;a.B&&(b=xa()+"/api/v1/user?req=load&user="+a.B+"&state="+Or(a,Xr));return b}
|
||||
function cs(a,b,c){if(c){var d={req:"store"};d.user=b;d.state=Or(a,Xr);d.data=c;b=va(xa()+"/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.Na("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.Na(c),Fa("user",""),a.B=null)}}
|
||||
function Eb(a,b,c){a=gb(a.id);for(var d=0;d<a.length;d++){var e=a[d];if(c)c==e&&(c=null);else if(e.type==b)return e}return null}m.yd=function(a){if(this.L.length){var b=0,c=0;a&&window&&(b=window.scrollX,c=window.scrollY);var d=this.L[0];d.V&&d.V.focus();a&&window&&window.scrollTo(b,c)}};m.qd=function(a){this.F&&this.F.qd(a);this.C&&this.C.qd(a)};
|
||||
function dd(a,b){for(var c=0;c<a.L.length;c++)qn(a.L[c],b);if(a.C&&(c=a.C,c.Ja)){Ib(c,18,c.aa,c.Ia);if(c.gb){var d=c.ea,e=c.A,f,g;null==f&&(f=0);null==g&&(g=d.X-f|0);null==e&&(e={$g:0,Ud:0,Rg:[]});var h=f>>>d.La;f=f+g-1>>>d.La;e.$g=0;for(e.Ud=0;h<=f;)g=d.sa[h],e.$g+=g.size,g.size&&(e.Rg.push(sa(Hb,h,0,0,g.type)),e.Ud++),h++;c.A=e;c.ya=c.A.Ud*c.ea.Nb/691200;d=0;c.A.Ai=0;c.A.Af||(c.A.Af=[]);var e=-1,h=0,k=-1;for(f=0;f<c.A.Ud;f++){var l=c.A.Rg[f];g=ta(Hb.type,l);l=ta(Hb.$j,l);if(g!=e||l!=k+1)(k=f-h)&&
|
||||
function dd(a,b){for(var c=0;c<a.L.length;c++)qn(a.L[c],b);if(a.C&&(c=a.C,c.Ja)){Ib(c,18,c.aa,c.Ia);if(c.gb){var d=c.ea,e=c.A,f,g;null==f&&(f=0);null==g&&(g=d.X-f|0);null==e&&(e={$g:0,Ud:0,Rg:[]});var h=f>>>d.La;f=f+g-1>>>d.La;e.$g=0;for(e.Ud=0;h<=f;)g=d.sa[h],e.$g+=g.size,g.size&&(e.Rg.push(sa(Hb,h,0,0,g.type)),e.Ud++),h++;c.A=e;c.ya=c.A.Ud*c.ea.Sb/691200;d=0;c.A.Ai=0;c.A.Af||(c.A.Af=[]);var e=-1,h=0,k=-1;for(f=0;f<c.A.Ud;f++){var l=c.A.Rg[f];g=ta(Hb.type,l);l=ta(Hb.$j,l);if(g!=e||l!=k+1)(k=f-h)&&
|
||||
(d+=Kb(c,h,k,e)),e=g,h=f;k=l}d+=Kb(c,h,f-h,e);e=c.A.Kk!=d;c.A.Kk=d;if(e){e=new Bb(0,0,c.aa.width,c.aa.height);c.A.Pe=[];h=c.A.Ud;for(d=0;d<c.A.Ai;d++)f=c.A.Af[d].Ud,c.A.Pe.push(Cb(e,f,h,!d)),h-=f;for(d=0;d<c.A.Pe.length;d++)e=c.A.Af[d],h=f=c.A.Pe[d],g=c.Ia,(k=xc[e.type])||(k=new Ab),g.strokeStyle="black",g.strokeRect(h.x,h.y,h.ad,h.A),g.fillStyle="string"==typeof k?k:k.toString(),g.fillRect(h.x,h.y,h.ad,h.A),h=c,g=f,h.ga=h.ua,h.X=h.wa,f=g.x+(g.ad>>1),k=g.y+(g.A>>1),l=g.A,g.ad<g.A&&(l=g.ad,h.ra=!0,
|
||||
h.N.save(),h.N.translate(f,k),h.N.rotate(-Math.PI/2),f=k=0),l<h.X&&(h.X=l,h.ga=h.X+"px Monaco, Lucida Console, Courier New"),g=k,h.C=f,h.U=g,h=c,e=sc[e.type]+" ("+(e.Ud*c.ea.Nb/1024|0)+"Kb)",h.N.font=h.ga,h.C-=h.N.measureText(e).width>>1,h.U+=(h.X>>1)-2,Jb(h,e),h.ra&&(h.N.restore(),h.ra=!1)}}else Jb(c,"This space intentionally left blank");c.context.drawImage(c.aa,0,0,c.aa.width,c.aa.height,c.sb,c.Jb,c.$a,c.fb);c.Ja=!1}}
|
||||
h.N.save(),h.N.translate(f,k),h.N.rotate(-Math.PI/2),f=k=0),l<h.X&&(h.X=l,h.ga=h.X+"px Monaco, Lucida Console, Courier New"),g=k,h.C=f,h.U=g,h=c,e=sc[e.type]+" ("+(e.Ud*c.ea.Sb/1024|0)+"Kb)",h.N.font=h.ga,h.C-=h.N.measureText(e).width>>1,h.U+=(h.X>>1)-2,Jb(h,e),h.ra&&(h.N.restore(),h.ra=!1)}}else Jb(c,"This space intentionally left blank");c.context.drawImage(c.aa,0,0,c.aa.width,c.aa.height,c.sb,c.Jb,c.$a,c.fb);c.Ja=!1}}
|
||||
Qa(function(){for(var a=nb(document,"pcjs-machine"),b=0;b<a.length;b++)for(var c=a[b],d=jb(c),c=nb(c,"pcjs","computer"),e=0;e<c.length;e++){var f=c[e],g=jb(f),g=new Tr(g,d,!0);mb(g,f);g.ga&&Zr(g,g.$f)}});La.show.push(function(){for(var a=nb(document,"pcjs","computer"),b=0;b<a.length;b++){var c=jb(a[b]);(c=ib("Computer",c.id))&&c.ka&&!c.la.cc&&c.$f(-1)}});
|
||||
La.exit.push(function(){for(var a=nb(document,"pcjs","computer"),b=0;b<a.length;b++){var c=jb(a[b]);(c=ib("Computer",c.id))&&c.la.cc&&Nr(c,!(!c.A||c.X),!0)}});var es=0;function fs(a,b,c,d,e,f){e("Loading "+a+"...");va(a,null,!0,function(g,h,k){k?(h||(h="unable to load "+a+" ("+k+")"),f(h,null)):rs(h,a,b,c,d,e,f)})}
|
||||
function rs(a,b,c,d,e,f,g){function h(a,f){if(f)g(f,null);else{if(c){fb(c,b,a);var h=b;h&&0>h.indexOf("/")&&"/"==window.location.pathname.slice(-1)&&(h=window.location.pathname+h);d?"}"==d.slice(-1)?(d=d.slice(0,-1),1<d.length&&(d+=",")):d='{state:"'+d+'",':d="{";d+='url:"'+h+'"}';"object"==typeof resources&&(h=null);a=a.replace(/(<machine[^>]*\sid=)(['"]).*?\2/,"$1$2"+c+"$2"+(d?" parms='"+d+"'":"")+(h?' url="'+h+'"':""))}e||(a=a.replace(/(<xsl:variable name="APPCLASS">).*?(<\/xsl:variable>)/,"$1pcjs$2"));
|
||||
|
|
|
|||
Loading…
Reference in a new issue