Merge in old master changes
This commit is contained in:
commit
fbb9c14f59
6 changed files with 202 additions and 191 deletions
|
|
@ -1,16 +1,9 @@
|
|||
About JavaScript Machines
|
||||
---
|
||||
layout: page
|
||||
title: JavaScript Machines
|
||||
menu_title: About
|
||||
menu_order: 10
|
||||
permalink: /docs/about/
|
||||
---
|
||||
|
||||
## About JavaScript Machines
|
||||
|
||||
The JavaScript Machines Project (originally at [jsmachines.net](http://jsmachines.net/)) is a collection of computer
|
||||
simulations written in JavaScript. It has now been released on [GitHub](https://github.com/) as the
|
||||
[PCjs Project](https://github.com/jeffpar/pcjs/tree/gh-pages), a copy of which is hosted here at [{{ site.pcjs.domain }}]({{ site.url }}/).
|
||||
[PCjs Project](https://github.com/jeffpar/pcjs), a copy of which is hosted here at [pcjs.org](http://www.pcjs.org/).
|
||||
|
||||
The goals of the project are to create fast, full-featured simulations of classic computer
|
||||
hardware, help people understand how these early machines worked, make it easy to experiment with different machine
|
||||
|
|
@ -29,7 +22,7 @@ The first JavaScript Machines simulation was [C1Pjs](/docs/c1pjs/), a simulation
|
|||
Challenger 1P, which was a 6502-based microcomputer introduced by Ohio Scientific in 1978.
|
||||
|
||||
C1Pjs v1.0 was released in July 2012, first on ecpsim.org and cpusim.org, then on [jsmachines.net](http://jsmachines.net/c1pjs),
|
||||
and finally [{{ site.pcjs.domain }}]({{ site.url }}/). More information about the first release of C1Pjs was also
|
||||
and finally [pcjs.org](http://www.pcjs.org/). More information about the first release of C1Pjs was also
|
||||
[posted](http://osiweb.org/osiforum/viewtopic.php?f=3&t=103) on the [OSI Discussion Forum](http://osiweb.org/osiforum/index.php)
|
||||
at [osiweb.org](http://osiweb.org/).
|
||||
|
||||
|
|
@ -53,8 +46,8 @@ Read [About PCjs](/docs/about/pcjs/) to learn more about its history, features,
|
|||
|
||||
### Migrating to Node: The PCjs Project
|
||||
|
||||
The JavaScript Machines Project was migrated to a [Node.js](http://nodejs.org) web server in 2014, and became the
|
||||
PCjs Project.
|
||||
The JavaScript Machines Project was migrated to a [Node.js](http://nodejs.org) web server ([pcjs.org](http://www.pcjs.org/))
|
||||
in 2014, and became the PCjs Project.
|
||||
|
||||
The goals included:
|
||||
|
||||
|
|
@ -76,9 +69,9 @@ All published portions are free for redistribution and/or modification under the
|
|||
[GNU General Public License](/LICENSE) as published by the Free Software Foundation, either version 3 of the License,
|
||||
or (at your option) any later version.
|
||||
|
||||
You are required to include the following copyright notice, with a link to [{{ site.pcjs.domain }}]({{ site.url }}/):
|
||||
You are required to include the following copyright notice, with a link to [http://pcjs.org]():
|
||||
|
||||
> [PCjs]({{ site.url }}/) © 2012-2015 by [Jeff Parsons](mailto:Jeff@pcjs.org) ([@jeffpar](http://twitter.com/jeffpar))
|
||||
> [PCjs](http://pcjs.org) © 2012-2015 by [Jeff Parsons](mailto:Jeff@pcjs.org) ([@jeffpar](http://twitter.com/jeffpar))
|
||||
|
||||
in every source code file of every copy or modified version of this work, and to display that notice on every web page
|
||||
or computer that runs any version of this software.
|
||||
|
|
|
|||
|
|
@ -44,7 +44,7 @@ b.length;a.ed=a.Dd-1;a=this.M;a.Jb=a.qb=this.Jb;sb(this)}eb(Nb);var Ib,Qb={Qj:20
|
|||
function Vb(a,b,c,d,e){for(var f=b>>>a.La;0<c&&f<a.wa.length;){var g=a.wa[f],k=f*a.Pb,q=c>a.Pb?a.Pb:c;if(g&&g.size){if(g.type==d&&g.controller==e){if(b+c<=g.Sa)return g.Ie+=g.Sa-b,g.Sa=b,!0;if(b>=g.Sa+g.Ie){q=g.size-(b-k);q>c&&(q=c);g.Ie=b-g.Sa+q;c-=q;b=k+a.Pb;continue}}return Wb(a,1,b,c)}g=a.wa[f];b=new Ob(b,q,a.Pb,d,e);Pb(b,a.ma,g);a.wa[f++]=b;b=k+a.Pb;c-=q}return 0<c?Wb(a,2,b,c):!0}
|
||||
function Ub(a,b){if(32==a.O)b?a.ja&&(Xb(a,1048576,1048576,a.ja),a.ja=null):a.ja||(a.ja=Yb(a,1048576,1048576),Xb(a,1048576,1048576,Yb(a,0,1048576)));else if(20<a.O){var c=a.Jb&-1048577|(b?1048576:0);if(c!=a.Jb&&(a.Jb=c,a.M)){var d=a.M;d.Jb=d.qb=c}}}h.Ig=function(a,b,c,d){if(!(a&this.A||!b||b&this.A)){for(var e=a>>>this.La;0<b;){var f=this.wa[e];if(!f.controller)return Wb(this,3,a,b,d);Zb(f,c,!0);b-=this.Pb;e++}return!0}return Wb(this,4,a,b)};
|
||||
function $b(a,b,c){if(!(b&a.A||!c||c&a.A)){for(var d=b>>>a.La;0<c;){var e=a.wa[d];b=new Ob(b);Pb(b,a.ma,e);a.wa[d++]=b;b=d*a.Pb;c-=a.Pb}return!0}return Wb(a,5,b,c)}function Yb(a,b,c){var d=[];for(b>>>=a.La;0<c&&b<a.wa.length;)d.push(a.wa[b++]),c-=a.Pb;return d}
|
||||
function Xb(a,b,c,d,e){for(var f=0,g=b>>>a.La;0<c&&g<a.wa.length;){var k=d[f++];if(!k)break;if(void 0!==e){var q=new Ob(b),r=q,x=e,B=a.ma;r.id=k.id|1;r.Ie=k.Ie;r.size=k.size;x&&(r.type=x,r.ja=x==ac);vb?(r.Z=k.Z,r.ia=k.ia,r.cb=k.cb,r.fe=k.fe,r.fa=k.fa,Zb(r,bc?cc:dc)):(r.fa=k.fa,Zb(r,ec));Pb(r,B,k);k=q}a.wa[g++]=k;c-=a.Pb}}h.Xa=function(a){return this.wa[(a&this.Jb)>>>this.La].nc(a&this.A,a)};function Lb(a,b){return a.wa[(b&a.Jb)>>>a.La].ne(b&a.A,b)}
|
||||
function Xb(a,b,c,d,e){for(var f=0,g=b>>>a.La;0<c&&g<a.wa.length;){var k=d[f++];if(!k)break;if(void 0!==e){var q=new Ob(b),r=q,x=e,B=a.ma;r.id=k.id|1;r.Ie=k.Ie;r.size=k.size;x&&(r.type=x,r.ja=x==ac);vb?(r.Z=k.Z,r.ia=k.ia,r.cb=k.cb,r.fe=k.fe,r.fa=k.fa,Zb(r,bc?cc:dc)):(r.fa=k.fa,Zb(r,ec));Pb(r,B,k);k=q}a.wa[g++]=k;c-=a.Pb}}h.Wa=function(a){return this.wa[(a&this.Jb)>>>this.La].nc(a&this.A,a)};function Lb(a,b){return a.wa[(b&a.Jb)>>>a.La].ne(b&a.A,b)}
|
||||
h.ua=function(a){var b=a&this.A,c=(a&this.Jb)>>>this.La;return b!=this.A?this.wa[c].Tf(b,a):this.wa[c++].nc(b,a)|this.wa[c&this.P].nc(0,a+1)<<8};function fc(a,b){var c=b&a.A,d=(b&a.Jb)>>>a.La;return c!=a.A?a.wa[d].Uf(c,b):a.wa[d++].ne(c,b)|a.wa[d&a.P].ne(0,b+1)<<8}h.Ta=function(a){var b=a&this.A,c=(a&this.Jb)>>>this.La;if(b<this.A-2)return this.wa[c].Yd(b,a);for(var d=0,e=4,f=0,g=4-(b&3);e--;)d|=this.wa[c].nc(b++,a++)<<f,--g||(c=c+1&this.P,b=0),f+=8;return d};
|
||||
h.xc=function(a,b){this.wa[(a&this.Jb)>>>this.La].yc(a&this.A,b&255,a)};h.pb=function(a,b){var c=a&this.A,d=(a&this.Jb)>>>this.La;c!=this.A?this.wa[d].bg(c,b&65535,a):(this.wa[d++].yc(c,b&255,a),this.wa[d&this.P].yc(0,b>>8&255,a+1))};function gc(a,b,c){var d=b&a.A,e=(b&a.Jb)>>>a.La;d!=a.A?a.wa[e].li(d,c&65535,b):(a.wa[e++].of(d,c&255,b),a.wa[e&a.P].of(0,c>>8&255,b+1))}
|
||||
h.ub=function(a,b){var c=a&this.A,d=(a&this.Jb)>>>this.La;if(c<this.A-2)this.wa[d].ag(c,b);else for(var e=4,f=4-(c&3);e--;)this.wa[d].yc(c++,b&255,a++),--f||(d=d+1&this.P,c=0),b>>>=8};h.Ki=function(){return null};function hc(a,b){if(void 0===b)return a.ia=!a.ia,a.ia;void 0===a.C[b]&&(a.C[b]=[null,!1]);a.C[b][1]=!a.C[b][1];return a.C[b][1]}
|
||||
|
|
@ -96,7 +96,7 @@ function nd(a,b,c){var d=a.M,e=a.ac,f=d.ab.ga,g=d.ab.Ca;if(!c){if(!(d.ab.type&51
|
|||
!0),t(d,d.Ta(k+g)));c&&d.pb(k+0,f);d.gb|=8;return!0}h.save=function(){return[this.ga,this.Ca,this.$a,this.Gb,this.id,this.hc,this.ac,this.Gc,this.cc,this.cd,this.Ea,this.ha,this.B,this.type,this.fc]};
|
||||
h.restore=function(a){"number"==typeof a?this.load(a):(this.ga=a[0],this.Ca=a[1],this.$a=a[2],this.Gb=a[3],this.id=a[4],this.hc=a[5],this.ac=a[6],this.Gc=a[7],this.cc=a[8],this.cd=a[9]||2,this.Ea=a[10]||65535,this.ha=a[11]||2,this.B=a[12]||65535,this.type=a[13]||this.Gb&7936,this.fc=a[14]||(this.$a>>>0)+1)};
|
||||
function gd(a,b,c,d){void 0===c&&(c=!!(a.M.gb&1));a.Zc=!1;if(c)if(a.load=a.mg,a.Mi=a.Vl,a.Fc=a.vi,a.Ac=a.xi,void 0===d&&(d=!!(a.M.ea&131072)),d)a.load=a.ya,a.Fc=a.P,a.Ac=a.ja,a.ac=a.Gc=3,a.ha=a.cd=2,a.B=a.Ea=65535,a.$a=65535,a.fc=a.$a+1,a.cd=a.ha,a.cc=-1,a.We=!1;else{if(!(a.ga&-4))a.Fc=a.hg,a.Ac=a.ig;else if(a.type&4096){6144==(a.type&6656)&&(a.Fc=a.hg);if(a.type&2048||!(a.type&512))a.Ac=a.ig;1024==(a.type&3072)&&(a.Fc==a.vi&&(a.Fc=a.Bk),a.Ac==a.xi&&(a.Ac=a.Ck),a.Zc=!0);b&&6>a.id&&a.ga&-4&&-1!==a.cc&&
|
||||
(c=a.cc+5,a.M.xc(c,a.M.Xa(c)|1))}b&&(a.ac=a.ga&3,a.Gc=(a.Gb&24576)>>13,80386>a.M.na||!(a.ext&64)?(a.ha=2,a.B=65535):(a.ha=4,a.B=-1),a.cd=a.ha,a.Ea=a.B)}else a.load=a.ih,a.Mi=a.Wl,a.Fc=a.wi,a.Ac=a.yi,a.ac=a.Gc=0,a.cc=-1,a.We=!1}
|
||||
(c=a.cc+5,a.M.xc(c,a.M.Wa(c)|1))}b&&(a.ac=a.ga&3,a.Gc=(a.Gb&24576)>>13,80386>a.M.na||!(a.ext&64)?(a.ha=2,a.B=65535):(a.ha=4,a.B=-1),a.cd=a.ha,a.Ea=a.B)}else a.load=a.ih,a.Mi=a.Wl,a.Fc=a.wi,a.Ac=a.yi,a.ac=a.Gc=0,a.cc=-1,a.We=!1}
|
||||
function Cd(a){this.na=a.model||8088;var b=a.stepping;this.ic=this.na+(b?ca(b,16):0);b=0;switch(this.na){default:b=4772727;break;case 80286:b=6E6;break;case 80386:b=16E6}Mc.call(this,a,b);this.Rf=61442;this.$b=1792;this.Pf=28672;this.Ad=4;this.va=255;this.C=80286<=this.na?xb:wb;this.W=Dd;this.Yf=Ed;this.Zf=Fd;this.$f=Gd;if(80186<=this.na&&(this.W=Dd.slice(),this.Yf=Ed.slice(),this.Zf=Fd.slice(),this.va=31,this.W[15]=Hd,this.W[96]=Id,this.W[97]=Jd,this.W[98]=Kd,this.W[99]=Hd,this.W[100]=Hd,this.W[101]=
|
||||
Hd,this.W[102]=Hd,this.W[103]=Hd,this.W[104]=Ld,this.W[105]=Md,this.W[106]=Nd,this.W[107]=Rd,this.W[108]=Sd,this.W[109]=Td,this.W[110]=Yd,this.W[111]=Zd,this.W[192]=$d,this.W[193]=ae,this.W[200]=be,this.W[201]=ce,this.W[241]=de,this.Yf[7]=ee,this.Zf[7]=ee,80286<=this.na)){this.Rf=2;this.$b|=28672;this.Ad=0;this.W[15]=fe;this.Qb=ge.slice();for(a=0;a<this.Qb.length;a++)this.Qb[a]||(this.Qb[a]=he);this.W[84]=ie;this.W[99]=je;if(80386<=this.na){var c;this.Pf=0;this.$b|=196608;this.W[100]=ke;this.W[101]=
|
||||
le;this.W[102]=me;this.W[103]=ne;for(c in w)this.Qb[+c]=w[c];80546<=this.ic&&80562>=this.ic&&(this.Qb[166]=oe,this.Qb[167]=pe)}}this.Fd=[];this.Gd=[];this.Id=0;Nc(this);this.sa.Sd=this.sa.Ei=!1;this.Kg=0;this.Lc=this.wa=[];this.La=this.Pb=this.Ga=this.Dd=this.ed=this.Jb=this.qb=0;qe(this)}eb(Cd,Mc);
|
||||
|
|
@ -121,14 +121,14 @@ function lf(a,b,c,d,e){a.resultType=c|26;a.Sc=b;d?mf(a):nf(a);e?of(a):pf(a);retu
|
|||
function gf(a){a.resultType&4&&(a.ea&=-17,(a.Qc^a.Rc^a.sd)&16&&(a.ea|=16),a.resultType&=-5);return a.ea&16}function hf(a){a.resultType&8&&(a.ea&=-65,a.Sc&((a.resultType&-2147450752)-1|a.resultType&-2147450752)||(a.ea|=64),a.resultType&=-9);return a.ea&64}function jf(a){a.resultType&16&&(a.ea&=-129,a.Sc&a.resultType&-2147450752&&(a.ea|=128),a.resultType&=-17);return a.ea&128}
|
||||
function kf(a){a.resultType&32&&(a.ea&=-2049,(a.Rc^a.Qc)&(a.sd^a.Qc)&a.resultType&-2147450752&&(a.ea|=2048),a.resultType&=-33);return a.ea&2048}function nf(a){a.resultType&=-2;a.ea&=-2}function sf(a){a.resultType&=-5;a.ea&=-17}function tf(a){a.resultType&=-9;a.ea&=-65}function pf(a){a.resultType&=-33;a.ea&=-2049}function mf(a){a.resultType&=-2;a.ea|=1}function uf(a){a.resultType&=-5;a.ea|=16}function vf(a){a.resultType&=-9;a.ea|=64}function of(a){a.resultType&=-33;a.ea|=2048}
|
||||
function yd(a){return a.ea&-2262|ef(a)|ff(a)|gf(a)|hf(a)|jf(a)|kf(a)}function wf(a,b){b=b|a.gb&1|65520;a.gb=a.gb&-65536|b&65535;a.gb&1&&sd(a,!0)}function zd(a,b,c){a.gb&1||(b&=~a.Pf);void 0===c&&(c=a.ta);c?b=b&-12289|a.ea&12288:a.Pa=(b&12288)>>12;c>a.Pa&&(b=b&-513|a.ea&512);a.resultType=128;a.ea=a.ea&~(a.$b|2261)|b&(a.$b|2261)|a.Rf;a.ea&256&&(a.xa|=2,a.V|=4)}
|
||||
function xf(a,b,c,d){var e=0;if(a.gb&1&&(a.ta>a.Pa||a.ea&131072)&&a.ab.oi)for(var f=a.ab.oi+(b>>>3),e=(1<<c)-1<<(b&7);e&&f<=a.ab.yk&&!(a.Xa(f)&e);)e>>>=8,f++;return e?(n(a,256)&&nb(a,"checkIOPM("+ga(b)+","+c+","+(d?"input":"output")+"): trapped",!0,!0),p.call(a,13,0),!1):!0}
|
||||
function xf(a,b,c,d){var e=0;if(a.gb&1&&(a.ta>a.Pa||a.ea&131072)&&a.ab.oi)for(var f=a.ab.oi+(b>>>3),e=(1<<c)-1<<(b&7);e&&f<=a.ab.yk&&!(a.Wa(f)&e);)e>>>=8,f++;return e?(n(a,256)&&nb(a,"checkIOPM("+ga(b)+","+c+","+(d?"input":"output")+"): trapped",!0,!0),p.call(a,13,0),!1):!0}
|
||||
h.Yb=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.ya[b]=c;this.Kg++;d=!0;break;default:d=this.parent.Yb.call(this,a,b,c)}return d};
|
||||
function yf(a,b,c,d){var e=(!1===d?a.Lc:a.wa)[(b&a.qb)>>>a.La];e&&5==e.type&&(e=Gc(a,b,!1,!0));if(e){var f=b&a.Ga;if(!c||1==c)return e.ne(f,b);if(2==c)return f<a.Ga?e.Uf(f,b):e.ne(f,b)|yf(a,b+1,1,d)<<8;if(4==c)return f<a.Ga-2?e.fi(f,b):f==a.Ga-1?e.Uf(f,b)|yf(a,b+2,2,d)<<16:e.ne(f,b)|yf(a,b+1,1,d)<<8|yf(a,b+2,1,d)<<16|yf(a,b+3,1,d)<<24}return null}h.Xa=function(a){return this.wa[(a&this.qb)>>>this.La].nc(a&this.Ga,a)};
|
||||
function yf(a,b,c,d){var e=(!1===d?a.Lc:a.wa)[(b&a.qb)>>>a.La];e&&5==e.type&&(e=Gc(a,b,!1,!0));if(e){var f=b&a.Ga;if(!c||1==c)return e.ne(f,b);if(2==c)return f<a.Ga?e.Uf(f,b):e.ne(f,b)|yf(a,b+1,1,d)<<8;if(4==c)return f<a.Ga-2?e.fi(f,b):f==a.Ga-1?e.Uf(f,b)|yf(a,b+2,2,d)<<16:e.ne(f,b)|yf(a,b+1,1,d)<<8|yf(a,b+2,1,d)<<16|yf(a,b+3,1,d)<<24}return null}h.Wa=function(a){return this.wa[(a&this.qb)>>>this.La].nc(a&this.Ga,a)};
|
||||
h.ua=function(a){var b=a&this.Ga,c=(a&this.qb)>>>this.La;this.A-=this.C.yg;if(b<this.Ga)return this.wa[c].Tf(b,a);b=this.wa[c].nc(b,a);this.V&4096||(b|=this.wa[c+1&this.ed].nc(0,a+1)<<8);return b};h.Ta=function(a){var b=a&this.Ga,c=(a&this.qb)>>>this.La;if(b<this.Ga-2)return this.wa[c].Yd(b,a);for(var d=0,e=4,f=0,g=4-(b&3);e--;){d|=this.wa[c].nc(b++,a++)<<f;if(this.V&4096)break;--g||(c=c+1&this.ed,b=0);f+=8}return d};h.xc=function(a,b){this.wa[(a&this.qb)>>>this.La].yc(a&this.Ga,b&255,a)};
|
||||
h.pb=function(a,b){var c=a&this.Ga,d=(a&this.qb)>>>this.La;this.A-=this.C.yg;c<this.Ga?this.wa[d].bg(c,b&65535,a):(this.wa[d++].yc(c,b&255,a),this.V&4096||this.wa[d&this.ed].yc(0,b>>8&255,a+1))};h.ub=function(a,b){var c=a&this.Ga,d=(a&this.qb)>>>this.La;this.A-=this.C.yg;if(c<this.Ga-2)this.wa[d].ag(c,b,a);else for(var e=4,f=4-(c&3);e--;){this.wa[d].yc(c++,b&255,a++);if(this.V&4096)break;--f||(d=d+1&this.ed,c=0);b>>>=8}};function zf(a,b,c){a.nd=b;a.X=b.Fc(a.rb=c,1);return a.V&1?0:a.Xa(a.X)}
|
||||
function E(a,b){return zf(a,a.O,b&a.Ea)}function G(a,b){return zf(a,a.P,b&a.Ea)}function Af(a,b,c){a.nd=b;a.X=b.Fc(a.rb=c,a.ha);return a.V&1?0:a.vb(a.X)}function H(a,b){return Af(a,a.O,b&a.Ea)}function J(a,b){return Af(a,a.P,b&a.Ea)}function Bf(a,b,c){a.nd=b;a.Z=a.X=b.Fc(a.rb=c,1);return a.V&1?0:a.Xa(a.X)}function K(a,b){return Bf(a,a.O,b&a.Ea)}function M(a,b){return Bf(a,a.P,b&a.Ea)}function Cf(a,b,c){a.nd=b;a.Z=a.X=b.Fc(a.rb=c,a.ha);return a.V&1?0:a.vb(a.X)}
|
||||
function N(a,b){return Cf(a,a.O,b&a.Ea)}function O(a,b){return Cf(a,a.P,b&a.Ea)}function Q(a,b){a.V&2||a.xc(a.nd.Ac(a.rb,1),b)}function R(a,b){a.V&2||a.oc(a.nd.Ac(a.rb,a.ha),b)}function ud(a,b,c){return a.vb(b.Fc(c,a.ha))}h.ca=function(){var a=this.Xa(this.Ma);bf(this,1);return a};function Df(a){var b=a.ua(a.Ma);bf(a,2);return b}function S(a){var b=a.dc(a.Ma);bf(a,a.cd);return b}h.Qa=function(){var a=this.vb(this.Ma);bf(this,this.ha);return a};
|
||||
h.L=function(){var a=this.Xa(this.Ma)<<24>>24;bf(this,1);return a};function T(a,b){var c=a.Xa(a.Ma);bf(a,1);return Ef[c].call(a,b)}function ld(a){var b=a.vb(a.ka);a.ka=a.ka+a.ha|0;var c=a.Gg-a.ka|0;0>c&&0<=(a.Gg^a.ka)&&(8088>=a.na||!a.za.Zc&&a.za.$a==a.za.Ea||a.za.Zc&&!a.za.$a?t(a,a.ka-a.za.Ca&a.za.Ea):-1>c&&p.call(a,12,0));return b}
|
||||
h.pb=function(a,b){var c=a&this.Ga,d=(a&this.qb)>>>this.La;this.A-=this.C.yg;c<this.Ga?this.wa[d].bg(c,b&65535,a):(this.wa[d++].yc(c,b&255,a),this.V&4096||this.wa[d&this.ed].yc(0,b>>8&255,a+1))};h.ub=function(a,b){var c=a&this.Ga,d=(a&this.qb)>>>this.La;this.A-=this.C.yg;if(c<this.Ga-2)this.wa[d].ag(c,b,a);else for(var e=4,f=4-(c&3);e--;){this.wa[d].yc(c++,b&255,a++);if(this.V&4096)break;--f||(d=d+1&this.ed,c=0);b>>>=8}};function zf(a,b,c){a.nd=b;a.X=b.Fc(a.rb=c,1);return a.V&1?0:a.Wa(a.X)}
|
||||
function E(a,b){return zf(a,a.O,b&a.Ea)}function G(a,b){return zf(a,a.P,b&a.Ea)}function Af(a,b,c){a.nd=b;a.X=b.Fc(a.rb=c,a.ha);return a.V&1?0:a.vb(a.X)}function H(a,b){return Af(a,a.O,b&a.Ea)}function J(a,b){return Af(a,a.P,b&a.Ea)}function Bf(a,b,c){a.nd=b;a.Z=a.X=b.Fc(a.rb=c,1);return a.V&1?0:a.Wa(a.X)}function K(a,b){return Bf(a,a.O,b&a.Ea)}function M(a,b){return Bf(a,a.P,b&a.Ea)}function Cf(a,b,c){a.nd=b;a.Z=a.X=b.Fc(a.rb=c,a.ha);return a.V&1?0:a.vb(a.X)}
|
||||
function N(a,b){return Cf(a,a.O,b&a.Ea)}function O(a,b){return Cf(a,a.P,b&a.Ea)}function Q(a,b){a.V&2||a.xc(a.nd.Ac(a.rb,1),b)}function R(a,b){a.V&2||a.oc(a.nd.Ac(a.rb,a.ha),b)}function ud(a,b,c){return a.vb(b.Fc(c,a.ha))}h.ca=function(){var a=this.Wa(this.Ma);bf(this,1);return a};function Df(a){var b=a.ua(a.Ma);bf(a,2);return b}function S(a){var b=a.dc(a.Ma);bf(a,a.cd);return b}h.Qa=function(){var a=this.vb(this.Ma);bf(this,this.ha);return a};
|
||||
h.L=function(){var a=this.Wa(this.Ma)<<24>>24;bf(this,1);return a};function T(a,b){var c=a.Wa(a.Ma);bf(a,1);return Ef[c].call(a,b)}function ld(a){var b=a.vb(a.ka);a.ka=a.ka+a.ha|0;var c=a.Gg-a.ka|0;0>c&&0<=(a.Gg^a.ka)&&(8088>=a.na||!a.za.Zc&&a.za.$a==a.za.Ea||a.za.Zc&&!a.za.$a?t(a,a.ka-a.za.Ca&a.za.Ea):-1>c&&p.call(a,12,0));return b}
|
||||
function Ff(a,b,c){var d=a.ka-c|0;0>(d-a.pd|0)&&0<=(a.pd^d)&&(8088>=a.na||!a.za.Zc&&a.za.$a==a.za.Ea||a.za.Zc&&!a.za.$a?(t(a,d-a.za.Ca&a.za.Ea),d=a.ka):p.call(a,12,0));2==c?a.pb(d,b):a.ub(d,b);a.ka=d}function vd(a,b){var c=a.ka-a.ha|0;0>(c-a.pd|0)&&0<=(a.pd^c)&&(8088>=a.na||!a.za.Zc&&a.za.$a==a.za.Ea||a.za.Zc&&!a.za.$a?(t(a,c-a.za.Ca&a.za.Ea),c=a.ka):p.call(a,12,0));a.oc(c,b);a.ka=c}
|
||||
function Gf(a,b,c){var d=4;1==b.length&&(d=1,c=c?1:0);if(80386>a.na)2<b.length&&(b=b.substr(1,2));else if("PS"==b||2<b.length)d=8;a.ya[b]&&(void 0===c&&(ub(a,"Value for "+b+" is invalid"),a.Zb()),d=!a.sa.Mb||a.sa.Gi?l(c,d):"--------".substr(0,d),a.ya[b].textContent!=d&&(a.ya[b].textContent=d))}
|
||||
h.od=function(a){if(this.Kg&&(a||!this.sa.Mb||this.sa.Gi)){Gf(this,"EAX",this.F);Gf(this,"EBX",this.D);Gf(this,"ECX",this.G);Gf(this,"EDX",this.H);Gf(this,"ESP",u(this));Gf(this,"EBP",this.K);Gf(this,"ESI",this.J);Gf(this,"EDI",this.I);Gf(this,"CS",this.Ba.ga);Gf(this,"DS",this.Db.ga);Gf(this,"SS",this.za.ga);Gf(this,"ES",this.hb.ga);Gf(this,"EIP",v(this));var b=yd(this);Gf(this,"PS",b);Gf(this,"V",b&2048);Gf(this,"D",b&1024);Gf(this,"I",b&512);Gf(this,"T",b&256);Gf(this,"S",b&128);Gf(this,"Z",b&
|
||||
|
|
@ -195,7 +195,7 @@ function Jd(){this.Y=this.ka;this.I=this.I&~this.B|ld(this);this.J=this.J&~this.
|
|||
function ke(){this.V|=20;this.O=this.P=this.Tb;this.A-=this.C.ld}function le(){this.V|=20;this.O=this.P=this.Ub;this.A-=this.C.ld}function me(){this.V|=1024;this.Ja&1024||(this.ha^=6,this.B^=-65536,Ie(this));this.A-=this.C.ld}function ne(){this.V|=2048;this.Ja&2048||(this.cd^=6,this.Ea^=-65536,xe(this));this.A-=this.C.ld}function Ld(){vd(this,this.Qa());this.A-=this.C.Oc}function Md(){this.da[this.ca()].call(this,Dh)}function Nd(){vd(this,this.L());this.A-=this.C.Oc}
|
||||
function Rd(){this.da[this.ca()].call(this,Bh)}function Sd(){var a=1,b=0,c=this.Ea,d=5;this.Ja&192&&(a=this.G&c,b=1,this.Ja&256&&(d=4));if(a--){var e=this.H&65535;xf(this,e,1,!0)&&(e=jc(this.ja,e,1,this.Ma-b-1),this.xc(this.hb.Ac(this.I&c,1),e),this.V&4096||(this.I=this.I&~c|this.I+(this.ea&1024?-1:1)&c,this.G=this.G&~c|this.G-b&c,this.A-=d,a&&(cf(this),this.V|=256)))}}
|
||||
function Td(){var a=1,b=0,c=this.Ea,d=5;this.Ja&192&&(a=this.G&c,b=1,this.Ja&256&&(d=4));if(a--){var e=this.H&65535;xf(this,e,this.ha,!0)&&(e=jc(this.ja,e,this.ha,this.Ma-b-1),this.oc(this.hb.Ac(this.I&c,this.ha),e),this.V&4096||(this.I=this.I&~c|this.I+(this.ea&1024?-this.ha:this.ha)&c,this.G=this.G&~c|this.G-b&c,this.A-=d,a&&(cf(this),this.V|=256)))}}
|
||||
function Yd(){var a=1,b=0,c=this.Ea,d=5;this.Ja&192&&(a=this.G&c,b=1,this.Ja&256&&(d=4));if(a--){var e=this.H&65535;if(xf(this,e,1,!1)){var f=this.Xa(this.Db.Fc(this.J&c,1));this.V&4096||(nc(this.ja,e,1,f,this.Ma-b-1),this.J=this.J&~c|this.J+(this.ea&1024?-1:1)&c,this.G=this.G&~c|this.G-b&c,this.A-=d,a&&(cf(this),this.V|=256))}}}
|
||||
function Yd(){var a=1,b=0,c=this.Ea,d=5;this.Ja&192&&(a=this.G&c,b=1,this.Ja&256&&(d=4));if(a--){var e=this.H&65535;if(xf(this,e,1,!1)){var f=this.Wa(this.Db.Fc(this.J&c,1));this.V&4096||(nc(this.ja,e,1,f,this.Ma-b-1),this.J=this.J&~c|this.J+(this.ea&1024?-1:1)&c,this.G=this.G&~c|this.G-b&c,this.A-=d,a&&(cf(this),this.V|=256))}}}
|
||||
function Zd(){var a=1,b=0,c=this.Ea,d=5;this.Ja&192&&(a=this.G&c,b=1,this.Ja&256&&(d=4));if(a--){var e=ud(this,this.Db,this.J&c);if(!(this.V&4096)){var f=this.H&65535;xf(this,f,this.ha,!1)&&(nc(this.ja,f,this.ha,e,this.Ma-b-1),this.J=this.J&~c|this.J+(this.ea&1024?-this.ha:this.ha)&c,this.G=this.G&~c|this.G-b&c,this.A-=d,a&&(cf(this),this.V|=256))}}}function jj(){var a=this.L();kf(this)?($e(this,v(this)+a),this.A-=this.C.eb):this.A-=this.C.fb}
|
||||
function kj(){var a=this.L();kf(this)?this.A-=this.C.fb:($e(this,v(this)+a),this.A-=this.C.eb)}function lj(){var a=this.L();ef(this)?($e(this,v(this)+a),this.A-=this.C.eb):this.A-=this.C.fb}function mj(){var a=this.L();ef(this)?this.A-=this.C.fb:($e(this,v(this)+a),this.A-=this.C.eb)}function nj(){var a=this.L();hf(this)?($e(this,v(this)+a),this.A-=this.C.eb):this.A-=this.C.fb}function oj(){var a=this.L();hf(this)?this.A-=this.C.fb:($e(this,v(this)+a),this.A-=this.C.eb)}
|
||||
function pj(){var a=this.L();ef(this)||hf(this)?($e(this,v(this)+a),this.A-=this.C.eb):this.A-=this.C.fb}function qj(){var a=this.L();ef(this)||hf(this)?this.A-=this.C.fb:($e(this,v(this)+a),this.A-=this.C.eb)}function rj(){var a=this.L();jf(this)?($e(this,v(this)+a),this.A-=this.C.eb):this.A-=this.C.fb}function sj(){var a=this.L();jf(this)?this.A-=this.C.fb:($e(this,v(this)+a),this.A-=this.C.eb)}function tj(){var a=this.L();ff(this)?($e(this,v(this)+a),this.A-=this.C.eb):this.A-=this.C.fb}
|
||||
|
|
@ -221,12 +221,12 @@ case 7:a=this.I}}this.da[b].call(this,Sh);switch(c){case 0:b=this.F;this.F=a;xd(
|
|||
this.Na[this.ca()].call(this,Lj,ij);this.Y=-1},function(){this.A-=3},function(){var a=this.F;this.F=this.F&~this.B|this.G&this.B;this.G=this.G&~this.B|a&this.B;this.A-=3},function(){var a=this.F;this.F=this.F&~this.B|this.H&this.B;this.H=this.H&~this.B|a&this.B;this.A-=3},function(){var a=this.F;this.F=this.F&~this.B|this.D&this.B;this.D=this.D&~this.B|a&this.B;this.A-=3},function(){var a=this.F,b=u(this);this.F=this.F&~this.B|b&this.B;t(this,b&~this.B|a&this.B);this.A-=3},function(){var a=this.F;
|
||||
this.F=this.F&~this.B|this.K&this.B;this.K=this.K&~this.B|a&this.B;this.A-=3},function(){var a=this.F;this.F=this.F&~this.B|this.J&this.B;this.J=this.J&~this.B|a&this.B;this.A-=3},function(){var a=this.F;this.F=this.F&~this.B|this.I&this.B;this.I=this.I&~this.B|a&this.B;this.A-=3},function(){this.F=2==this.ha?this.F&-65536|this.F<<24>>24&65535:this.F<<16>>16;this.A-=2},function(){this.H=2==this.ha?this.H&-65536|(this.F&32768?65535:0):this.F&-2147483648?-1:0;this.A-=this.C.Ui},function(){uh.call(this,
|
||||
this.Qa(),Df(this));this.A-=this.C.Xi},function(){this.A-=3},function(){var a=yd(this);a&131072&&3>this.Pa?p.call(this,13,0):(vd(this,a&-196609),this.A-=this.C.Oc)},function(){if(this.ea&131072&&3>this.Pa)p.call(this,13,0);else{var a=ld(this),a=a&65535|this.ea&-65536;zd(this,a);this.A-=this.C.vc}},function(){var a=this.F>>8&255;a&1?mf(this):nf(this);a&4?(this.resultType&=-3,this.ea|=4):(this.resultType&=-3,this.ea&=-5);a&16?uf(this):sf(this);a&64?vf(this):tf(this);a&128?(this.resultType&=-17,this.ea|=
|
||||
128):(this.resultType&=-17,this.ea&=-129);this.A-=this.C.ec},function(){this.F=this.F&-65281|(yd(this)&213)<<8;this.A-=this.C.ec},function(){var a=this.F&-256,b;b=S(this);b=this.Xa(this.O.Fc(b,1));this.F=a|b;this.A-=this.C.Gh},function(){this.F=this.F&~this.B|ud(this,this.O,S(this));this.A-=this.C.Gh},function(){var a=S(this),b=this.F;this.xc(this.O.Ac(a,1),b);this.A-=this.C.Hh},function(){var a=S(this),b=this.F;this.oc(this.O.Ac(a,this.ha),b);this.A-=this.C.Hh},function(){var a=1,b=0,c=this.Ea,d=
|
||||
this.C.Ih;this.Ja&192&&(a=this.G&c,b=1,d=this.C.Kh,this.Ja&256||(this.A-=this.C.Jh));if(a--){var e=this.Xa(this.O.Fc(this.J&c,1));this.xc(this.hb.Ac(this.I&c,1),e);this.V&4096||(e=this.ea&1024?-1:1,this.J=this.J&~c|this.J+e&c,this.I=this.I&~c|this.I+e&c,this.A-=d,this.G=this.G&~c|this.G-b&c,a&&(cf(this),this.V|=256))}},function(){var a=1,b=0,c=this.Ea,d=this.C.Ih;this.Ja&192&&(a=this.G&c,b=1,d=this.C.Kh,this.Ja&256||(this.A-=this.C.Jh));if(a--){var e=ud(this,this.O,this.J&c);this.oc(this.hb.Ac(this.I&
|
||||
128):(this.resultType&=-17,this.ea&=-129);this.A-=this.C.ec},function(){this.F=this.F&-65281|(yd(this)&213)<<8;this.A-=this.C.ec},function(){var a=this.F&-256,b;b=S(this);b=this.Wa(this.O.Fc(b,1));this.F=a|b;this.A-=this.C.Gh},function(){this.F=this.F&~this.B|ud(this,this.O,S(this));this.A-=this.C.Gh},function(){var a=S(this),b=this.F;this.xc(this.O.Ac(a,1),b);this.A-=this.C.Hh},function(){var a=S(this),b=this.F;this.oc(this.O.Ac(a,this.ha),b);this.A-=this.C.Hh},function(){var a=1,b=0,c=this.Ea,d=
|
||||
this.C.Ih;this.Ja&192&&(a=this.G&c,b=1,d=this.C.Kh,this.Ja&256||(this.A-=this.C.Jh));if(a--){var e=this.Wa(this.O.Fc(this.J&c,1));this.xc(this.hb.Ac(this.I&c,1),e);this.V&4096||(e=this.ea&1024?-1:1,this.J=this.J&~c|this.J+e&c,this.I=this.I&~c|this.I+e&c,this.A-=d,this.G=this.G&~c|this.G-b&c,a&&(cf(this),this.V|=256))}},function(){var a=1,b=0,c=this.Ea,d=this.C.Ih;this.Ja&192&&(a=this.G&c,b=1,d=this.C.Kh,this.Ja&256||(this.A-=this.C.Jh));if(a--){var e=ud(this,this.O,this.J&c);this.oc(this.hb.Ac(this.I&
|
||||
c,this.ha),e);this.V&4096||(e=this.ea&1024?-this.ha:this.ha,this.J=this.J&~c|this.J+e&c,this.I=this.I&~c|this.I+e&c,this.A-=d,this.G=this.G&~c|this.G-b&c,a&&(cf(this),this.V|=256))}},function(){var a=1,b=0,c=this.Ea,d=this.C.th;this.Ja&192&&(a=this.G&c,b=1,d=this.C.vh,this.Ja&256||(this.A-=this.C.uh));if(a--){var e=zf(this,this.O,this.J&c),f=Bf(this,this.hb,this.I&c);this.V&4096||(vh.call(this,e,f),e=this.ea&1024?-1:1,this.J=this.J&~c|this.J+e&c,this.I=this.I&~c|this.I+e&c,this.G=this.G&~c|this.G-
|
||||
b&c,this.A-=d-this.C.Xb,a&&hf(this)==(this.Ja&64)&&(cf(this),this.V|=256))}},function(){var a=1,b=0,c=this.Ea,d=this.C.th;this.Ja&192&&(a=this.G&c,b=1,d=this.C.vh,this.Ja&256||(this.A-=this.C.uh));if(a--){var e=Af(this,this.O,this.J&c),f=Cf(this,this.hb,this.I&c);this.V&4096||(wh.call(this,e,f),e=this.ea&1024?-this.ha:this.ha,this.J=this.J&~c|this.J+e&c,this.I=this.I&~c|this.I+e&c,this.G=this.G&~c|this.G-b&c,this.A-=d-this.C.Xb,a&&hf(this)==(this.Ja&64)&&(cf(this),this.V|=256))}},function(){lf(this,
|
||||
this.F&this.ca(),128);this.A-=this.C.Be},function(){lf(this,this.F&this.Qa(),this.Ha);this.A-=this.C.Be},function(){var a=1,b=0,c=this.Ea,d=this.C.Th;this.Ja&192&&(a=this.G&c,b=1,d=this.C.Vh,this.Ja&256||(this.A-=this.C.Uh));if(a--){var e=this.F;this.xc(this.hb.Ac(this.I&c,1),e);this.V&4096||(this.G=this.G&~c|this.G-b&c,80546<=this.ic&&80564>=this.ic&&!(this.Ja&2048)!=(103!=this.Xa(this.Ma))&&(c^=-65536),this.I=this.I&~c|this.I+(this.ea&1024?-1:1)&c,this.A-=d,a&&(cf(this),this.V|=256))}},function(){var a=
|
||||
1,b=0,c=this.Ea,d=this.C.Th;this.Ja&192&&(a=this.G&c,b=1,d=this.C.Vh,this.Ja&256||(this.A-=this.C.Uh));if(a--){var e=this.F;this.oc(this.hb.Ac(this.I&c,this.ha),e);this.V&4096||(this.I=this.I&~c|this.I+(this.ea&1024?-this.ha:this.ha)&c,this.G=this.G&~c|this.G-b&c,this.A-=d,a&&(cf(this),this.V|=256))}},function(){var a=1,b=0,c=this.Ea,d=this.C.Ah;this.Ja&192&&(a=this.G&c,b=1,d=this.C.Ch,this.Ja&256||(this.A-=this.C.Bh));if(a--){var e=this.Xa(this.O.Fc(this.J&c,1));this.V&4096||(this.F=this.F&-256|
|
||||
this.F&this.ca(),128);this.A-=this.C.Be},function(){lf(this,this.F&this.Qa(),this.Ha);this.A-=this.C.Be},function(){var a=1,b=0,c=this.Ea,d=this.C.Th;this.Ja&192&&(a=this.G&c,b=1,d=this.C.Vh,this.Ja&256||(this.A-=this.C.Uh));if(a--){var e=this.F;this.xc(this.hb.Ac(this.I&c,1),e);this.V&4096||(this.G=this.G&~c|this.G-b&c,80546<=this.ic&&80564>=this.ic&&!(this.Ja&2048)!=(103!=this.Wa(this.Ma))&&(c^=-65536),this.I=this.I&~c|this.I+(this.ea&1024?-1:1)&c,this.A-=d,a&&(cf(this),this.V|=256))}},function(){var a=
|
||||
1,b=0,c=this.Ea,d=this.C.Th;this.Ja&192&&(a=this.G&c,b=1,d=this.C.Vh,this.Ja&256||(this.A-=this.C.Uh));if(a--){var e=this.F;this.oc(this.hb.Ac(this.I&c,this.ha),e);this.V&4096||(this.I=this.I&~c|this.I+(this.ea&1024?-this.ha:this.ha)&c,this.G=this.G&~c|this.G-b&c,this.A-=d,a&&(cf(this),this.V|=256))}},function(){var a=1,b=0,c=this.Ea,d=this.C.Ah;this.Ja&192&&(a=this.G&c,b=1,d=this.C.Ch,this.Ja&256||(this.A-=this.C.Bh));if(a--){var e=this.Wa(this.O.Fc(this.J&c,1));this.V&4096||(this.F=this.F&-256|
|
||||
e,this.J=this.J&~c|this.J+(this.ea&1024?-1:1)&c,this.G=this.G&~c|this.G-b&c,this.A-=d,a&&(cf(this),this.V|=256))}},function(){var a=1,b=0,c=this.Ea,d=this.C.Ah;this.Ja&192&&(a=this.G&c,b=1,d=this.C.Ch,this.Ja&256||(this.A-=this.C.Bh));if(a--){var e=ud(this,this.O,this.J&c);this.V&4096||(this.F=this.F&~this.B|e,this.J=this.J&~c|this.J+(this.ea&1024?-this.ha:this.ha)&c,this.G=this.G&~c|this.G-b&c,this.A-=d,a&&(cf(this),this.V|=256))}},function(){var a=1,b=0,c=this.Ea,d=this.C.Nh;this.Ja&192&&(a=this.G&
|
||||
c,b=1,d=this.C.Ph,this.Ja&256||(this.A-=this.C.Oh));a--&&(vh.call(this,this.F&255,Bf(this,this.hb,this.I&c)),this.V&4096||(this.I=this.I&~c|this.I+(this.ea&1024?-1:1)&c,this.G=this.G&~c|this.G-b&c,this.A-=d-this.C.Xb,a&&hf(this)==(this.Ja&64)&&(cf(this),this.V|=256)))},function(){var a=1,b=0,c=this.Ea,d=this.C.Nh;this.Ja&192&&(a=this.G&c,b=1,d=this.C.Ph,this.Ja&256||(this.A-=this.C.Oh));a--&&(wh.call(this,this.F&this.B,Cf(this,this.hb,this.I&c)),this.V&4096||(this.I=this.I&~c|this.I+(this.ea&1024?
|
||||
-this.ha:this.ha)&c,this.G=this.G&~c|this.G-b&c,this.A-=d-this.C.Xb,a&&hf(this)==(this.Ja&64)&&(cf(this),this.V|=256)))},function(){this.F=this.F&-256|this.ca();this.A-=this.C.ec},function(){this.G=this.G&-256|this.ca();this.A-=this.C.ec},function(){this.H=this.H&-256|this.ca();this.A-=this.C.ec},function(){this.D=this.D&-256|this.ca();this.A-=this.C.ec},function(){this.F=this.F&-65281|this.ca()<<8;this.A-=this.C.ec},function(){this.G=this.G&-65281|this.ca()<<8;this.A-=this.C.ec},function(){this.H=
|
||||
|
|
@ -255,8 +255,8 @@ a&&(this.Aa=0);this.Aa?(mf(this),of(this)):(nf(this),pf(this));this.Ua=!0;this.A
|
|||
cj,cj,cj,cj,cj,cj],Fd=[function(a){var b=a+1|0;df(this,a,1,b,this.Ha|62);this.A-=-1===this.X?this.C.Hf:this.C.Gf;return b&this.B},function(a){var b=a-1|0;df(this,a,1,b,this.Ha|62,!0);this.A-=-1===this.X?this.C.Hf:this.C.Gf;return b&this.B},function(a){vd(this,v(this));$e(this,a);this.A-=-1===this.X?this.C.Zi:this.C.Yi;this.V|=2;return a},function(a){if(-1===this.X)return cj.call(this,a);this.Y=this.ka;uh.call(this,a,this.ua(this.X+this.ha));this.A-=this.C.Wi;this.V|=2;this.Y=-1;return a},function(a){$e(this,
|
||||
a);this.A-=-1===this.X?this.C.tj:this.C.sj;this.V|=2;return a},function(a){if(-1===this.X)return cj.call(this,a);Ad(this,a,this.ua(this.X+this.ha));this.A-=this.C.qj;this.V|=2;return a},function(a){var b=a;this.V&512&&(a=a-2&65535,80286>this.na&&(b=a));vd(this,b);this.A-=-1===this.X?this.C.Oc:this.C.Jj;this.V|=2;return a},bj];function oe(){this.da[this.ca()].call(this,Xi);this.A-=-1===this.X?6:13}function pe(){this.qa[this.ca()].call(this,Wi);this.A-=-1===this.X?12:19}var ge=Array(256);
|
||||
ge[0]=function(){var a=this.ca();16>(a&56)&&(this.V|=1);this.Na[a].call(this,this.$f,hj)};ge[1]=function(){var a=this.ca();a&16||(this.V|=1);this.Na[a].call(this,Qj,hj)};ge[2]=function(){!(this.gb&1)||this.ea&131072?p.call(this,6):this.da[this.ca()].call(this,Jh)};ge[3]=function(){!(this.gb&1)||this.ea&131072?p.call(this,6):this.da[this.ca()].call(this,Qh)};
|
||||
ge[5]=function(){this.ta?p.call(this,13,0,0,!0):(wf(this,this.ua(2054)),this.I=this.ua(2086),this.J=this.ua(2088),this.K=this.ua(2090),this.D=this.ua(2094),this.H=this.ua(2096),this.G=this.ua(2098),this.F=this.ua(2100),kd(this.hb,2102,this.ua(2084)),kd(this.Ba,2108,this.ua(2082)),kd(this.za,2114,this.ua(2080)),kd(this.Db,2120,this.ua(2078)),zd(this,this.ua(2072)),$e(this,this.ua(2074)),t(this,this.ua(2092)),this.gd=this.ua(2126)|this.Xa(2128)<<16,this.de=this.gd+this.ua(2130),kd(this.Jc,2132,this.ua(2076)),
|
||||
this.hd=this.ua(2138)|this.Xa(2140)<<16,this.ee=this.hd+this.ua(2142),kd(this.ab,2144,this.ua(2070)),this.A-=195)};ge[6]=function(){this.ta?p.call(this,13,0):(this.gb&=-9,this.A-=2)};ge[11]=Hd;ge[166]=Hd;ge[255]=Hd;var w=[];w[5]=Hd;w[7]=function(){this.ta?p.call(this,13,0,0,!0):(he.call(this),this.A-=100)};
|
||||
ge[5]=function(){this.ta?p.call(this,13,0,0,!0):(wf(this,this.ua(2054)),this.I=this.ua(2086),this.J=this.ua(2088),this.K=this.ua(2090),this.D=this.ua(2094),this.H=this.ua(2096),this.G=this.ua(2098),this.F=this.ua(2100),kd(this.hb,2102,this.ua(2084)),kd(this.Ba,2108,this.ua(2082)),kd(this.za,2114,this.ua(2080)),kd(this.Db,2120,this.ua(2078)),zd(this,this.ua(2072)),$e(this,this.ua(2074)),t(this,this.ua(2092)),this.gd=this.ua(2126)|this.Wa(2128)<<16,this.de=this.gd+this.ua(2130),kd(this.Jc,2132,this.ua(2076)),
|
||||
this.hd=this.ua(2138)|this.Wa(2140)<<16,this.ee=this.hd+this.ua(2142),kd(this.ab,2144,this.ua(2070)),this.A-=195)};ge[6]=function(){this.ta?p.call(this,13,0):(this.gb&=-9,this.A-=2)};ge[11]=Hd;ge[166]=Hd;ge[255]=Hd;var w=[];w[5]=Hd;w[7]=function(){this.ta?p.call(this,13,0,0,!0):(he.call(this),this.A-=100)};
|
||||
w[32]=function(){if(this.ta)p.call(this,13,0);else{var a,b=this.ca();switch((b&56)>>3){case 0:a=this.gb;break;case 2:a=this.oe;break;case 3:a=this.Nd;break;default:he.call(this);return}ve(this,b&7,a);this.A-=6}};w[33]=function(){if(this.ta)p.call(this,13,0);else{var a=this.ca(),b=(a&56)>>3;4==b||5==b?he.call(this):(ve(this,a&7,this.Ka[b]),this.A-=22)}};
|
||||
w[34]=function(){if(this.ta)p.call(this,13,0);else{var a=this.ca(),b=ue(this,a&7);switch((a&56)>>3){case 0:Kh.call(this,b);this.A-=10;break;case 2:this.oe=b;this.A-=4;break;case 3:Bd.call(this,b);this.A-=5;break;default:he.call(this)}}};w[35]=function(){if(this.ta)p.call(this,13,0);else{var a=this.ca(),b=(a&56)>>3;4==b||5==b?he.call(this):(a=ue(this,a&7),a!=this.Ka[b]&&(Ue(this,!1),this.Ka[b]=a,Ue(this,!0)),this.A-=4>b?22:14)}};
|
||||
w[36]=function(){if(this.ta)p.call(this,13,0);else{var a=this.ca(),b=(a&56)>>3;6>b?he.call(this):(ve(this,a&7,this.we[b]),this.A-=12)}};w[38]=function(){if(this.ta)p.call(this,13,0);else{var a=this.ca(),b=(a&56)>>3;6>b?he.call(this):(this.we[b]=ue(this,a&7),this.A-=12)}};w[128]=function(){var a=this.Qa();kf(this)?($e(this,v(this)+a),this.A-=this.C.eb):this.A-=this.C.fb};w[129]=function(){var a=this.Qa();kf(this)?this.A-=this.C.fb:($e(this,v(this)+a),this.A-=this.C.eb)};
|
||||
|
|
@ -821,7 +821,7 @@ function Fk(a,b,c,d,e){var f=a.R[b],g=f.zc[c],k=g.Hb[f.Nb];n(a,768)&&m(a,d,null,
|
|||
function Hk(a,b,c,d,e){var f=a.R[b],g=f.zc[c],k=g.Bb[f.Nb];n(a,768)&&m(a,d,null,e,"DMA"+b+".CHANNEL"+c+".COUNT["+f.Nb+"]",k,!0);f.Nb^=1;b||0!=c||f.Nb||(g.Bb[0]--,0>g.Bb[0]&&(g.Bb[0]=255,g.Bb[1]--,0>g.Bb[1]&&(g.Bb[1]=255)));return k}function Ik(a,b,c,d,e,f){var g=a.R[b];n(a,768)&&m(a,d,e,f,"DMA"+b+".CHANNEL"+c+".COUNT["+g.Nb+"]",null,!0);a=g.zc[c];a.Bb[g.Nb]=a.Bc[g.Nb]=e;g.Nb^=1}function Jk(a,b,c,d){var e=a.R[b],f=e.jd|1;e.jd&=-16;n(a,768)&&m(a,c,null,d,"DMA"+b+".STATUS",f,!0);return f}
|
||||
function Kk(a,b,c,d,e){var f=a.R[b];n(a,768)&&m(a,c,d,e,"DMA"+b+".REQ",null,!0);a=d&3;f.jd=f.jd&~(16<<a)|(d&4)<<a+2;f.si=d}function Lk(a,b,c,d,e){var f=a.R[b];n(a,768)&&m(a,c,d,e,"DMA"+b+".MASK",null,!0);b=d&3;c=f.zc[b];c.ye=!!(d&4);c.ye||Mk(a,f.Xl+b)}function Nk(a,b,c,d,e){n(a,768)&&m(a,c,d,e,"DMA"+b+".MODE",null,!0);a.R[b].zc[d&3].mode=d}function Ok(a,b,c,d,e){n(a,768)&&m(a,c,d,e,"DMA"+b+".MASTER_CLEAR",null,!0);a=a.R[b];for(b=0;b<a.zc.length;b++)yk(a,b)}
|
||||
function Pk(a,b,c,d,e){var f=a.R[b].zc[c].eg;n(a,768)&&m(a,d,null,e,"DMA"+b+".CHANNEL"+c+".PAGE",f,!0);return f}function Qk(a,b,c,d,e,f){n(a,768)&&m(a,d,e,f,"DMA"+b+".CHANNEL"+c+".PAGE",null,!0);a.R[b].zc[c].eg=e}function Rk(a,b,c,d){var e=a.Ga[b];n(a,768)&&m(a,c,null,d,"DMA.SPARE"+b+".PAGE",e,!0);return e}function Sk(a,b,c,d,e){n(a,768)&&m(a,c,d,e,"DMA.SPARE"+b+".PAGE",null,!0);a.Ga[b]=d}function Tk(a,b,c,d,e){Ak(a.R[b>>2].zc[b&3],c,d,e)}
|
||||
function Mk(a,b,c){b=a.R[b>>2].zc[b&3];b.jg&&b.bh&&b.zg?(c&&(b.done=c),b.ye||Uk(a,b,!0)):c&&c(!0)}function Uk(a,b,c){c&&(b.count=b.Bb[1]<<8|b.Bb[0],b.type=b.mode&12,b.Hi=b.td=!1);for(var d=!1;0<=b.count&&(c=b.eg<<16|b.Hb[1]<<8|b.Hb[0],4==b.type?(d=!0,function(c){b.bh.call(b.jg,b.zg,-1,function(f,g){0>f&&(b.Hi||(b.Hi=!0),f=255);b.ye||a.ja.xc(c,f);(d=g)&&setTimeout(function(){Vk(b)||Uk(a,b)},0)})}(c)):8==b.type?(c=a.ja.Xa(c),0>b.bh.call(b.jg,b.zg,c)&&(b.td=!0)):0!=b.type&&(b.td=!0)),!d&&!Vk(b););}
|
||||
function Mk(a,b,c){b=a.R[b>>2].zc[b&3];b.jg&&b.bh&&b.zg?(c&&(b.done=c),b.ye||Uk(a,b,!0)):c&&c(!0)}function Uk(a,b,c){c&&(b.count=b.Bb[1]<<8|b.Bb[0],b.type=b.mode&12,b.Hi=b.td=!1);for(var d=!1;0<=b.count&&(c=b.eg<<16|b.Hb[1]<<8|b.Hb[0],4==b.type?(d=!0,function(c){b.bh.call(b.jg,b.zg,-1,function(f,g){0>f&&(b.Hi||(b.Hi=!0),f=255);b.ye||a.ja.xc(c,f);(d=g)&&setTimeout(function(){Vk(b)||Uk(a,b)},0)})}(c)):8==b.type?(c=a.ja.Wa(c),0>b.bh.call(b.jg,b.zg,c)&&(b.td=!0)):0!=b.type&&(b.td=!0)),!d&&!Vk(b););}
|
||||
function Vk(a){if(!a.td&&0<=--a.count&&(a.mode&32?(a.Hb[0]--,0>a.Hb[0]&&(a.Hb[0]=255,a.Hb[1]--,0>a.Hb[1]&&(a.Hb[1]=255))):(a.Hb[0]++,255<a.Hb[0]&&(a.Hb[0]=0,a.Hb[1]++,255<a.Hb[1]&&(a.Hb[1]=0))),!a.ye))return!1;var b=a.controller;b.jd=b.jd&~(16<<a.Li)|1<<a.Li;a.mode&16||(a.ye=!0,a.jg=a.zg=null);a.done&&(a.done(!a.td),a.done=null);return!0}function Wk(a,b,c){var d=0,e=a.pc[b];if(null!=e.tf)switch(e.tf&3){case 2:d=e.kc;break;case 3:d=e.Uc}n(a,34048)&&m(a,e.port,null,c,"PIC"+b,d,!0);return d}
|
||||
function Xk(a,b,c,d){var e=a.pc[b];n(a,34048)&&m(a,e.port,c,d,"PIC"+b,null,!0);if(c&16)e.Vd=0,e.Tc[e.Vd++]=c,e.yd=0,e.se=7,e.kc=e.Uc=0,e.tf=10;else if(c&8)c&100&&n(a,1073741824)&&nb(a,"PIC"+b+"("+fa(e.port)+"): unsupported OCW3 command "+fa(c),!0,!0),e.tf=c;else if(d=c&224,d&32){var f,g=0;if(96==(d&96))g=1<<(c&7);else for(f=e.se+1;;){f&=7;var k=1<<f;if(e.Uc&k){g=k;break}if(f++==e.se)break}e.Uc&g&&(e.Uc&=~g,Yk(a));d&128&&n(a,1073741824)&&nb(a,"PIC"+b+"("+fa(e.port)+"): unsupported OCW2 rotate command "+
|
||||
fa(c),!0,!0)}else 192==d?e.se=c&7:n(a,1073741824)&&nb(a,"PIC"+b+"("+fa(e.port)+"): unsupported OCW2 automatic EOI command "+fa(c),!0,!0)}function Zk(a,b,c){var d=a.pc[b],e=d.yd;n(a,34048)&&m(a,d.port+1,null,c,"PIC"+b,e,!0);return e}function $k(a,b,c,d){var e=a.pc[b];n(a,34048)&&m(a,e.port+1,c,d,"PIC"+b,null,!0);e.Vd<e.Tc.length?(e.Tc[e.Vd++]=c,2==e.Vd&&e.Tc[0]&2&&e.Vd++,3!=e.Vd||e.Tc[0]&1||e.Vd++):(e.yd=c,d=a.M,d.V|=4,Yk(a,b||253!=c?0:6))}
|
||||
|
|
@ -861,8 +861,8 @@ function pl(a){if(!tb(a))if(!a.P)sb(a);else if(a.A&&a.ja){if(a.A.length!=a.R)ub(
|
|||
b.nb?rl(b,c,d||[12640,8752],8):b.nb==sl&&rl(b,c,d||[14221,16269],8),sb(b)):a.Va("Unable to find component: "+a.C));delete a.A}}sb(a)}}Qa(function(){for(var a=kb(window.document,"pcjs","rom"),b=0;b<a.length;b++){var c=a[b],d=ib(c),d=new ol(d);jb(d,c)}});function tl(a){Wa.call(this,"RAM",a,tl);this.C=a.addr;this.A=a.size;this.ia=a.test;this.P=!!this.A;this.O=!1}eb(tl);h=tl.prototype;h.Hc=function(a,b,c,d){this.ja=b;this.M=c;this.ma=d;this.R=Eb(a,"ChipSet");sb(this)};
|
||||
h.mc=function(a,b){return!b&&(this.reset(),a&&this.controller&&!this.restore(a))?!1:!0};h.lc=function(a){return a&&this.controller?this.save():!0};
|
||||
h.reset=function(){if(!this.C&&!this.P&&this.R){var a=1024*rk(this.R);this.A&&a!=this.A&&($b(this.ja,this.C,this.A),this.O=!1);this.A=a}!this.O&&this.A&&Vb(this.ja,this.C,this.A,1)&&(this.O=!0,this.status(Math.floor(this.A/1024)+"Kb allocated"),"ramCPQ"==this.ce&&(this.controller=new ul(this),Vb(this.ja,vl,4,4,this.controller)));if(this.O){if(this.ia||gc(this.ja,1138,4660),"ramCPQ"!=this.ce&&this.R&&(a=this.R,a.A)){var b=1048576>this.C?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;vk(a)}}else Ba("No RAM allocated")};h.save=function(){var a=new We(this);this.controller&&Xe(a,0,this.controller.save());return a.data()};h.restore=function(a){return this.controller?this.controller.restore(a[0]):!0};function ul(a){this.O=a;this.ma=wl;this.R=xl;this.C=yl;this.A=null}var vl=-2134900736,wl=65535,xl=2575,yl=2,zl=[null,0],Al=[function(a){return this.controller.Xa(a)},null,null,function(a,b){this.controller.xc(a,b)},null,null];h=ul.prototype;h.save=function(){return[this.ma,this.C]};
|
||||
h.restore=function(a){this.xc(0,a[0]&255);this.xc(2,a[1]&255);return!0};h.Xa=function(a){var b=255;2>a?b=a&1?this.R>>8:this.R&255:4>a&&(b=a&1?this.C>>8:this.C&255);return b};h.xc=function(a,b){if(a)2==a&&(this.C=this.C&-256|b);else if(b!=(this.ma&255)){var c=this.O.ja;if(b&1)this.A&&(Xb(c,917504,131072,this.A),this.A=null);else{this.A||(this.A=Yb(c,917504,131072));var d=Yb(c,16646144,131072);Xb(c,917504,131072,d,b&2?1:ac)}this.ma=this.ma&-256|b}};h.Ji=function(){return zl};h.dh=function(){return Al};
|
||||
1]=c>>8;vk(a)}}else Ba("No RAM allocated")};h.save=function(){var a=new We(this);this.controller&&Xe(a,0,this.controller.save());return a.data()};h.restore=function(a){return this.controller?this.controller.restore(a[0]):!0};function ul(a){this.O=a;this.ma=wl;this.R=xl;this.C=yl;this.A=null}var vl=-2134900736,wl=65535,xl=2575,yl=2,zl=[null,0],Al=[function(a){return this.controller.Wa(a)},null,null,function(a,b){this.controller.xc(a,b)},null,null];h=ul.prototype;h.save=function(){return[this.ma,this.C]};
|
||||
h.restore=function(a){this.xc(0,a[0]&255);this.xc(2,a[1]&255);return!0};h.Wa=function(a){var b=255;2>a?b=a&1?this.R>>8:this.R&255:4>a&&(b=a&1?this.C>>8:this.C&255);return b};h.xc=function(a,b){if(a)2==a&&(this.C=this.C&-256|b);else if(b!=(this.ma&255)){var c=this.O.ja;if(b&1)this.A&&(Xb(c,917504,131072,this.A),this.A=null);else{this.A||(this.A=Yb(c,917504,131072));var d=Yb(c,16646144,131072);Xb(c,917504,131072,d,b&2?1:ac)}this.ma=this.ma&-256|b}};h.Ji=function(){return zl};h.dh=function(){return Al};
|
||||
Qa(function(){for(var a=kb(window.document,"pcjs","ram"),b=0;b<a.length;b++){var c=a[b],d=ib(c),d=new tl(d);jb(d,c)}});function Bl(a){Wa.call(this,"Keyboard",a,Bl,65536);Cl(this,a.model);this.da=Ja("Mobi");this.la=Ja("MSIE");nb(this,"mobile keyboard support: "+(this.da?"true":"false"));this.Y=0;this.ka=this.Zg=!1;this.C=[];this.ta=50;sb(this)}eb(Bl);
|
||||
var Dl=["US83","US84","US101"],Y={jn:1,kn:3,mn:26," ":32,"!":33,'"':34,"#":35,$:36,"%":37,"&":38,"'":39,"(":40,")":41,"*":42,"+":43,",":44,"-":45,".":46,"/":47,0:48,1:49,2:50,3:51,4:52,5:53,6:54,7:55,8:56,9:57,":":58,";":59,"<":60,"=":61,">":62,"?":63,"@":64,en:65,fn:66,gn:67,nn:68,E:69,on:70,rn:71,sn:72,tn:73,un:74,vn:75,wn:76,xn:77,yn:78,zn:79,An:80,Q:81,Bn:82,Fn:83,Kn:84,On:85,Pn:86,Qn:87,Sn:88,Tn:89,Un:90,"[":91,"\\":92,"]":93,"^":94,_:95,"`":96,Vn:97,Wn:98,Zn:99,d:100,e:101,$n:102,ao:103,bo:104,
|
||||
co:105,eo:106,k:107,fo:108,ho:109,n:110,jo:111,p:112,q:113,r:114,ko:115,t:116,mo:117,no:118,oo:119,x:120,y:121,z:122,"{":123,"|":124,"}":125,"~":126},El={};El[186]=Y[";"];El[187]=Y["="];El[188]=Y[","];El[189]=Y["-"];El[190]=Y["."];El[191]=Y["/"];El[192]=Y["`"];El[219]=Y["["];El[220]=Y["\\"];El[221]=Y["]"];El[222]=Y["'"];El[173]=Y["-"];var Fl={};Fl[Y["1"]]=Y["!"];Fl[Y["2"]]=Y["@"];Fl[Y["3"]]=Y["#"];Fl[Y["4"]]=Y.$;Fl[Y["5"]]=Y["%"];Fl[Y["6"]]=Y["^"];Fl[Y["7"]]=Y["&"];Fl[Y["8"]]=Y["*"];Fl[Y["9"]]=Y["("];
|
||||
|
|
@ -1093,7 +1093,7 @@ bus:64,mem:128,port:256,dma:512,pic:1024,timer:2048,cmos:4096,rtc:8192,8042:1638
|
|||
h.Hc=function(a,b,c,d){this.ja=b;this.M=c;this.ia=a;this.ic=Eb(a,"FDC");this.Qb=Eb(a,"HDC");this.Vb=Eb(a,"FPU");this.Z=Eb(a,"Mouse");this.Ha=b.O>>2;this.Ea=b.rg;this.$b=new fd(this.M,8,"DBG");this.Oa=Hp;80186<=this.M.na&&(this.Oa=Hp.slice(),this.Oa[15]=Fp,80286<=this.M.na&&(this.Oa[15]=Gp,80386<=this.M.na&&(this.Pa=8)));jk(this,64,function(a){Lp(d,d.M.Lc,a[0])});jk(this,128,function(a){Lp(d,d.M.wa,a[0],d.M.wa!==d.M.Lc)});jk(this,4,function(a){if(a=a[0]){var b=Mp(d,a);if(void 0===b)d.U("invalid selector: "+
|
||||
a);else if(a=Np(d,b,2),d.U("dumpSel("+ga(a?a.ga:b)+"): %"+l(a?a.cc:null,d.Ha)),a){var c,b=!1;if(a.type&4096)a.type&2048?(c="code"+(a.type&512?",readable":",execonly"),a.type&1024&&(c+=",conforming")):(c="data"+(a.type&512?",writable":",readonly"),a.type&1024&&(c+=",expdown")),a.type&256&&(c+=",accessed");else{var k=Op[a.type];k&&(c=k[0],b=k[1])}!c||a.Gb&32768||(c+=",not present");d.U((b?"seg="+ga(a.Ca&65535)+" off="+ga(a.$a):"base="+l(a.Ca,d.Ha)+" limit="+Pp(a.$a))+" type="+fa(a.type>>8)+" ("+c+") ext="+
|
||||
ga(a.ext&-65296)+" dpl="+fa(a.Gc))}}else d.U("no selector")});jk(this,8,function(a){a:{if(a=a[0]){var b=Mp(d,a);if(void 0===b){d.U("invalid task selector: "+a);break a}a=Np(d,b,2)}else a=d.M.ab;d.U("dumpTSS("+ga(a?a.ga:b)+"): %"+l(a?a.Ca:null,d.Ha));if(a){var b="",c=a.type&-513,k=256==c?4:8,q=256==c?Qp:Rp,r,x,B,y;for(y in q)r=q[y],x=a.Ca+r,B=yf(d.M,x,2),2304==c&&(B|=yf(d.M,x+2,2)<<16),b&&(b+="\n"),b+=ga(r)+" "+na(y+":",11)+l(B,k);if(2304==c)for(y=0,r=B>>>16;r<a.fc&&1023>y;)x=a.Ca+r,B=yf(d.M,x,2),
|
||||
b+="\n"+ga(r)+" ports "+ga(y)+"-"+ga(y+15)+": "+ea(B,2),y+=16,r+=2;d.U(b)}}});jk(this,134217728,function(a){var b;(a=a[0])&&(b=Mp(d,a));if(void 0===b)d.U("invalid MCB");else for(d.U("dumpMCB("+ga(b)+")");b;){a=qp(d,0,b);var c=d.Xa(a,1),k=d.ua(a,2),q=d.ua(a,5);if(77!=c&&90!=c)break;d.U(Sp(0,b)+": '"+String.fromCharCode(c)+"' PID="+ga(k)+" LEN="+ga(q)+' "'+Tp(d,a,8)+'"');b+=1+q}});this.R=null;this.xb=0;this.lb=!1;Ke(this.M,48,this.Rl.bind(this));Ke(this.M,65,this.Sl.bind(this));this.ta=null;Ke(this.M,
|
||||
b+="\n"+ga(r)+" ports "+ga(y)+"-"+ga(y+15)+": "+ea(B,2),y+=16,r+=2;d.U(b)}}});jk(this,134217728,function(a){var b;(a=a[0])&&(b=Mp(d,a));if(void 0===b)d.U("invalid MCB");else for(d.U("dumpMCB("+ga(b)+")");b;){a=qp(d,0,b);var c=d.Wa(a,1),k=d.ua(a,2),q=d.ua(a,5);if(77!=c&&90!=c)break;d.U(Sp(0,b)+": '"+String.fromCharCode(c)+"' PID="+ga(k)+" LEN="+ga(q)+' "'+Tp(d,a,8)+'"');b+=1+q}});this.R=null;this.xb=0;this.lb=!1;Ke(this.M,48,this.Rl.bind(this));Ke(this.M,65,this.Sl.bind(this));this.ta=null;Ke(this.M,
|
||||
104,this.Tl.bind(this));sb(this)};function Up(a,b,c,d,e,f){b=Tp(a,b);var g=Np(a,d),g=g?g.$a+1:0,k=(e?"_CODE":"_DATA")+l(c,2);f&&n(a,128)&&a.message(b+" "+(e?"code":"data")+"("+l(c,4)+")=#"+l(d,4)+" len "+l(g));e=Vp(a,b,c);e[b+k]=0;ql(a,b,c,d,0,null,g,e)}
|
||||
function Wp(a,b,c,d){var e=a.ua(b,2),f=a.ua(b,2),g=a.Ta(b,4),k=a.Ta(b,4),q=qp(a,a.Ta(b,4),a.ua(b,2));b=qp(a,a.Ta(b,4),a.ua(b,2));b=Tp(a,b).toUpperCase();var q=Tp(a,q).toUpperCase(),r=(c?"_CODE":"_DATA")+l(e,2);d&&n(a,128)&&a.message((b==q?"":b+"!")+q+" "+(c?"code":"data")+"("+l(e,4)+")="+l(f,4)+":"+l(g)+" len "+l(k));c=Vp(a,q,e);c[q+r]=g;ql(a,q,e,f,g,null,k,c)}function Xp(a,b,c){c=Tp(a,c).toUpperCase();Yp(a,c,b)}
|
||||
h.Rl=function(){var a=this.M;if(null!=this.R&&2752554==a.F){var b=a.H&65535,c=a.J&65535,d=qp(this,u(a)+12,a.za.ga);switch(this.Ta(d)){case 336:Wp(this,qp(this,a.D,b),!c,!!this.R)}}return!0};
|
||||
|
|
@ -1104,13 +1104,13 @@ h.Tl=function(a){var b=this.M,c=b.F&255,d=b.F>>8&255,e=b.D&65535,f=b.G&65535,g=b
|
|||
h.Yb=function(a,b,c){var d=this;switch(b){case "debugInput":return this.Ra=this.ya[b]=c,c.onkeydown=function(a){var b;if(13==a.keyCode)b=c.value,c.value="",up(d,b,!0);else if(27==a.keyCode)c.value=b="";else if(38==a.keyCode?d.W<d.P.length-1&&(b=d.P[++d.W]):40==a.keyCode&&(0<d.W?b=d.P[--d.W]:(b="",d.W=-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.ya[b]=c,La(c,function(){if(d.Ra){var a=d.Ra.value;d.Ra.value=
|
||||
"";up(d,a,!0);return!0}return!1}),!0;case "step":return this.ya[b]=c,La(c,function(a){var b=!1;rb(d,!0)||(qb(d,!0),b=d.nf(a?1:0),qb(d,!1));return b}),!0}return!1};h.bd=function(){this.Ra&&this.Ra.focus()};function aq(a){return a.M&&!!(a.M.gb&1)&&!(a.M.ea&131072)}
|
||||
function Np(a,b,c){var d=aq(a)?2:1;c||(c=d);if(c==d){if(b===a.M.Ba.ga)return a.M.Ba;if(b===a.M.Db.ga)return a.M.Db;if(b===a.M.hb.ga)return a.M.hb;if(b===a.M.za.ga)return a.M.za;if(80386<=a.M.na){if(b===a.M.Tb.ga)return a.M.Tb;if(b===a.M.Ub.ga)return a.M.Ub}if(a.qb&&2==c||!a.$b)return null}a=a.$b;if(2!=c)a.ih(b),a.$a=65535,a.fc=65536;else{var e;c=a.M;b=b&65535;b&4?(d=c.Jc.Ca,e=d+c.Jc.$a|0):(d=c.gd,e=c.de);d=d+(b&65528)|0;if(e-d|0){e=yf(c,d+0,2);var f=yf(c,d+4,2),g=f&7936,k=yf(c,d+2,2)|(f&255)<<16,
|
||||
q=yf(c,d+6,2);80386<=c.na&&(k|=(q&65280)<<16,e|=(q&15)<<16,q&128&&(e=e<<12|4095));a.ga=b;a.Ca=k;a.$a=e;a.fc=(e>>>0)+1;a.Gb=f;a.type=g;a.ext=q;a.cc=d;gd(a,!0,!0,!1)}}return a}h.dc=function(a,b,c){var d=a&&a.Sa;if(null==d&&(d=-1,a)){var e=Np(this,a.ga,a.type);e&&(b=a.Wa||0,c=c||1,d=e=-1===e.cc||e.Zc&&(b>>>0)+c>e.fc||!e.Zc&&(b>>>0)+c<=e.fc?e.Ca+b|0:-1,a.Sa=d)}return d};h.Xa=function(a,b){var c=255,d=this.dc(a,!1,1);-1!==d&&(c=yf(this.M,d,1,5!=a.type)|0,b&&bq(this,a,b));return c};
|
||||
q=yf(c,d+6,2);80386<=c.na&&(k|=(q&65280)<<16,e|=(q&15)<<16,q&128&&(e=e<<12|4095));a.ga=b;a.Ca=k;a.$a=e;a.fc=(e>>>0)+1;a.Gb=f;a.type=g;a.ext=q;a.cc=d;gd(a,!0,!0,!1)}}return a}h.dc=function(a,b,c){var d=a&&a.Sa;if(null==d&&(d=-1,a)){var e=Np(this,a.ga,a.type);e&&(b=a.Xa||0,c=c||1,d=e=-1===e.cc||e.Zc&&(b>>>0)+c>e.fc||!e.Zc&&(b>>>0)+c<=e.fc?e.Ca+b|0:-1,a.Sa=d)}return d};h.Wa=function(a,b){var c=255,d=this.dc(a,!1,1);-1!==d&&(c=yf(this.M,d,1,5!=a.type)|0,b&&bq(this,a,b));return c};
|
||||
h.vb=function(a,b){return a.Sb?this.Ta(a,b?4:0):this.ua(a,b?2:0)};h.ua=function(a,b){var c=65535,d=this.dc(a,!1,2);-1!==d&&(c=yf(this.M,d,2,5!=a.type),b&&bq(this,a,b));return c};h.Ta=function(a,b){var c=-1,d=this.dc(a,!1,4);-1!==d&&(c=yf(this.M,d,4,5!=a.type),b&&bq(this,a,b));return c};h.xc=function(a,b,c){var d=this.dc(a,!0,1);if(-1!==d){if(5!=a.type)this.M.xc(d,b);else{var e=this.ja;e.wa[(d&e.Jb)>>>e.La].of(d&e.A,b&255,d)}c&&bq(this,a,c);Qc(this.M,!0)}};
|
||||
h.pb=function(a,b,c){var d=this.dc(a,!0,2);-1!==d&&(5!=a.type?this.M.pb(d,b):gc(this.ja,d,b),c&&bq(this,a,c),Qc(this.M,!0))};function qp(a,b,c,d,e,f,g){return cq(a,{},b,c,d,e,f,g)}function cq(a,b,c,d,e,f,g,k){b.Wa=c||0;b.ga=d;b.Sa=e;b.type=f||(aq(a)?2:1);b.Sb=null!=g?g:a.M&&4==a.M.Ba.ha;b.sc=null!=k?k:a.M&&4==a.M.Ba.cd;b.Td=!1;return b}function dq(a){return[a.Wa,a.ga,a.Sa,a.Td,a.Sb,a.sc,a.Ne,a.Sd]}function eq(a){return{Wa:a[0],ga:a[1],Sa:a[2],Td:a[3],Sb:a[4],sc:a[5],Ne:a[6],Sd:a[7]}}
|
||||
function fq(a,b,c){if(null!=b.ga&&(a=Np(a,b.ga,b.type))){var d=b.Wa&a.Ea;if(!a.Zc){if(d>>>0>=a.fc)return!1}else if(d>>>0<a.fc)return!1;c&&(b.Wa=d,b.Sb=4==a.ha,b.sc=4==a.cd)}return!0}
|
||||
function gq(a,b,c,d){var e,f=c?a.da:a.Fb;c=d?0:f.type;var g=f.Wa,k=f.ga,f=f.Sa;if(void 0!==b){b=hq(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;k=null;break;default:0<=f&&(c=0),e=""}e&&(b=b.substr(e.length),f-=e.length);e=b;var q;if(e.match(/^[a-z_][a-z0-9_]*$/i))for(var r=e.toUpperCase(),x=0;x<a.C.length;x++){e=a.C[x];var B=e.Od[r];if(void 0!==B){r=B.o;void 0!==r&&(q=B.s,void 0===q&&(q=e.ga),q=qp(a,r,q,B.p));
|
||||
break}}if(e=q)return e;0>f?null!=k?(g=iq(a,b,void 0),f=null):(f=iq(a,b,void 0),null==f&&(g=null)):(k=iq(a,b.substring(0,f),void 0),g=iq(a,b.substring(f+1),void 0),f=null)}null!=g&&(e=qp(a,g,k,f,c),d||fq(a,e,!0)||(a.U("invalid offset: "+$p(e)),e=null));return e}function jq(a,b,c){c&&(c=c.match(/(['"])(.*?)\1/))&&(b.xk=kq(a,b.Wj=c[2]))}function bq(a,b,c){c=c||1;null!=b.Sa&&(b.Sa+=c);null!=b.ga&&(b.Wa+=c,fq(a,b)||(b.Wa=0,b.Sa=null))}
|
||||
function Sp(a,b,c){return null!=b?l(b,4)+":"+l(a,a&-65536||c?8:4):l(a)}function $p(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.ga?"":"%"}return null==a.ga?b+l(a.Sa):b+Sp(a.Wa,a.ga,a.sc)}function Tp(a,b,c){var d="";for(c=c||256;d.length<c;){var e=a.Xa(b,1);if(!e||36==e||127<=e)break;d+=32<=e?String.fromCharCode(e):"."}return d}
|
||||
h.pb=function(a,b,c){var d=this.dc(a,!0,2);-1!==d&&(5!=a.type?this.M.pb(d,b):gc(this.ja,d,b),c&&bq(this,a,c),Qc(this.M,!0))};function qp(a,b,c,d,e,f,g){return cq(a,{},b,c,d,e,f,g)}function cq(a,b,c,d,e,f,g,k){b.Xa=c||0;b.ga=d;b.Sa=e;b.type=f||(aq(a)?2:1);b.Sb=null!=g?g:a.M&&4==a.M.Ba.ha;b.sc=null!=k?k:a.M&&4==a.M.Ba.cd;b.Td=!1;return b}function dq(a){return[a.Xa,a.ga,a.Sa,a.Td,a.Sb,a.sc,a.Ne,a.Sd]}function eq(a){return{Xa:a[0],ga:a[1],Sa:a[2],Td:a[3],Sb:a[4],sc:a[5],Ne:a[6],Sd:a[7]}}
|
||||
function fq(a,b,c){if(null!=b.ga&&(a=Np(a,b.ga,b.type))){var d=b.Xa&a.Ea;if(!a.Zc){if(d>>>0>=a.fc)return!1}else if(d>>>0<a.fc)return!1;c&&(b.Xa=d,b.Sb=4==a.ha,b.sc=4==a.cd)}return!0}
|
||||
function gq(a,b,c,d){var e,f=c?a.da:a.Fb;c=d?0:f.type;var g=f.Xa,k=f.ga,f=f.Sa;if(void 0!==b){b=hq(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;k=null;break;default:0<=f&&(c=0),e=""}e&&(b=b.substr(e.length),f-=e.length);e=b;var q;if(e.match(/^[a-z_][a-z0-9_]*$/i))for(var r=e.toUpperCase(),x=0;x<a.C.length;x++){e=a.C[x];var B=e.Od[r];if(void 0!==B){r=B.o;void 0!==r&&(q=B.s,void 0===q&&(q=e.ga),q=qp(a,r,q,B.p));
|
||||
break}}if(e=q)return e;0>f?null!=k?(g=iq(a,b,void 0),f=null):(f=iq(a,b,void 0),null==f&&(g=null)):(k=iq(a,b.substring(0,f),void 0),g=iq(a,b.substring(f+1),void 0),f=null)}null!=g&&(e=qp(a,g,k,f,c),d||fq(a,e,!0)||(a.U("invalid offset: "+$p(e)),e=null));return e}function jq(a,b,c){c&&(c=c.match(/(['"])(.*?)\1/))&&(b.xk=kq(a,b.Wj=c[2]))}function bq(a,b,c){c=c||1;null!=b.Sa&&(b.Sa+=c);null!=b.ga&&(b.Xa+=c,fq(a,b)||(b.Xa=0,b.Sa=null))}
|
||||
function Sp(a,b,c){return null!=b?l(b,4)+":"+l(a,a&-65536||c?8:4):l(a)}function $p(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.ga?"":"%"}return null==a.ga?b+l(a.Sa):b+Sp(a.Xa,a.ga,a.sc)}function Tp(a,b,c){var d="";for(c=c||256;d.length<c;){var e=a.Wa(b,1);if(!e||36==e||127<=e)break;d+=32<=e?String.fromCharCode(e):"."}return d}
|
||||
function Lp(a,b,c,d){var e=0,f=0,g=b.length;if(c){e=a.dc(gq(a,c));if(-1===e){a.U("invalid address: "+c);return}f=e>>>a.M.La;g=1}a.U("blockid "+(d?"linear ":"physical")+" blockaddr used size type");a.U("-------- --------- ---------- ------ ------ ----");c=-1;for(var k=0;g--;)(d=b[f])&&5==d.type&&(d=Gc(a.M,e,!1,!0)),d.type==c?k++||a.U("..."):(c=d.type,k=xc[c],6==c&&(d=d.zd,k+=" -> "+xc[d.type]),d&&a.U(l(d.id)+" %"+l(f<<a.M.La)+" %%"+l(d.Sa)+" "+ga(d.Ie)+" "+ga(d.size)+" "+k),
|
||||
c!=wc&&5!=c&&(c=-1),k=0),e+=a.M.Pb,f++}function lq(a,b,c){a=l(a)+" "+l(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 Op={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]},Qp={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,
|
||||
|
|
@ -1132,15 +1132,15 @@ h.stop=function(a,b){if(this.sa.Mb){this.sa.Mb=!1;this.ka=b-this.wd;if(!this.O){
|
|||
function Kf(a,b,c){if(0<c&&(a.Ua&&!--a.Ua||uq(a,b,1,a.A)))return!0;0<=c&&a.Y.length&&(a.va++,b=yf(a.M,b),null!=b&&(a.Y[b][1]++,cq(a,a.qa[a.Na],v(a.M),a.M.Ba.ga),++a.Na==a.qa.length&&(a.Na=0)));return!1}function Dc(a,b,c){return uq(a,b,c||1,a.xa)?(a.Zb(!0),!0):!1}function Fc(a,b,c){return uq(a,b,c||1,a.la)?(a.Zb(!0),!0):!1}function kc(a,b,c){a.U("break on input from port "+ga(b)+": "+l(c));a.Zb(!0)}function oc(a,b,c){a.U("break on output to port "+ga(b)+": "+l(c));a.Zb(!0)}
|
||||
function rp(a){var b,c;a.A=["bp"];if(void 0!==a.xa)for(b=1;b<a.xa.length;b++){c=a.xa[b];var d=a.M,e=a.dc(c);Hc((5!=c.type?d.wa:d.Lc)[e>>>d.La],!1)}a.xa=["br"];if(void 0!==a.la)for(b=1;b<a.la.length;b++)c=a.la[b],d=a.M,e=a.dc(c),Hc((5!=c.type?d.wa:d.Lc)[e>>>d.La],!0);a.la=["bw"];a.qb=0}
|
||||
h.Pd=function(a,b,c){var d=!0;c||Zp(this,a,b,!1,!0);if(a!=this.A){var e=this.dc(b);if(-1===e)this.U("invalid address: "+$p(b)),d=!1;else{var f=this.M;(5!=b.type?f.wa:f.Lc)[e>>>f.La].Pd(e&f.Ga,a==this.la);b.ga=null}}d&&(a.push(b),c?(null!=b.Sa&&(b.ga=null),b.Td=!0):(vq(this,a,a.length-1,"set"),sp(this)));return d};
|
||||
function Zp(a,b,c,d,e){for(var f=!1,g=wq(a,a.dc(c)),k=1;k<b.length;k++){var q=b[k];if(-1!==g&&g==wq(a,a.dc(q))||-1===g&&c.ga==q.ga&&c.Wa==q.Wa)if(!d||q.Td){f=!0;q.Td||e||vq(a,b,k,"cleared");b.splice(k,1);b!=a.A&&(c=a.M,Hc((5!=q.type?c.wa:c.Lc)[g>>>c.La],b==a.la));q.Td||sp(a);break}}return f}function xq(a,b){for(var c=1;c<b.length;c++)vq(a,b,c);return b.length-1}function vq(a,b,c,d){c=b[c];a.U(b[0]+" "+$p(c)+(d?" "+d:c.Wj?' "'+c.Wj+'"':""))}
|
||||
function Zp(a,b,c,d,e){for(var f=!1,g=wq(a,a.dc(c)),k=1;k<b.length;k++){var q=b[k];if(-1!==g&&g==wq(a,a.dc(q))||-1===g&&c.ga==q.ga&&c.Xa==q.Xa)if(!d||q.Td){f=!0;q.Td||e||vq(a,b,k,"cleared");b.splice(k,1);b!=a.A&&(c=a.M,Hc((5!=q.type?c.wa:c.Lc)[g>>>c.La],b==a.la));q.Td||sp(a);break}}return f}function xq(a,b){for(var c=1;c<b.length;c++)vq(a,b,c);return b.length-1}function vq(a,b,c,d){c=b[c];a.U(b[0]+" "+$p(c)+(d?" "+d:c.Wj?' "'+c.Wj+'"':""))}
|
||||
function tq(a,b){if(void 0!==b)uq(a,b,1,a.A,!0),a.O=0;else for(var c=1;c<a.A.length;c++){var d=a.A[c];if(d.Td){if(!Zp(a,a.A,d,!0))break;c=0}}}function wq(a,b){if(-1!==b){var c=a.Ea&-65536;(b&c)==c&&(b&=1048575)}return b}
|
||||
function uq(a,b,c,d,e){var f=!1;if(!a.qb++){b=wq(a,b);n(a,-2147483632)&&204==yf(a.M,b)&&(f=!0);for(var g=1;!f&&g<d.length;g++){var k=d[g];if(!e||k.Td){null!=k.ga&&(k.Sa=null);for(var q=wq(a,a.dc(k)),r=0;r<c;r++)if(b+r==q){var x,f=!0;k.Td&&(Zp(a,d,k,!0),e=!0);if(x=k.xk){for(var f=!1,B=0;B<x.length;B++)if(!yq(a,x[B],!0)){if(x[B].indexOf("if")){f=!0;break}for(var y=B+1;y<x.length&&x[y].indexOf("else");y++)B++;if(y==x.length){f=!0;break}}a.M.sa.Mb||(f=!0)}if(f){e||vq(a,d,g,"hit");break}}}}}a.qb--;return f}
|
||||
function zq(a,b,c,d){for(var e=qp(a,b.Wa,b.ga,b.Sa,b.type),f=a.Xa(b,1),g=4,k=0,q=!1,r=!1;(102==f||103==f)&&g--;)102==f?q||(b.Sb=!b.Sb,q=!0):r||(b.sc=!b.sc,r=!0),k++,f=a.Xa(b,1);var g=-1,r=yp,q=a.Oa[f],x=q[0];if(176==x)var B=a.Xa(b,1),q=Ip[B]||Fp,f=f|B<<8,x=q[0];if(36==x){var g=a.Xa(b,1),B=null,y=g>>3&7,L=(3>(g>>6&3)?0:48)+y;(217==f||219==f)&&52<=L&&(L=y<<4|g&7);(y=Jp[f])&&(B=y[L]);B&&(r=zp,q=B,x=q[0])}x>=r.length&&(g=a.Xa(b,1),q=Kp[x-r.length][g>>3&7],x=q[0]);r=r[x];L=q.length-1;B="";b.Sb&&(18==x?
|
||||
r="CWDE":28==x?r="CDQ":104<=x&&107>=x&&(r+="D"));if(164<=f&&167>=f||170<=f&&175>=f)L=0,b.Sb&&"W"==r.slice(-1)&&(r=r.slice(0,-1)+"D");f=null;x=!0;for(y=1;y<=L;y++){var F,I;F="";I=q[y];if(void 0!==I){null==f&&(f=I>>14);var V=I&15;if(0!=V)if(8==V)x=!1;else{var P=I&240;if(128<=P)if(0>g&&(g=a.Xa(b,1)),160>P){F=a;var ua=L,V=b,X="",oa=g>>6,Za=g&7;if(3>oa){var ia=void 0,P=0==r.indexOf("FI");if(!oa&&(!V.sc&&6==Za||V.sc&&5==Za))oa=2;else{if(V.sc)if(4!=Za)Za+=8;else{var X=F,ia=oa,Ra=V,xa=X.Xa(Ra,1),Gb=xa>>6,
|
||||
Ia=xa>>3&7,xa=xa&7,Da="";if(ia||5!=xa)Da=Dp[xa+8];4!=Ia&&(Da&&(Da+="+"),Da+=Dp[Ia+8],Gb&&(Da+="*"+(1<<Gb)));ia||5!=xa||(Da&&(Da+="+"),Da+=l(X.Ta(Ra,4)));X=Da}X||(X=Dp[Za])}1==oa?(ia=F.Xa(V,1),ia&128?(ia=ia<<24>>24,X+="-"+l(-ia,2)):X+="+"+l(ia,2)):2==oa&&(X&&(X+="+"),V.sc?(ia=F.Ta(V,4),X+=l(ia)):(ia=F.ua(V,2),X+=l(ia,4)));X="["+X+"]";if(1==ua){F="";I&=15;4==I&&(I=V.Sb?5:3);switch(I){case 7:F="FAR";break;case 1:F="BYTE";break;case 3:if(P){F="INT16";break}F="WORD";break;case 5:F="DWORD";break;case 11:if(P){F=
|
||||
"INT32";break}case 11:F="REAL32";break;case 12:if(P){F="INT64";break}case 12:F="REAL64";break;case 13:F="REAL80";break;case 14:F="BCD80"}F&&(X=F+" "+X)}}else X=Aq(F,Za,I,V);F=X}else F=160==P?Aq(a,g&7,I,b):Aq(a,g>>3&7,I,b);else if(16==P)F="1";else if(0==P){F=a;V=I;P=b;I=" ";switch(V&15){case 1:V&12288&&(I=l(F.Xa(P,1),2));break;case 2:I=l(F.Xa(P,1)<<24>>24,P.Sb?8:4);break;case 4:if(P.Sb){I=l(F.Ta(P,4));break}case 3:I=l(F.ua(P,2),4);break;case 7:P=qp(F,F.vb(P,!0),F.ua(P,2),null,P.type,P.Sb,P.sc);I=$p(P);
|
||||
F=Bq(F,P);F[0]&&(I+=" ("+F[0]+")");break;default:I="imm("+ga(V)+")"}F=I}else 32==P?(b.sc?(F=8,I=a.Ta(b,4)):(F=4,I=a.ua(b,2)),F="["+l(I,F)+"]"):48==P?(F=1==V?a.Xa(b,1)<<24>>24:a.vb(b,!0),I=b.Wa+F&(b.Sb?-1:65535),F=l(I,b.Sb?8:4),I=Bq(a,qp(a,I,b.ga)),I[0]&&(F+=" ("+I[0]+")")):96==P?F=9==V?"ST":10==V?"ST("+(g&7)+")":Aq(a,(I&3840)>>8,I,b):112==P?F=Aq(a,(I&3840)>>8,192,b):64==P?F="DS:[SI]":80==P&&(F="ES:[DI]");if(!F||!F.length){B="INVALID";break}0<B.length&&(B+=",");B+=F||"???"}}}g="";q=$p(e)+" ";if(-1!==
|
||||
e.Sa&&-1!==b.Sa){do if(g+=l(a.Xa(e,1),2),null==e.Sa)break;while(e.Sa!=b.Sa)}q+=na(g,e.sc?24:16);q+=na(r,8);B&&(q+=" "+B);a.M.na<Bp[f]&&(c=Bp[f]+" CPU only");c&&x&&(q=na(q,e.sc?74:56)+";"+c,q=a.M.sa.Re?q+("cycles="+Vc(a.M).toString()+" cs="+l(a.M.ba.zf)):q+(null!=d?"="+d.toString():""));Cq(b,x,k);return q}
|
||||
function zq(a,b,c,d){for(var e=qp(a,b.Xa,b.ga,b.Sa,b.type),f=a.Wa(b,1),g=4,k=0,q=!1,r=!1;(102==f||103==f)&&g--;)102==f?q||(b.Sb=!b.Sb,q=!0):r||(b.sc=!b.sc,r=!0),k++,f=a.Wa(b,1);var g=-1,r=yp,q=a.Oa[f],x=q[0];if(176==x)var B=a.Wa(b,1),q=Ip[B]||Fp,f=f|B<<8,x=q[0];if(36==x){var g=a.Wa(b,1),B=null,y=g>>3&7,L=(3>(g>>6&3)?0:48)+y;(217==f||219==f)&&52<=L&&(L=y<<4|g&7);(y=Jp[f])&&(B=y[L]);B&&(r=zp,q=B,x=q[0])}x>=r.length&&(g=a.Wa(b,1),q=Kp[x-r.length][g>>3&7],x=q[0]);r=r[x];L=q.length-1;B="";b.Sb&&(18==x?
|
||||
r="CWDE":28==x?r="CDQ":104<=x&&107>=x&&(r+="D"));if(164<=f&&167>=f||170<=f&&175>=f)L=0,b.Sb&&"W"==r.slice(-1)&&(r=r.slice(0,-1)+"D");f=null;x=!0;for(y=1;y<=L;y++){var F,I;F="";I=q[y];if(void 0!==I){null==f&&(f=I>>14);var V=I&15;if(0!=V)if(8==V)x=!1;else{var P=I&240;if(128<=P)if(0>g&&(g=a.Wa(b,1)),160>P){F=a;var ua=L,V=b,X="",oa=g>>6,Za=g&7;if(3>oa){var ia=void 0,P=0==r.indexOf("FI");if(!oa&&(!V.sc&&6==Za||V.sc&&5==Za))oa=2;else{if(V.sc)if(4!=Za)Za+=8;else{var X=F,ia=oa,Ra=V,xa=X.Wa(Ra,1),Gb=xa>>6,
|
||||
Ia=xa>>3&7,xa=xa&7,Da="";if(ia||5!=xa)Da=Dp[xa+8];4!=Ia&&(Da&&(Da+="+"),Da+=Dp[Ia+8],Gb&&(Da+="*"+(1<<Gb)));ia||5!=xa||(Da&&(Da+="+"),Da+=l(X.Ta(Ra,4)));X=Da}X||(X=Dp[Za])}1==oa?(ia=F.Wa(V,1),ia&128?(ia=ia<<24>>24,X+="-"+l(-ia,2)):X+="+"+l(ia,2)):2==oa&&(X&&(X+="+"),V.sc?(ia=F.Ta(V,4),X+=l(ia)):(ia=F.ua(V,2),X+=l(ia,4)));X="["+X+"]";if(1==ua){F="";I&=15;4==I&&(I=V.Sb?5:3);switch(I){case 7:F="FAR";break;case 1:F="BYTE";break;case 3:if(P){F="INT16";break}F="WORD";break;case 5:F="DWORD";break;case 11:if(P){F=
|
||||
"INT32";break}case 11:F="REAL32";break;case 12:if(P){F="INT64";break}case 12:F="REAL64";break;case 13:F="REAL80";break;case 14:F="BCD80"}F&&(X=F+" "+X)}}else X=Aq(F,Za,I,V);F=X}else F=160==P?Aq(a,g&7,I,b):Aq(a,g>>3&7,I,b);else if(16==P)F="1";else if(0==P){F=a;V=I;P=b;I=" ";switch(V&15){case 1:V&12288&&(I=l(F.Wa(P,1),2));break;case 2:I=l(F.Wa(P,1)<<24>>24,P.Sb?8:4);break;case 4:if(P.Sb){I=l(F.Ta(P,4));break}case 3:I=l(F.ua(P,2),4);break;case 7:P=qp(F,F.vb(P,!0),F.ua(P,2),null,P.type,P.Sb,P.sc);I=$p(P);
|
||||
F=Bq(F,P);F[0]&&(I+=" ("+F[0]+")");break;default:I="imm("+ga(V)+")"}F=I}else 32==P?(b.sc?(F=8,I=a.Ta(b,4)):(F=4,I=a.ua(b,2)),F="["+l(I,F)+"]"):48==P?(F=1==V?a.Wa(b,1)<<24>>24:a.vb(b,!0),I=b.Xa+F&(b.Sb?-1:65535),F=l(I,b.Sb?8:4),I=Bq(a,qp(a,I,b.ga)),I[0]&&(F+=" ("+I[0]+")")):96==P?F=9==V?"ST":10==V?"ST("+(g&7)+")":Aq(a,(I&3840)>>8,I,b):112==P?F=Aq(a,(I&3840)>>8,192,b):64==P?F="DS:[SI]":80==P&&(F="ES:[DI]");if(!F||!F.length){B="INVALID";break}0<B.length&&(B+=",");B+=F||"???"}}}g="";q=$p(e)+" ";if(-1!==
|
||||
e.Sa&&-1!==b.Sa){do if(g+=l(a.Wa(e,1),2),null==e.Sa)break;while(e.Sa!=b.Sa)}q+=na(g,e.sc?24:16);q+=na(r,8);B&&(q+=" "+B);a.M.na<Bp[f]&&(c=Bp[f]+" CPU only");c&&x&&(q=na(q,e.sc?74:56)+";"+c,q=a.M.sa.Re?q+("cycles="+Vc(a.M).toString()+" cs="+l(a.M.ba.zf)):q+(null!=d?"="+d.toString():""));Cq(b,x,k);return q}
|
||||
function Aq(a,b,c,d){var e=c&240;if(192==e){if(5<b||4<=b&&80386>a.M.na)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 Cp[b]}
|
||||
function Dq(a,b){var c;switch(b){case "V":c=kf(a.M);break;case "D":c=a.M.ea&1024;break;case "I":c=a.M.ea&512;break;case "T":c=a.M.ea&256;break;case "S":c=jf(a.M);break;case "Z":c=hf(a.M);break;case "A":c=gf(a.M);break;case "P":c=ff(a.M);break;case "C":c=ef(a.M);break;default:c=0}return b+(c?"1":"0")+" "}function Pp(a){return l(a,a&-65536?8:4)}function Eq(a,b){8<=b&&15>=b&&4<a.Pa&&(b+=16);var c=Cp[b];32==b&&80286==a.M.na&&(c="MS");return c+"="+nq(a,b)+" "}
|
||||
function Fq(a,b,c){return b.hc+"="+l(b.ga,4)+(c?"["+l(b.Ca,a.Ha)+","+Pp(b.$a)+"]":"")}function Gq(a,b,c,d,e){return b+"="+(null!=c?l(c,4):"")+"["+l(d,a.Ha)+","+l(e-d,4)+"]"}
|
||||
|
|
@ -1151,12 +1151,12 @@ case "^":d=f^e;break;case "|":d=f|e;break;case "&&":d=f&&e?1:0;break;case "||":d
|
|||
function iq(a,b,c){var d;if(b){b=hq(a,b);for(var e=0,f=!1,g=b,k=[],q=[],r=b.split(/(\|\||&&|\||^|&|!=|==|>=|>>>|>>|>|<=|<<|<|-|\+|%|\/|\*)/);e<r.length;){var x=r[e++],B=x.length,x=pa(x);if(!x){f=!0;break}x=Mp(a,x,null,!1===c);if(void 0===x){f=!0;c=!1;break}k.push(x);if(e==r.length)break;var x=r[e++],y=x.length;q.length&&Iq[x]<Iq[q[q.length-1]]&&Jq(k,q,1);q.push(x);b=b.substr(B+y)}Jq(k,q)&&1==k.length||(f=!0);f?c&&a.U("error parsing '"+g+"' at character "+(g.length-b.length)):(d=k.pop(),c&&Kq(a,null,
|
||||
d))}return d}function hq(a,b){for(var c;(c=b.match(/\{(.*?)}/))&&!(0<=c[1].indexOf("{"));){var d=iq(a,c[1]);b=b.replace("{"+c[1]+"}",null!=d?l(d):"undefined")}for(;(c=b.match(/\[(.*?)]/))&&!(0<=c[1].indexOf("["));)d=gq(a,c[1]),b=b.replace("["+c[1]+"]",d?l(a.vb(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.va-a.Ga}if(null==e)break;c=c.replace(d[0],e.toString())}return c}
|
||||
function Mp(a,b,c,d){var e;void 0!==b?(e=mq(b),0<=e?e=oq(a,e):(e=a.Fa[b],void 0===e&&(e=ca(b))),void 0!==e||d||a.U("invalid "+(c?c:"value")+": "+b)):d||a.U("missing "+(c||"value"));return e}function Kq(a,b,c){var d,e=!1;void 0!==c&&(e=!0,d="0x"+l(c)+" "+c+". ("+ea(c)+")");a.U((null!=b?b+": ":"")+d);return e}function Lq(a,b){if(b)return Kq(a,b,a.Fa[b]);var c=0;for(b in a.Fa)Kq(a,b,a.Fa[b]),c++;return 0<c}pp.prototype.Eb=function(a,b){return a[0]>b[0]?1:a[0]<b[0]?-1:0};
|
||||
function ql(a,b,c,d,e,f,g,k){var q={},r=[],x;for(x in k){var B=k[x];"number"==typeof B&&(k[x]=B={o:B});var y=B.o,L=B.s,F=B.a;if(void 0!==y){void 0!==L&&(q.Wa=y,q.ga=L,q.Sa=null,a.dc(q),(q.Sa&-65536)==(a.ja.rg&-65536)&&(q.Sa&=1048575),B.p=q.Sa);var L=r,y=[y>>>0,x],I=qa(L,y,a.Eb);0>I&&L.splice(-(I+1),0,y)}F&&(B.a=F.replace(/''/g,'"'))}a.C.push({Xf:b,bm:c,ga:d,Wa:e,Sa:f,Ul:g,Od:k,mi:r})}
|
||||
function Yp(a,b,c){for(var d=0;d<a.C.length;d++){var e=a.C[d];if(!b||e.Xf==b)if(b&&c==e.bm||!b&&c==e.ga){a.C.splice(d,1);break}}}function Bq(a,b,c){for(var d=[],e=b.Wa>>>0,f=a.dc(b)>>>0,g=0;g<a.C.length;g++){var k=a.C[g],q=k.ga,r=k.Wa>>>0,x=k.Sa;null!=x&&(x>>>=0);var B=k.Ul;48==q&&(q=40);if(q==b.ga&&e>=r&&e<r+B||null!=x&&f>=x&&f<x+B){b=qa(k.mi,[e],a.Eb);0<=b?Mq(a,g,b,d):c&&(b=~b,Mq(a,g,b-1,d),Mq(a,g,b,d));break}}!d.length&&(a=a.ja.Ki(f,!0))&&(d.push(a),d.push(f));return d}
|
||||
function ql(a,b,c,d,e,f,g,k){var q={},r=[],x;for(x in k){var B=k[x];"number"==typeof B&&(k[x]=B={o:B});var y=B.o,L=B.s,F=B.a;if(void 0!==y){void 0!==L&&(q.Xa=y,q.ga=L,q.Sa=null,a.dc(q),(q.Sa&-65536)==(a.ja.rg&-65536)&&(q.Sa&=1048575),B.p=q.Sa);var L=r,y=[y>>>0,x],I=qa(L,y,a.Eb);0>I&&L.splice(-(I+1),0,y)}F&&(B.a=F.replace(/''/g,'"'))}a.C.push({Xf:b,bm:c,ga:d,Xa:e,Sa:f,Ul:g,Od:k,mi:r})}
|
||||
function Yp(a,b,c){for(var d=0;d<a.C.length;d++){var e=a.C[d];if(!b||e.Xf==b)if(b&&c==e.bm||!b&&c==e.ga){a.C.splice(d,1);break}}}function Bq(a,b,c){for(var d=[],e=b.Xa>>>0,f=a.dc(b)>>>0,g=0;g<a.C.length;g++){var k=a.C[g],q=k.ga,r=k.Xa>>>0,x=k.Sa;null!=x&&(x>>>=0);var B=k.Ul;48==q&&(q=40);if(q==b.ga&&e>=r&&e<r+B||null!=x&&f>=x&&f<x+B){b=qa(k.mi,[e],a.Eb);0<=b?Mq(a,g,b,d):c&&(b=~b,Mq(a,g,b-1,d),Mq(a,g,b,d));break}}!d.length&&(a=a.ja.Ki(f,!0))&&(d.push(a),d.push(f));return d}
|
||||
function Mq(a,b,c,d){var e={},f=a.C[b].mi,g=0,k=null;0<=c&&c<f.length&&(g=f[c][0],k=f[c][1]);k&&(e=a.C[b].Od[k],k="."==k.charAt(0)?null:e.l||k);d.push(k);d.push(g);d.push(e.a);d.push(e.c)}function Nq(a){a.uf&&(a.uf.value="")}
|
||||
function Oq(a,b){if("?"==b)a.U("frequency commands:"),a.U("\tclear\tclear all frequency counts");else{var c,d=0;if(a.Y)if("clear"==b){for(c=0;c<a.Y.length;c++)a.Y[c]=[c,0];a.U("frequency data cleared");d++}else if(void 0!==b)a.U("unknown frequency command: "+b),d++;else{var e=a.Y.slice();e.sort(function(a,b){return b[1]-a[1]});for(c=0;c<e.length;c++){var f=e[c][0],g=e[c][1];g&&(a.U((yp[a.Oa[f][0]]+" ").substr(0,5)+" ("+fa(f)+"): "+g+" times"),d++)}}d||a.U("no frequency data available")}}
|
||||
function Pq(a,b){var c=b.match(/^\s*([A-Z_]?[A-Z0-9_]*)\s*(=?)\s*(.*)$/i);if(c){if(!c[1])return Lq(a)||a.U("no variables"),!0;if(!c[2])return Lq(a,c[1]);if(!c[3])return delete a.Fa[c[1]],!0;var d=iq(a,c[3]);return void 0!==d?(a.Fa[c[1]]=d,!0):!1}a.U("invalid assignment:"+b);return!1}
|
||||
function Qq(a,b,c){var d=null;if(b=gq(a,b,!0)){a.dc(b);var e=Bq(a,b,!0);if(e.length){var f,g;e[0]&&(g="",(f=b.Wa-e[1])&&(g=" + "+ga(f)),f=e[0]+" ("+Sp(e[1],b.ga)+")"+g,c&&a.U(f),d=f);4<e.length&&e[4]&&(g="",(f=e[5]-b.Wa)&&(g=" - "+ga(f)),f=e[4]+" ("+Sp(e[5],b.ga)+")"+g,c&&a.U(f),d||(d=f))}else c&&a.U("no symbols")}return d}
|
||||
function Qq(a,b,c){var d=null;if(b=gq(a,b,!0)){a.dc(b);var e=Bq(a,b,!0);if(e.length){var f,g;e[0]&&(g="",(f=b.Xa-e[1])&&(g=" + "+ga(f)),f=e[0]+" ("+Sp(e[1],b.ga)+")"+g,c&&a.U(f),d=f);4<e.length&&e[4]&&(g="",(f=e[5]-b.Xa)&&(g=" - "+ga(f)),f=e[4]+" ("+Sp(e[5],b.ga)+")"+g,c&&a.U(f),d||(d=f))}else c&&a.U("no symbols")}return d}
|
||||
function Rq(a,b){if(b[1]&&"?"!=b[1]){var c="json"==b[1],d,e=0,f=0,g=c?{}:gq(a,b[1]);if(g&&(d=Mp(a,b[2],"drive #"),void 0!==d)){if(!c){e=Mp(a,b[3],"sector #");if(void 0===e)return;f=Mp(a,b[4],"# of sectors");void 0===f&&(f=1)}var k=a.ic;2<=d&&a.Qb&&(d-=2,k=a.Qb);if(k){var q=k.zi(d);if(q)if(q.Da)if(c)Nq(a),a.U(q.Da.toJSON());else if(k.Yj(q,e,f)){for(var r=0,x=!1,c=$p(g);!x&&0<q.Kb--;)(function(a,b){k.nc(q,function(c){0>c?(a.U("out of data at address "+$p(b)),x=!0):(a.xc(b,c,1),r++)})})(a,g);a.U(r+" bytes read at "+
|
||||
c)}else a.U("sector "+e+" request out of range");else a.U("drive "+d+" not loaded");else a.U("invalid drive: "+d)}else a.U("disk controller not present")}}else a.U("list/load commands:"),a.U("\tl [address] [drive #] [sector #] [# sectors]")}
|
||||
function rq(a,b){var c;if(b&&"?"==b[1])a.U("register commands:"),a.U("\tr\tdump registers"),a.Vb&&a.U("\trfp\tdump floating-point registers"),a.U("\trp\tdump all registers"),a.U("\trx [#]\tset flag or register x to [#]");else{var d;null==c&&(c=!0);if(null!=b&&1<b.length){var e=b[1];if(a.Vb&&"fp"==e){c=a.Vb;d=Nf(c);for(var f=c.gc,g=0;8>g;g++){var k=c,e=null;if(g<k.ja.length){var e=[],q=k.C+g&7;e[0]=q;e[1]=bg(k,q);e[2]=k.ja[q];q<<=1;e[3]=k.da[q];e[4]=k.da[q+1];k=fg(k,e[3],e[4]);e[5]=k[0];e[6]=k[1];
|
||||
|
|
@ -1165,27 +1165,27 @@ null),q){case "AL":a.M.F=a.M.F&-256|k&255;break;case "AH":a.M.F=a.M.F&-65281|k<<
|
|||
65535;break;case "SP":t(a.M,u(a.M)&-65536|k&65535);break;case "BP":a.M.K=a.M.K&-65536|k&65535;break;case "SI":a.M.J=a.M.J&-65536|k&65535;break;case "DI":a.M.I=a.M.I&-65536|k&65535;break;case "DS":wd(a.M,k);break;case "ES":xd(a.M,k);break;case "SS":md(a.M,k);break;case "CS":Ze(a.M,k);a.da=qp(a,v(a.M),a.M.Ba.ga);break;case "IP":case "EIP":$e(a.M,k);a.da=qp(a,v(a.M),a.M.Ba.ga);break;case "PC":case "PS":zd(a.M,k);break;case "C":k?mf(a.M):nf(a.M);break;case "P":k?(e=a.M,e.resultType&=-3,e.ea|=4):(e=a.M,
|
||||
e.resultType&=-3,e.ea&=-5);break;case "A":k?uf(a.M):sf(a.M);break;case "Z":k?vf(a.M):tf(a.M);break;case "S":k?(e=a.M,e.resultType&=-17,e.ea|=128):(e=a.M,e.resultType&=-17,e.ea&=-129);break;case "I":k?(e=a.M,e.ea|=512):(e=a.M,e.ea&=-513);break;case "D":k?(e=a.M,e.ea|=1024):(e=a.M,e.ea&=-1025);break;case "V":k?of(a.M):pf(a.M);break;default:var r=!0;if(80286<=a.M.na)switch(r=!1,q){case "MS":wf(a.M,k);break;case "TR":-1===a.M.ab.load(k)&&(g=!1);break;default:if(r=!0,80386<=a.M.na)switch(r=!1,q){case "EAX":a.M.F=
|
||||
k;break;case "EBX":a.M.D=k;break;case "ECX":a.M.G=k;break;case "EDX":a.M.H=k;break;case "ESP":t(a.M,k);break;case "EBP":a.M.K=k;break;case "ESI":a.M.J=k;break;case "EDI":a.M.I=k;break;case "FS":a.M.Tb.load(k);break;case "GS":a.M.Ub.load(k);break;case "CR0":a.M.gb=k;Kh.call(a.M,k);break;case "CR2":a.M.oe=k;break;case "CR3":a.M.Nd=k;Bd.call(a.M,k);break;default:r=!0}}if(r){a.U("unknown register: "+e);return}}if(!g){a.U("invalid value: "+f);return}Qc(a.M);a.U("updated registers:")}}a.U(Hq(a,d));c&&(a.da=
|
||||
qp(a,v(a.M),a.M.Ba.ga),sq(a,$p(a.da)))}}function Sq(a,b){b=pa(b);var c=b.match(/^(['"])(.*?)\1$/);c?a.U(pq(a,c[2])):iq(a,b,!0)}function Tq(a,b,c){for(var d=null,e=b.Wa,f=e,g=1;6>=g&&e;g++){if(2<g){b.Wa=e;b.Sa=null;var k=zq(a,b);if(0<k.indexOf("CALL")||c&&0<k.indexOf("INT")){var q=k.indexOf(" ");if(e+(k.indexOf(" ",q+1)-q-1)/2==f){d=k;break}}}e--}b.Wa=f;return d}
|
||||
qp(a,v(a.M),a.M.Ba.ga),sq(a,$p(a.da)))}}function Sq(a,b){b=pa(b);var c=b.match(/^(['"])(.*?)\1$/);c?a.U(pq(a,c[2])):iq(a,b,!0)}function Tq(a,b,c){for(var d=null,e=b.Xa,f=e,g=1;6>=g&&e;g++){if(2<g){b.Xa=e;b.Sa=null;var k=zq(a,b);if(0<k.indexOf("CALL")||c&&0<k.indexOf("INT")){var q=k.indexOf(" ");if(e+(k.indexOf(" ",q+1)-q-1)/2==f){d=k;break}}}e--}b.Xa=f;return d}
|
||||
function Uq(a,b,c){var d="tr"==b;b=Mp(a,c,null,!0)||1;var e=1==b?0:1;Ka(b,function(){return qb(a,!0)&&a.nf(e,d,!1)},function(){Qc(a.M);qb(a,!1)})}function Cq(a,b,c){if(a.Sd=b)null!=a.Di&&(a.Sb=a.Di),null!=a.Ci&&(a.sc=a.Ci),a.Di=a.Sb,a.Ci=a.sc;a.Ne=c||0}
|
||||
function sq(a,b,c,d){if(b=gq(a,b,!0)){void 0===d&&(d=1);var e=256;if(void 0!==c){d=gq(a,c,!0);if(!d||d.Wa<b.Wa)return;e=d.Wa-b.Wa;if(256<e){a.U("range too large");return}d=-1}c=0;var f;for(Cq(b,!0);0<e&&d--;){var g=b.Sa;f=rb(a,!1)||a.O?a.ka:null;var k=null!=f?"cycles":null,q=Bq(a,b);if(q[0]&&d&&(!c&&d||0>q[0].indexOf("+"))){var r=q[0]+":";q[2]&&(r+=" "+q[2]);a.U(r)}q[3]&&(k=q[3],f=null);f=zq(a,b,k,f);b.Sd||d||d++;a.U(f);a.da=b;e-=b.Sa-g;c++}}}
|
||||
function sq(a,b,c,d){if(b=gq(a,b,!0)){void 0===d&&(d=1);var e=256;if(void 0!==c){d=gq(a,c,!0);if(!d||d.Xa<b.Xa)return;e=d.Xa-b.Xa;if(256<e){a.U("range too large");return}d=-1}c=0;var f;for(Cq(b,!0);0<e&&d--;){a.Wa(b);var g=b.Sa;f=rb(a,!1)||a.O?a.ka:null;var k=null!=f?"cycles":null,q=Bq(a,b);if(q[0]&&d&&(!c&&d||0>q[0].indexOf("+"))){var r=q[0]+":";q[2]&&(r+=" "+q[2]);a.U(r)}q[3]&&(k=q[3],f=null);f=zq(a,b,k,f);b.Sd||d||d++;a.U(f);a.da=b;e-=b.Sa-g;c++}}}
|
||||
function kq(a,b,c,d){if(c)if(b){0>a.W&&a.P.length&&(a.W=0);if(0>a.W||b!=a.P[a.W])a.P.splice(0,0,b),a.W=0;a.W--}else b=a.P[a.W+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(pa(b.substring(c,f))),c=f+1}}return a}
|
||||
function yq(a,b,c){var d=!0;try{if(!b.length||"end"==b)a.Ka&&(a.U("ended assemble at "+$p(a.Aa)),a.da=a.Aa,a.Ka=!1),b="";else if(!c){var e=">> ";a.M.gb&1&&(e=a.M.ea&131072?"-- ":"## ");a.U(e+b)}var f=b.charAt(0);if('"'==f||"'"==f)return!0;a.bb=null;if(tb(a)&&0<b.length){a.Ka&&(b="a "+$p(a.Aa)+" "+b);var g=b.replace(/ +/g," ").split(" ");if(g&&g.length)for(var k=g[0],q=k.charAt(0),r=1;r<k.length;r++){var x=k.charAt(r);if("?"==q||"r"==q||"a">x||"z"<x){g[0]=k.substr(r);g.unshift(k.substr(0,r));break}}switch(g[0].charAt(0)){case "a":var B=
|
||||
gq(a,g[1],!0);if(B)if(a.Aa=B,void 0===g[2])a.U("begin assemble at "+$p(B)),a.Ka=!0,Qc(a.M);else{var y;a.U("not supported yet");y=[];if(y.length){for(var L=0;L<y.length;L++)a.xc(B,y[L],1);a.U(zq(a,a.Aa))}}break;case "b":a:{var F=g[0],I=g[1],V=b;if("?"==I)a.U("breakpoint commands:"),a.U("\tbi [p]\ttoggle break on input port [p]"),a.U("\tbo [p]\ttoggle break on output port [p]"),a.U("\tbp [a]\tset exec breakpoint at addr [a]"),a.U("\tbr [a]\tset read breakpoint at addr [a]"),a.U("\tbw [a]\tset write breakpoint at addr [a]"),
|
||||
a.U("\tbc [a]\tclear breakpoint at addr [a]"),a.U("\tbl\tlist all breakpoints"),a.U("\tbn [n]\tbreak after [n] instruction(s)");else{var P=F.charAt(1);if("l"==P){var ua=0,ua=ua+xq(a,a.A),ua=ua+xq(a,a.xa);(ua+=xq(a,a.la))||a.U("no breakpoints")}else if("n"==P)a.Ua=Mp(a,I),a.U("break after "+a.Ua+" instruction(s)");else if(void 0===I)a.U("missing breakpoint address");else{var X={};if("*"!=I&&(X=gq(a,I,!0,!0),!X))break a;I=null==X.Wa?I:ga(X.Wa);"c"==P?null==X.Wa?(rp(a),a.U("all breakpoints cleared")):
|
||||
Zp(a,a.A,X)||Zp(a,a.xa,X)||Zp(a,a.la,X)||a.U("breakpoint missing: "+$p(X)):"i"==P?a.U("breakpoint "+(hc(a.ja,X.Wa)?"enabled":"cleared")+": port "+I+" (input)"):"o"==P?a.U("breakpoint "+(lc(a.ja,X.Wa)?"enabled":"cleared")+": port "+I+" (output)"):null!=X.Wa&&(jq(a,X,V),"p"==P?a.Pd(a.A,X):"r"==P?a.Pd(a.xa,X):"w"==P?a.Pd(a.la,X):a.U("unknown breakpoint command: "+P))}}}break;case "c":Nq(a);break;case "d":a:{var oa=g,Za,ia=oa[0],Ra=oa[1],xa=oa[2],Gb=oa[3];if("?"==Ra){var Ia="";for(Za in Ep)a.ib[Za]&&
|
||||
a.U("\tbc [a]\tclear breakpoint at addr [a]"),a.U("\tbl\tlist all breakpoints"),a.U("\tbn [n]\tbreak after [n] instruction(s)");else{var P=F.charAt(1);if("l"==P){var ua=0,ua=ua+xq(a,a.A),ua=ua+xq(a,a.xa);(ua+=xq(a,a.la))||a.U("no breakpoints")}else if("n"==P)a.Ua=Mp(a,I),a.U("break after "+a.Ua+" instruction(s)");else if(void 0===I)a.U("missing breakpoint address");else{var X={};if("*"!=I&&(X=gq(a,I,!0,!0),!X))break a;I=null==X.Xa?I:ga(X.Xa);"c"==P?null==X.Xa?(rp(a),a.U("all breakpoints cleared")):
|
||||
Zp(a,a.A,X)||Zp(a,a.xa,X)||Zp(a,a.la,X)||a.U("breakpoint missing: "+$p(X)):"i"==P?a.U("breakpoint "+(hc(a.ja,X.Xa)?"enabled":"cleared")+": port "+I+" (input)"):"o"==P?a.U("breakpoint "+(lc(a.ja,X.Xa)?"enabled":"cleared")+": port "+I+" (output)"):null!=X.Xa&&(jq(a,X,V),"p"==P?a.Pd(a.A,X):"r"==P?a.Pd(a.xa,X):"w"==P?a.Pd(a.la,X):a.U("unknown breakpoint command: "+P))}}}break;case "c":Nq(a);break;case "d":a:{var oa=g,Za,ia=oa[0],Ra=oa[1],xa=oa[2],Gb=oa[3];if("?"==Ra){var Ia="";for(Za in Ep)a.ib[Za]&&
|
||||
(Ia&&(Ia+=","),Ia+=Za);Ia+=",state,symbols";a.U("dump memory commands:");a.U("\tdb [a] [#] dump # bytes at address a");a.U("\tdw [a] [#] dump # words at address a");a.U("\tdd [a] [#] dump # dwords at address a");a.U("\tdh [#] [#] dump # instructions from history");a.U("\tds [#] dump descriptor info for selector #");Ia.length&&a.U("dump extension commands:\n\t"+Ia)}else if("state"==Ra){var Da=Vq(a.ia,!0);"console"==xa?console.log(Da):(Nq(a),a.U(Da))}else if("symbols"==Ra)for(var hd=
|
||||
0;hd<a.C.length;hd++){var Od=a.C[hd],Pc;for(Pc in Od.Od)if("."!=Pc.charAt(0)){var Pd=Od.Od[Pc],Ae=Pd.o;if(void 0!==Ae){var Qd=Pd.s;void 0===Qd&&(Qd=Od.ga);var Be=Od.Od[Pc].l;Be&&(Pc=Be);a.U(Sp(Ae,Qd)+" "+Pc)}}}else{if("ds"==ia||"dg"==ia||"dl"==ia)ia="d",oa=[ia,"desc",Ra];"d"==ia&&"page"==Ra&&(ia="dp",oa.shift());if("dp"==ia){oa.shift();var Zh=oa[0];if(Zh){var Me=a.dc(gq(a,Zh));if(-1===Me)a.U("invalid address: "+Zh);else{var Ud=a.ja,Pm=(Me&-4194304)>>>20,Qm=a.M.Nd+Pm,Rm=Ud.wa[(Qm&Ud.Jb)>>>Ud.La].Yd(Pm),
|
||||
Sm=(Me&4190208)>>>10,Tm=(Rm&-4096)+Sm,Um=Ud.wa[(Tm&Ud.Jb)>>>Ud.La].Yd(Sm),nr=(Um&-4096)+(Me&4095);a.U("linear PDE addr PDE PTE addr PTE physical");a.U("--------- ---------- -------- ---------- -------- ----------");var od="%"+l(Me),od=od+(" %%"+lq(Qm,Rm)),od=od+(" %%"+lq(Tm,Um,!0)),od=od+(" %%"+l(nr));a.U(od)}}else a.U("missing address")}else{if("d"==ia){if("disk"==Ra){oa[0]="l";oa[1]="json";Rq(a,oa);break a}for(Za in Ep)if(oa[1]==Za){var Vm=a.ib[Za];
|
||||
Vm?(oa.shift(),oa.shift(),Vm(oa)):a.U("no dump registered for "+Ra);break a}Ra||(ia=a.Ec||"db")}else a.Ec=ia;if("dh"==ia){var Wm=Ra,Xm=xa,Ym="",Zm=0,ob=a.Na,qc=a.qa;if(qc.length){var Ab=+Wm||a.Wb,Vd=+Xm||10;isNaN(Ab)?Ab=Vd:Ym="more ";Ab>qc.length&&(a.U("note: only "+qc.length+" available"),Ab=qc.length);ob-=Ab;0>ob&&(null==qc[qc.length-1].ga?(Ab=ob+Ab,ob=0):ob+=qc.length);var $h=[];"call"==Xm&&(Vd=1E5,$h=["CALL"]);for(void 0!==Wm&&a.U(Ab+" instructions earlier:");0<Vd&&ob!=a.Na;){var pb=qc[ob++];
|
||||
if(null==pb.ga)break;var pb=qp(a,pb.Wa,pb.ga,pb.Sa,pb.type,pb.Sb,pb.sc),$m=zq(a,pb,"history",Ab--);(!$h.length||0<=$m.indexOf($h[0]))&&a.U($m);pb.Ne&&(ob+=pb.Ne,Vd-=pb.Ne,Ab-=pb.Ne);ob>=qc.length&&(ob=0);a.Wb=Ab;Zm++;Vd--}}Zm||(a.U("no "+Ym+"history available"),a.Wb=void 0)}else if("di"==ia)oa.shift(),a.U("no information");else{var Wd=gq(a,Ra);if(Wd&&(null!=Wd.ga||null!=Wd.Sa)){var jg=0;xa&&("l"==xa.charAt(0)&&(xa=xa.substr(1)||Gb),jg=Mp(a,xa)>>>0,65536<jg&&(jg=65536));for(var pd="",or=(jg||128)+
|
||||
15>>4||1,ai="dd"==ia?4:"dw"==ia?2:1,an=0;an<or;an++){for(var kg=0,bi=0,Ne="",ci="",Ra=$p(Wd),di=0;16>di;di++){var lg=a.Xa(Wd,1),kg=kg|lg<<(bi++<<3);bi==ai&&(Ne+=l(kg,2*ai),Ne+=1==ai?7==di?"-":" ":" ",kg=bi=0);ci+=32<=lg&&128>lg?String.fromCharCode(lg):"."}pd&&(pd+="\n");pd+=Ra+" "+Ne+" "+ci}pd&&a.U(pd);a.Fb=Wd}}}}}break;case "e":if("else"==g[0])break;var mg=1,bn=255,cn=a.Xa,dn=a.xc;"ew"==g[0]&&(mg=2,bn=65535,cn=a.ua,dn=a.pb);var en=mg<<1,fn=g[1];if(null==fn)a.U("edit memory commands:"),a.U("\teb [a] [...] edit bytes at address a"),
|
||||
if(null==pb.ga)break;var pb=qp(a,pb.Xa,pb.ga,pb.Sa,pb.type,pb.Sb,pb.sc),$m=zq(a,pb,"history",Ab--);(!$h.length||0<=$m.indexOf($h[0]))&&a.U($m);pb.Ne&&(ob+=pb.Ne,Vd-=pb.Ne,Ab-=pb.Ne);ob>=qc.length&&(ob=0);a.Wb=Ab;Zm++;Vd--}}Zm||(a.U("no "+Ym+"history available"),a.Wb=void 0)}else if("di"==ia)oa.shift(),a.U("no information");else{var Wd=gq(a,Ra);if(Wd&&(null!=Wd.ga||null!=Wd.Sa)){var jg=0;xa&&("l"==xa.charAt(0)&&(xa=xa.substr(1)||Gb),jg=Mp(a,xa)>>>0,65536<jg&&(jg=65536));for(var pd="",or=(jg||128)+
|
||||
15>>4||1,ai="dd"==ia?4:"dw"==ia?2:1,an=0;an<or;an++){for(var kg=0,bi=0,Ne="",ci="",Ra=$p(Wd),di=0;16>di;di++){var lg=a.Wa(Wd,1),kg=kg|lg<<(bi++<<3);bi==ai&&(Ne+=l(kg,2*ai),Ne+=1==ai?7==di?"-":" ":" ",kg=bi=0);ci+=32<=lg&&128>lg?String.fromCharCode(lg):"."}pd&&(pd+="\n");pd+=Ra+" "+Ne+" "+ci}pd&&a.U(pd);a.Fb=Wd}}}}}break;case "e":if("else"==g[0])break;var mg=1,bn=255,cn=a.Wa,dn=a.xc;"ew"==g[0]&&(mg=2,bn=65535,cn=a.ua,dn=a.pb);var en=mg<<1,fn=g[1];if(null==fn)a.U("edit memory commands:"),a.U("\teb [a] [...] edit bytes at address a"),
|
||||
a.U("\tew [a] [...] edit words at address a");else{var ng=gq(a,fn);if(ng)for(var og=2;og<g.length;og++){var Oe=iq(a,g[og]);if(void 0===Oe){a.U("unrecognized value: "+g[og]);break}Oe&~bn&&a.U("warning: "+l(Oe)+" exceeds "+mg+"-byte value");var pr=cn.call(a,ng);a.U("changing "+$p(ng)+" from 0x"+l(pr,en)+" to 0x"+l(Oe,en));dn.call(a,ng,Oe,mg)}}break;case "f":Oq(a,g[1]);break;case "g":a:{var gn=g[1],qr=b;"gt"==g[0]&&(a.lb=!0);if(void 0!==gn){var ei=gq(a,gn,!0);if(!ei)break a;jq(a,ei,qr);a.Pd(a.A,ei,
|
||||
!0)}a.Fe(!0)||c||a.U("cpu busy or unavailable, run command ignored")}break;case "h":var fi;a.sa.Mb?(fi="halting",a.Zb()):fi="already halted";c||a.U(fi);break;case "i":if("if"==g[0]){var gi;var Pe=b.substr(2),Pe=pa(Pe);iq(a,Pe)?(c||a.U("true: "+Pe),gi=!0):(c||a.U("false: "+Pe),gi=!1);gi||(d=!1);break}if("int"==g[0]){var pg;a:switch(Mp(a,g[1])){case 19:Nj(a,19,a.M.Ma,!0);a.Ga=a.va;pg=!0;break a;case 33:Nj(a,33,a.M.Ma,!0);a.Ga=a.va;pg=!0;break a;default:pg=!1}pg||(d=!1);break}var hi=g[1];if(hi&&"?"!=
|
||||
hi){var ii=Mp(a,hi);if(void 0!==ii){var rr=jc(a.ja,ii,1);a.U(ga(ii)+": "+fa(rr))}}else a.U("input commands:"),a.U("\ti [p]\tread port [p]"),a.U("warning: port accesses can affect hardware state");break;case "k":var sr=g[0];if("?"==g[1])a.U("stack trace commands:"),a.U("\tk\tshow frame addresses"),a.U("\tks\tshow symbol information");else{var ji=0,hn=a.M.Ba.ga,Qe=qp(a),Rc=qp(a,u(a.M),a.M.za.ga);for(a.U("stack trace for "+$p(Rc));10>ji;){for(var rc=null,tr=256;Rc.Wa>>>0<a.M.Gg>>>0;){Qe.Wa=a.vb(Rc,!0);
|
||||
hi){var ii=Mp(a,hi);if(void 0!==ii){var rr=jc(a.ja,ii,1);a.U(ga(ii)+": "+fa(rr))}}else a.U("input commands:"),a.U("\ti [p]\tread port [p]"),a.U("warning: port accesses can affect hardware state");break;case "k":var sr=g[0];if("?"==g[1])a.U("stack trace commands:"),a.U("\tk\tshow frame addresses"),a.U("\tks\tshow symbol information");else{var ji=0,hn=a.M.Ba.ga,Qe=qp(a),Rc=qp(a,u(a.M),a.M.za.ga);for(a.U("stack trace for "+$p(Rc));10>ji;){for(var rc=null,tr=256;Rc.Xa>>>0<a.M.Gg>>>0;){Qe.Xa=a.vb(Rc,!0);
|
||||
if(null==Rc.Sa||!tr--)break;Qe.ga=hn;if(rc=Tq(a,Qe))break;Qe.ga=a.vb(Rc);if(rc=Tq(a,Qe,!0)){hn=a.vb(Rc,!0);0<rc.indexOf("INT")&&a.vb(Rc,!0);break}}if(!rc||null==rc)break;var jn=null;if("ks"==sr){var kn=rc.match(/[0-9A-F]+$/);kn&&(jn=Qq(a,kn[0]))}rc=na(rc,50)+" ;"+(jn||"stack="+$p(Rc));a.U(rc);ji++}ji||a.U("no return addresses found")}break;case "l":if("ln"==g[0]){Qq(a,g[1],!0);break}Rq(a,g);break;case "m":if("mouse"==g[0]){var ki=g[1],qg=g[2];if(a.Z){var ln=1;"-"==qg.charAt(0)&&(ln=-1,qg=qg.substr(1));
|
||||
var qd=Mp(a,qg,ki);if(void 0!==qd)switch(qd=qd*ln|0,ki){case "x":a.Z.yf(qd,0);break;case "y":a.Z.yf(0,qd);break;case "click":a.Z.je(qd,!0);a.Z.je(qd,!1);break;default:a.U("unknown action: "+ki)}}else a.U("no mouse");break}a:{var sc,tc=null,Ta=g[1];"?"==Ta&&(Ta=void 0);if(void 0!==Ta){var rd=0;if("all"==Ta)rd=1610481663,Ta=null;else if("on"==Ta)tc=!0,Ta=null;else if("off"==Ta)tc=!1,Ta=null;else{"keys"==Ta&&(Ta="key");"kbd"==Ta&&(Ta="keyboard");for(sc in Ep)if(Ta==sc){rd=Ep[sc];tc=!!(a.qc&rd);break}if(!rd){a.U("unknown message category: "+
|
||||
Ta);break a}}rd&&("on"==g[2]?(a.qc|=rd,tc=!0):"off"==g[2]&&(a.qc&=~rd,tc=!1))}var ur=0,Sc="";for(sc in Ep)if(!Ta||Ta==sc){var vr=!!(a.qc&Ep[sc]);if(null===tc||tc==vr)Sc&&(Sc+=","),++ur%10||(Sc+="\n\t"),"key"==sc&&(sc="keys"),Sc+=sc}void 0===Ta&&a.U("message commands:\n\tm [category] [on|off]\tturn categories on/off");a.U((null!==tc?tc?"messages on: ":"messages off: ":"message categories:\n\t")+(Sc||"none"));sp(a)}break;case "o":var li=g[1],wr=g[2];if(li&&"?"!=li){var mi=Mp(a,li,"port #"),ni=Mp(a,
|
||||
wr);void 0!==mi&&void 0!==ni&&(nc(a.ja,mi,1,ni),a.U(ga(mi)+": "+fa(ni)))}else a.U("output commands:"),a.U("\to [p] [b]\twrite byte [b] to port [p]"),a.U("warning: port accesses can affect hardware state");break;case "p":if("print"==g[0]){Sq(a,b.substr(5));break}var mn="pr"==g[0]?1:0,Xd=1+mn;if(a.O)a.U("step in progress");else{var rg,nn=!1,lb=qp(a,v(a.M),a.M.Ba.ga);do switch(rg=!1,a.Xa(lb)){case 38:case 46:case 54:case 62:case 100:case 101:case 102:case 103:case 240:bq(a,lb,1);rg=!0;break;case 204:case 206:a.O=
|
||||
wr);void 0!==mi&&void 0!==ni&&(nc(a.ja,mi,1,ni),a.U(ga(mi)+": "+fa(ni)))}else a.U("output commands:"),a.U("\to [p] [b]\twrite byte [b] to port [p]"),a.U("warning: port accesses can affect hardware state");break;case "p":if("print"==g[0]){Sq(a,b.substr(5));break}var mn="pr"==g[0]?1:0,Xd=1+mn;if(a.O)a.U("step in progress");else{var rg,nn=!1,lb=qp(a,v(a.M),a.M.Ba.ga);do switch(rg=!1,a.Wa(lb)){case 38:case 46:case 54:case 62:case 100:case 101:case 102:case 103:case 240:bq(a,lb,1);rg=!0;break;case 204:case 206:a.O=
|
||||
Xd;bq(a,lb,1);break;case 205:case 224:case 225:case 226:a.O=Xd;bq(a,lb,lb.Sb?4:2);break;case 232:a.O=Xd;bq(a,lb,lb.Sb?5:3);break;case 154:a.O=Xd;bq(a,lb,lb.Sb?7:5);break;case 255:var on=a.vb(lb)&14591;if(4351==on||6399==on)a.O=Xd,zq(a,lb);break;case 243:case 242:bq(a,lb,1);nn=rg=!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:nn&&(a.O=Xd,bq(a,lb,1))}while(rg);a.O?(a.Pd(a.A,lb,!0),a.Fe()||(a.M.bd(),a.O=0)):Uq(a,
|
||||
mn?"tr":"t")}break;case "r":if("reset"==b){a.ia&&a.ia.reset();break}rq(a,g);break;case "t":Uq(a,g[0],g[1]);break;case "u":sq(a,g[1],g[2],8);break;case "v":if("var"==g[0]){Pq(a,b.substr(3))||(d=!1);break}a.U("PCjs version 1.20.2 ("+a.M.na+",RELEASE,NOPREFETCH"+(vb?",TYPEDARRAYS":",LONGARRAYS")+",NOBACKTRACK)");break;case "x":a:if(g[1]&&"?"!=g[1])switch(g[1]){case "cs":var Re;void 0!==g[3]&&(Re=+g[3]);switch(g[2]){case "int":a.M.ba.af=Re;break;case "start":a.M.ba.Af=Re;break;case "stop":a.M.ba.cf=Re;
|
||||
break;default:a.U("unknown cs option");break a}void 0!==Re&&Oc(a.M);a.U("checksums "+(a.M.sa.Re?"enabled":"disabled"));break;case "sp":void 0!==g[2]&&(Zc(a.M,+g[2])||a.U("warning: using 1x multiplier, previous target not reached"));a.U("target speed: "+(a.M.ba.ze.toFixed(2)+"Mhz")+" ("+a.M.ba.Ud+"x)");break;default:a.U("unknown option: "+g[1])}else a.U("execution options:"),a.U("\tcs int #\tset checksum cycle interval to #"),a.U("\tcs start #\tset checksum cycle start count to #"),a.U("\tcs stop #\tset checksum cycle stop count to #"),
|
||||
|
|
|
|||
Loading…
Reference in a new issue