Stop Closure Compiler from stripping out FileReader support

This commit is contained in:
Jeff Parsons 2014-11-10 22:55:16 -08:00 committed by jeffpar
commit 6ae24b8dae
8 changed files with 58 additions and 58 deletions

View file

@ -428,7 +428,7 @@ this.H&255,this.Ga-2);Ab(this.ra,a+1&65535,this.H>>8,this.Ga-2);this.A-=this.B.n
1)<<8;this.A-=this.B.Yi},function(){Ab(this.ra,this.K,this.H&255,this.Ga-1);this.A-=this.B.mj},function(){Ab(this.ra,this.K,this.H&255,this.Ga-1);Ab(this.ra,this.K+1&65535,this.H>>8,this.Ga-1);this.A-=this.B.mj},$h,$h,function(){this.aa|=132;this.A-=this.B.oe},function(){this.aa|=68;this.A-=this.B.oe},function(){this.pb|=4;this.A-=2;this.fa&&Ed(this.fa)?(nd(this,-1),this.Bb()):this.Ca&512||(this.fa&&nd(this,-1),this.Bb())},function(){od(this)?ud(this):zd(this);this.A-=2},function(){this.Jb=-1;Ah[this.ha()].call(this,
De,ue);0<=this.Jb&&(this.H=this.Jb)},function(){this.Jb=-1;Bh[this.ha()].call(this,Ee,ue);0<=this.Jb&&(this.H=this.Jb,this.K=this.Bg)},function(){this.Z&=~this.ga;this.A-=2},function(){this.Z|=this.ga;this.A-=2},function(){this.Ca&=-513;this.A-=this.B.Rk},function(){this.Ca|=512;this.aa|=4;this.A-=2},function(){this.Ca&=-1025;this.A-=2},function(){this.Ca|=1024;this.A-=2},function(){Ah[this.ha()].call(this,Lc,ue)},function(){Bh[this.ha()].call(this,Oc,ue)}];
function O(a){z.call(this,"ChipSet",a,O);this.Ia=a.model;this.Ia=void 0!==this.Ia?parseInt(this.Ia,10):ai;this.$b=0;var b=a.sw1;if(b)this.$b=bi(b,ci|di.km);else{this.Vd=[360,360];(b=a.floppies)&&void 0!==b.length&&(this.Vd=b);if(b=this.Vd.length)this.$b|=ei.Th,b--,this.$b|=(b&3)<<ei.Hf;if(b=a.monitor||(this.Ia<fi?"mono":"ega"),void 0!==gi[b])this.$b|=gi[b]<<di.Hf}this.ue=bi(a.sw2||"11110000",0);this.In=this.Ia==ai?16:64;this.Uf=this.Vf=1;this.Ia>=fi&&(this.Uf=this.Vf=2);this.ph=a.scaleTimers||!1;
this.cp=a.rtcDate;this.yk=!1;a.sound&&window&&"webkitAudioContext"in window&&(this.ki=new webkitAudioContext);this.reset(!0);this.Ta()}A(z,O);var ai=5150,fi=5170,gi={none:0,tv:1,color:2,mono:3,ega:0},ei={Th:1,ONE:0,Zp:64,Xp:128,sp:192,Gf:192,Hf:6},ci=12,di={Yp:16,lp:32,km:48,Gf:48,Hf:4};k=O.prototype;
this.cp=a.rtcDate;this.yk=!1;a.sound&&window&&"webkitAudioContext"in window&&(this.ki=new webkitAudioContext);this.reset(!0);this.Ta()}A(z,O);var ai=5150,fi=5170,gi={none:0,tv:1,color:2,mono:3,ega:0},ei={Th:1,ONE:0,Wp:64,Up:128,sp:192,Gf:192,Hf:6},ci=12,di={Vp:16,lp:32,km:48,Gf:48,Hf:4};k=O.prototype;
k.Eb=function(a,b,c,d){switch(c){case "sw1":return this.ya[c]=d,hi(this,c,d,this.$b,{0:this.Ia==ai?"Bootable Floppy Drive":"Loop on POST",1:this.Ia==ai?"Reserved":"Coprocessor",2:"Base Memory Size",4:"Monitor Type",6:"Number of Floppy Drives"}),!0;case "sw2":if(this.Ia==ai)return this.ya[c]=d,hi(this,c,d,this.ue,{0:"Expansion Memory Size",4:"Reserved"}),!0;break;case "swdesc":return this.ya[c]=d,!0}return!1};
k.pc=function(a,b,c,d){this.ra=b;this.T=c;this.fa=d;this.Ka=a;this.bb=eb(a,"Keyboard");this.Ol=Math.round(c.ca.Kd/1193181);tb(b,this,ii);zb(b,this,ji);this.Ia<fi?(tb(b,this,ki),zb(b,this,li)):(tb(b,this,mi),zb(b,this,ni));if(d){var e=this;oi(d,Fd,function(){for(var a=0;a<e.zb.length;a++){for(var b=e.zb[a],c="PIC"+a+":",d=0;d<b.sd.length;d++)c+=" IC"+(d+1)+"="+t(b.sd[d]);c+=" IMR="+t(b.yd)+" IRR="+t(b.Mb)+" ISR="+t(b.Ic);e.fa.message(c)}});oi(d,pi,function(){for(var a=0;a<e.Lb.length;a++){qi(e,a);
var b=e.Lb[a],c="TIMER"+a+":",d=0;if(void 0!==b.kd)for(var n=0;n<=b.kd;n++)d|=b.ac[n]<<8*n;c+=" MODE"+b.mode+" BYTES="+b.kd+" COUNT="+v(d);e.fa.message(c)}});oi(d,ri,function(){for(var a="",b=0;64>b;b++){var c=13>=b?si(e,b):e.ta[b];a&&(a+="\n");a+="CMOS[0x"+t(b)+"]: 0x"+t(c)}e.fa.message(a)})}Xc(c,ti,this,this.Hn)};k.Zb=function(a,b){if(!b)if(!a)this.reset();else if(!this.restore(a))return!1;return!0};k.Yb=function(a){return a&&this.save?this.save():!0};
@ -440,7 +440,7 @@ k.save=function(){var a=new gd(this);a.set(0,[this.$b,this.ue,this.dd,this.Ze]);
[b]);b=[];for(c=0;c<this.Lb.length;c++)d=[],e=this.Lb[c],d[0]=e.Kc,d[1]=e.Yc,d[2]=e.ac,d[3]=e.$f,d[4]=e.hk,d[5]=e.mode,d[6]=e.Cg,d[7]=e.ge,d[8]=e.kd,d[9]=e.md,d[10]=e.cg,d[11]=e.kf,d[12]=e.re,b[c]=d;a.set(3,[this.hi,b]);a.set(4,[this.Xg,this.zc,this.fi,this.Tf,this.Wg]);this.Ia>=fi&&(a.set(5,[this.lb,this.xd,this.gd,this.Sg,this.Ae,this.di]),a.set(6,[this.Rf,this.Og,this.Be,this.ta,this.jg]));return a.data()};
k.restore=function(a){var b,c;b=a[0];this.$b=b[0];this.ue=b[1];this.dd=b[2];this.Ze=b[3];b=a[1];this.fb=Array(this.Uf);for(c=0;c<this.Uf;c++)vi(this,c,1==b.length?b[0][c]:b);b=a[2];this.zb=Array(this.Vf);for(c=0;c<this.Vf;c++)wi(this,c,0===c?32:160,b[0][c]);b=a[3];this.hi=b[0];this.Lb=Array(3);for(c=0;c<this.Lb.length;c++)xi(this,c,b[1][c]);b=a[4];this.Xg=b[0];this.zc=b[1];this.fi=b[2];this.Tf=b[3];this.Wg=b[4];if(b=a[5])this.lb=b[0],this.xd=b[1],this.gd=b[2],this.Sg=b[3],this.Ae=b[4],this.di=b[5];
if(b=a[6])this.Rf=b[0],this.Og=b[1],this.Be=b[2],this.ta=b[3],this.jg=b[4],Ai(this);return!0};function vi(a,b,c){a=a.fb[b]={};c&&5==c.length||(c=[0,void 0,void 0,0,[]]);a.de=c[0];a.ei=c[1];a.fk=c[2];a.ub=c[3];a.On=b<<2;a.Kb=Array(4);for(b=0;b<a.Kb.length;b++)Di(a,b,c[4][b])}function Di(a,b,c){var d=a.Kb[b]={};if(void 0===c||8!=c.length)c=[!0,[],[],[],[]];d.ia=a;d.Dk=b;d.Id=c[0];d.ak=c[1];d.Kc=c[2];d.Sb=c[3];d.ac=c[4];d.mode=c[5];d.Yg=c[6];Ei(d,c[8],c[9])}
function Ei(a,b,c,d){"string"==typeof b&&(b=Wa(b));b&&(a.gh=null,a.$o=b.id,a.ap=c,a.eh=b,a.Ci=b[c],a.Fh=d)}function wi(a,b,c,d){a=a.zb[b]={};d&&8==d.length||(d=[0,[void 0,void 0,void 0,void 0]]);a.port=c;a.vq=b<<3;a.og=d[0];a.sd=d[1];a.Ld=d[2];a.yd=d[3];a.Mb=d[4];a.Ic=d[5];a.Ce=d[6];a.Sf=d[7]}
function Ei(a,b,c,d){"string"==typeof b&&(b=Wa(b));b&&(a.gh=null,a.$o=b.id,a.ap=c,a.eh=b,a.Ci=b[c],a.Fh=d)}function wi(a,b,c,d){a=a.zb[b]={};d&&8==d.length||(d=[0,[void 0,void 0,void 0,void 0]]);a.port=c;a.sq=b<<3;a.og=d[0];a.sd=d[1];a.Ld=d[2];a.yd=d[3];a.Mb=d[4];a.Ic=d[5];a.Ce=d[6];a.Sf=d[7]}
function xi(a,b,c){a=a.Lb[b]={};if(void 0===c||13!=c.length)c=[[],[],[],[]];a.Kc=c[0];a.Yc=c[1];a.ac=c[2];a.$f=c[3];a.hk=c[4];a.mode=c[5];a.Cg=c[6];a.ge=c[7];a.kd=c[8];a.md=c[9];a.cg=c[10];a.kf=c[11];a.re=c[12]}function yi(a,b){return((((b?a.$b:a.dd)&12)>>2)+1)*a.In+32*((b?a.ue:a.Ze)&15)}function Fi(a,b){var c=b?a.$b:a.dd;return a.Ia!=ai||c&ei.Th?((c&ei.Gf)>>ei.Hf)+1:0}
function Bi(a,b){if(b<Fi(a)){if(!a.Vd)return 1;if(b<a.Vd.length)switch(a.Vd[b]){case 160:case 180:case 320:case 360:return 1;case 720:return 3;case 1200:return 2;case 1440:return 4}}return 0}function zi(a,b){return((b?a.$b:a.dd)&di.Gf)>>di.Hf}
function hi(a,b,c,d,e){for(var f="",g=1;8>=g;g++){var h="pcjs-bitCell";g||(h+=" pcjs-bitCellLeft");f+='<div id="'+(b+"-"+g)+'" class="'+h+'" data-value="0">'+g+"</div>\n"}c.innerHTML=f;b=D(c,"pcjs-bitCell");c=null;for(g=0;g<b.length;g++)void 0!==e&&void 0!==e[g]&&(c=e[g]),c&&b[g].setAttribute("title",c),Gi(b[g],d&1<<g?!1:!0),b[g].onclick=function(a,b){return function(){var c="1"!=b.getAttribute("data-value");Gi(b,c);var d=b.getAttribute("id").split("-"),e=1<<parseInt(d[1],10)-1;switch(d[0]){case "sw1":a.$b=
@ -484,8 +484,8 @@ g.message);return}else for(a=b.replace(/\n/gm," ").replace(/ +$/,"").split(" "),
function zj(a,b){if(null==b)return!0;if(kb(a.ra,b,a.Qh,!0)){for(var c=0;c<a.Fb.length;c++)pb(a.ra,b+c,a.Fb[c]);return!0}return!1}Ha(function(){for(var a=D(window.document,"pcjs","rom"),b=0;b<a.length;b++){var c=a[b],d=C(c),d=new wj(d);Za(d,c)}});function Bj(a){z.call(this,"RAM",a,Bj);this.Qg=a.addr;this.Qd=a.size;this.zm=a.test;this.xm=!!this.Qd;this.hh=!1}A(z,Bj);Bj.prototype.pc=function(a,b,c){this.ra=b;this.T=c;this.oa=eb(a,"ChipSet");this.Ta()};Bj.prototype.Zb=function(a,b){b||this.reset();return!0};
Bj.prototype.Yb=function(){return!0};Bj.prototype.reset=function(){if(!this.Qg&&!this.xm&&this.oa){var a=1024*yi(this.oa);this.Qd&&a!=this.Qd&&(mb(this.ra,this.Qg,this.Qd),this.hh=!1);this.Qd=a}!this.hh&&this.Qd&&kb(this.ra,this.Qg,this.Qd)&&(this.hh=!0,this.status(Math.floor(this.Qd/1024)+"Kb"));if(this.hh){if(this.zm||qb(this.ra,1138,4660),this.oa&&(a=this.oa,a.ta)){var b=1048576>this.Qg?21:23,c=a.ta[b]|a.ta[b+1]<<8,c=c+(this.Qd>>10);a.ta[b]=c&255;a.ta[b+1]=c>>8;Ci(a)}}else x("No RAM allocated")};
Ha(function(){for(var a=D(window.document,"pcjs","ram"),b=0;b<a.length;b++){var c=a[b],d=C(c),d=new Bj(d);Za(d,c)}});function Cj(a){z.call(this,"Keyboard",a,Cj);this.Yh={};this.Ln=250;this.Mn=100;this.Ta()}A(z,Cj);
var Q={mp:1,np: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,jp:65,kp:66,Vj:67,im:68,E:69,qp:70,xp:71,Wj:72,zp:73,Ap:74,Bp:75,Cp:76,Dp:77,Uh:78,Fp:79,Gp:80,Ip:81,Yj:82,Mp:83,Wp:84,$p:85,aq:86,bq:87,dq:88,eq:89,fq:90,"[":91,"\\":92,"]":93,"^":94,_:95,"`":96,gq:97,hq:98,jq:99,kq:100,lq:101,mq:102,nq:103,oq:104,pq:105,qq:106,rq:107,sq:108,
tq:109,uq:110,wq:111,xq:112,yq:113,zq:114,Aq:115,Bq:116,Cq:117,Dq:118,Eq:119,x:120,y:121,z:122,"{":123,"|":124,"}":125,"~":126},Dj={16:2,17:8,18:32,20:256},Ej={tab:1009,esc:1027,"right-shift":3016,shift:1016,ctrl:1017,alt:1018,"caps-lock":1020,f1:1112,f2:1113,f3:1114,f4:1115,f5:1116,f6:1117,f7:1118,f8:1119,f9:1120,f10:1121,left:1037,up:1038,right:1039,down:1040,"ctrl-c":4003,"ctrl-break":4063,"ctrl-alt-del":4081},Fj={esc:1,1:2,2:3,3:4,4:5,5:6,6:7,7:8,8:9,9:10,0:11,"-":12,"=":13,bs:14,tab:15,q:16,
var Q={mp:1,np: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,jp:65,kp:66,Vj:67,im:68,E:69,qp:70,tp:71,Wj:72,wp:73,xp:74,yp:75,zp:76,Ap:77,Uh:78,Cp:79,Dp:80,Fp:81,Yj:82,Jp:83,Tp:84,Xp:85,Yp:86,Zp:87,aq:88,bq:89,cq:90,"[":91,"\\":92,"]":93,"^":94,_:95,"`":96,dq:97,eq:98,gq:99,hq:100,iq:101,jq:102,kq:103,lq:104,mq:105,nq:106,oq:107,pq:108,
qq:109,rq:110,tq:111,uq:112,vq:113,wq:114,xq:115,yq:116,zq:117,Aq:118,Bq:119,x:120,y:121,z:122,"{":123,"|":124,"}":125,"~":126},Dj={16:2,17:8,18:32,20:256},Ej={tab:1009,esc:1027,"right-shift":3016,shift:1016,ctrl:1017,alt:1018,"caps-lock":1020,f1:1112,f2:1113,f3:1114,f4:1115,f5:1116,f6:1117,f7:1118,f8:1119,f9:1120,f10:1121,left:1037,up:1038,right:1039,down:1040,"ctrl-c":4003,"ctrl-break":4063,"ctrl-alt-del":4081},Fj={esc:1,1:2,2:3,3:4,4:5,5:6,6:7,7:8,8:9,9:10,0:11,"-":12,"=":13,bs:14,tab:15,q:16,
w:17,e:18,r:19,t:20,y:21,u:22,i:23,o:24,p:25,"[":26,"]":27,enter:28,ctrl:29,a:30,s:31,d:32,f:33,g:34,h:35,j:36,k:37,l:38,";":39,quote:40,"`":41,shift:42,"\\":43,z:44,x:45,c:46,v:47,b:48,n:49,m:50,",":51,".":52,"/":53,"right-shift":54,prtsc:55,alt:56,space:57,"caps-lock":58,f1:59,f2:60,f3:61,f4:62,f5:63,f6:64,f7:65,f8:66,f9:67,f10:68,"num-lock":69,"scroll-lock":70,"num-home":71,"num-up":72,"num-pgup":73,"num-sub":74,"num-left":75,"num-center":76,"num-right":77,"num-add":78,"num-end":79,"num-down":80,
"num-pgdn":81,"num-ins":82,"num-del":83,sysreq:84,pause:84,f11:87,f12:88,"num-enter":7392,"right-ctrl":7648,"num-div":13792,"num-mul":14304,"right-alt":14560,home:18400,up:18656,pgup:18912,left:19424,right:19936,end:20448,down:20704,pgdn:20960,ins:21216,del:21472,win:23520,"right-win":23776,menu:24032},S={1027:2};S[Q["1"]]=2;S[Q["!"]]=10754;S[Q["2"]]=3;S[Q["@"]]=10755;S[Q["3"]]=4;S[Q["#"]]=10756;S[Q["4"]]=5;S[Q.$]=10757;S[Q["5"]]=6;S[Q["%"]]=10758;S[Q["6"]]=7;S[Q["^"]]=10759;S[Q["7"]]=8;
S[Q["&"]]=10760;S[Q["8"]]=9;S[Q["*"]]=10761;S[Q["9"]]=10;S[Q["("]]=10762;S[Q["0"]]=11;S[Q[")"]]=10763;S[Q["-"]]=12;S[Q._]=10764;S[Q["="]]=13;S[Q["+"]]=10765;S[1008]=14;S[1009]=15;S[113]=16;S[81]=10768;S[119]=17;S[87]=10769;S[101]=18;S[69]=10770;S[114]=19;S[82]=10771;S[116]=20;S[84]=10772;S[121]=21;S[89]=10773;S[117]=22;S[85]=10774;S[105]=23;S[73]=10775;S[111]=24;S[79]=10776;S[112]=25;S[80]=10777;S[Q["["]]=26;S[Q["{"]]=10778;S[Q["]"]]=27;S[Q["}"]]=10779;S[13]=28;S[1017]=29;S[97]=30;S[65]=10782;
@ -595,9 +595,9 @@ k.save=function(){var a=0,b=[];b[a++]=[this.Ue,this.gf,this.rb,this.sb,this.xb,t
k.restore=function(a){var b=0,c="unsupported restore format";if(a&&0<a.length){var d=0,e=a[d++];e&&2<=e.length&&(!this.$a.length&&6<=e.length?this.create("local",e[2],e[3],e[4],e[5]):null!=e[1]&&null!=this.gf&&e[1]!=this.gf&&(c="original checksum ("+e[1]+") differs from current checksum ("+this.gf+")",b=-1));for(this.$a.length||(b=-1);d<a.length&&0<=b;){var f=0,g=a[d++],h=g[f++],l=g[f++],n=g[f++];if(h>=this.$a.length||l>=this.$a[h].length||n>=this.$a[h][l].length){c="sector "+h+":"+l+":"+n+" out of range ("+
b+" changes applied)";b=-1;break}if(this.nf){c="unable to modify write-protected disk";b=-1;break}e=g[f++];f=g[f++];g=e+f.length;if(h=this.$a[h][l][n]){for(l=h.data.length;l<e;)h.data[l++]=h.pattern;l=0;h.$c=e;for(h.Ac=f.length;e<g;)h.data[e++]=f[l++];b++}}}0>b&&this.ia.Ja("unable to restore disk '"+this.qd+": "+c);return b};k.Ra=function(a){this.fa&&E(this.fa,pl)&&this.fa.message(a)};
function ql(a){z.call(this,"FDC",a,ql);this.dmaRead=this.oi;this.dmaWrite=this.pi;this.dmaFormat=this.qm;this.Ie=null;if(a.autoMount&&(this.Ie=a.autoMount,"string"==typeof this.Ie))try{this.Ie=eval("("+a.autoMount+")")}catch(b){x("FDC auto-mount error: "+b.message+" ("+a.autoMount+")"),this.Ie=null}this.uc=[]}A(z,ql);m={};aa={};
var rl={3:{zd:3,ee:0,name:aa.Rp},4:{zd:2,ee:1,name:aa.Pp},5:{zd:9,ee:7,name:aa.cq},6:{zd:9,ee:7,name:aa.Jp},7:{zd:2,ee:0,name:aa.Lp},8:{zd:1,ee:2,name:aa.Qp},10:{zd:2,ee:7,name:aa.Kp},13:{zd:6,ee:7,name:aa.rp},15:{zd:3,ee:0,name:aa.Op}};k=ql.prototype;
var rl={3:{zd:3,ee:0,name:aa.Op},4:{zd:2,ee:1,name:aa.Mp},5:{zd:9,ee:7,name:aa.$p},6:{zd:9,ee:7,name:aa.Gp},7:{zd:2,ee:0,name:aa.Ip},8:{zd:1,ee:2,name:aa.Np},10:{zd:2,ee:7,name:aa.Hp},13:{zd:6,ee:7,name:aa.rp},15:{zd:3,ee:0,name:aa.Lp}};k=ql.prototype;
k.Eb=function(a,b,c,d){var e=this;switch(c){case "listDisks":return this.ya[c]=d,sl(this,"Local Disk","?"),sl(this,"Remote Disk","??"),d.onchange=function(){var a=e.ya.descDisk,b=d.options[d.selectedIndex];if(a&&b){var c={};if(b=b.getAttribute("data-value"))try{c=eval("({"+b+"})")}catch(l){x("FDC option error: "+l.message)}b=c.desc;void 0===b&&(b="");c=c.href;void 0!==c&&(b='<a href="'+c+'" target="_blank">'+b+"</a>");a.innerHTML=b}},!0;case "descDisk":case "listDrives":return this.ya[c]=d,d.onchange=
function(){var a=da(d.value,10);null!=a&&tl(e,a)},!0;case "loadDrive":return this.ya[c]=d,d.onclick=function(){var a=e.ya.listDisks;a&&ul(e,a.options[a.selectedIndex].text,a.value)},!0;case "mountDrive":return window.wp&&window.tp&&window.vp?(this.ya[c]=d,d.addEventListener("change",function(){var a=d.children[0];a.children[1].disabled=0==a.children[0].files.length}),d.onsubmit=function(a){if(a=a.currentTarget[1].files[0]){var b=a.name;ul(e,fa(b,!0),b,a)}return!1}):d.parentNode.removeChild(d),!0}return!1};
function(){var a=da(d.value,10);null!=a&&tl(e,a)},!0;case "loadDrive":return this.ya[c]=d,d.onclick=function(){var a=e.ya.listDisks;a&&ul(e,a.options[a.selectedIndex].text,a.value)},!0;case "mountDrive":return window&&"FileReader"in window?(this.ya[c]=d,d.addEventListener("change",function(){var a=d.children[0];a.children[1].disabled=0==a.children[0].files.length}),d.onsubmit=function(a){if(a=a.currentTarget[1].files[0]){var b=a.name;ul(e,fa(b,!0),b,a)}return!1}):d.parentNode.removeChild(d),!0}return!1};
k.pc=function(a,b,c,d){this.ra=b;this.T=c;this.fa=d;this.Ka=a;this.oa=eb(a,"ChipSet");this.Hd();tb(b,this,vl);zb(b,this,wl);this.Pf()||this.Ta()};
k.Zb=function(a,b){if(!b){if(!a||!this.restore){if(this.reset(),this.Ka.yi){this.uc=[];for(var c=0;c<this.Ea.length;c++)xl(this,c,!0);this.Pf(!0)}}else if(!this.restore(a))return!1;if(c=this.ya.listDrives){for(;c.firstChild;)c.removeChild(c.firstChild);c.innerHTML="";for(var d=0;d<this.Qi;d++){var e=window.document.createElement("option");e.value=d;e.innerHTML=String.fromCharCode(65+d)+":";c.appendChild(e)}0<this.Qi&&(c.value="0",tl(this,0))}}return!0};
k.Yb=function(a){return a&&this.save?this.save():!0};k.reset=function(){this.Hd()};k.save=function(){var a=new gd(this);a.set(0,this.Nj());return a.data()};k.restore=function(a){return this.Hd(a[0])};
@ -613,10 +613,10 @@ k.qk=function(a,b,c,d){var e;a.Cc=!1;b&&(e=b.info(),b&&e[0]>a.rb||e[1]>a.sb)&&(t
function sl(a,b,c){if(a=a.ya.listDisks){for(var d=0;d<a.options.length;d++)if(a.options[d].value==c)return;d=window.document.createElement("option");d.value=c;d.innerHTML=b;a.appendChild(d)}}function tl(a,b){if(0<=b&&b<a.Ea.length){var c=a.Ea[b],d=a.ya.listDisks,e=a.ya.listDrives;if(d&&e&&(e=parseInt(e.value,10),c=c.lf?"?":c.Ve,!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 xl(a,b,c,d){var e=a.Ea[b];e.za&&(yl(a,e.Ve,e.za),e.Zl="",e.Ve="",e.za=null,e.lf=!1,a.se|=128,d||a.Ja("Drive "+String.fromCharCode(65+b)+" unloaded",c),c||d||tl(a,b))}function Al(a,b,c,d){var e;for(e=0;e<a.uc.length;e++)if(a.uc[e][1]==c){d.restore(a.uc[e][2]);return}a.uc[e]=[b,c,[]]}function yl(a,b,c){var d;for(d=0;d<a.uc.length;d++)if(a.uc[d][1]==b){a.uc[d][2]=c.save();break}}k.uo=function(a,b,c){this.ea(a,b,c,"OUTPUT");b&4?this.zf&4||this.zf&8&&this.oa&&aj(this.oa,6):this.Hd();this.zf=b};
k.bn=function(a,b){this.ea(a,null,b,"STATUS",this.Da);return this.Da};k.$m=function(a,b){var c=0;this.tb<this.eb&&(c=this.cc[this.tb]);this.zf&8&&this.oa&&bj(this.oa,6);this.ea(a,null,b,"DATA["+this.tb+"]",c);++this.tb>=this.eb&&(this.Da&=-81,this.tb=this.eb=0);return c};
k.to=function(a,b,c){this.ea(a,b,c,"DATA["+this.eb+"]");this.eb<this.cc.length&&(this.cc[this.eb++]=b);a=this.cc[0]&31;if(void 0!==rl[a]&&this.eb>=rl[a].zd){c=!1;this.tb=0;a=this.Qa();var d,e,f,g,h;b=a&31;switch(b){case 3:this.Qa(m.Sp);this.Qa(m.yp);this.Tb();break;case 4:e=this.Qa(m.Ff);this.gb=e&3;d=this.Ea[this.gb];this.Tb();this.bc((d.Ya&4278190080)>>>24,m.Vp);break;case 5:case 6:e=this.Qa(m.Ff);c=e>>2&1;this.gb=e&3;d=this.Ea[this.gb];d.Na=c;e=d.mb=this.Qa(m.Vj);f=this.Qa(m.Wj);g=d.Wa=this.Qa(m.Yj);
h=this.Qa(m.Uh);d.cb=128<<h;d.ce=this.Qa(m.pp);this.Qa(m.jm);this.Qa(m.op);6==b?this.qi(d):this.ri(d);Bl(this,d,a,c,e,f,g,h);c=!0;break;case 7:e=this.Qa(m.Ff);this.gb=e&3;d=this.Ea[this.gb];d.mb=d.ae=0;d.Ya=268435488;this.Tb();c=!0;break;case 8:d=this.Ea[this.gb];d.Na=0;this.Tb();this.bc(d.gb|d.Na<<2|d.Ya&255,m.lm);this.bc(d.mb,m.Hp);this.gb=this.gb+1&3;break;case 10:e=this.Qa(m.Ff);c=e>>2&1;this.gb=e&3;d=this.Ea[this.gb];e=d.mb;f=d.Na=c;g=d.Wa=1;h=0;d.Ya=0;d.za&&(d.Sa=d.za.seek(d.mb,d.Na,d.Wa))?
h=d.Sa.length:d.Ya=1088;Bl(this,d,a,c,e,f,g,h);c=!0;break;case 13:e=this.Qa(m.Ff);c=e>>2&1;this.gb=e&3;d=this.Ea[this.gb];e=d.mb;f=d.Na=c;g=1;h=this.Qa(m.Uh);d.cb=128<<h;d.ce=this.Qa(m.Np);this.Qa(m.jm);d.dk=this.Qa(m.im);this.pk(d);Bl(this,d,a,c,e,f,g,h);c=!0;break;case 15:e=this.Qa(m.Ff),this.gb=e&3,d=this.Ea[this.gb],d.Na=e>>2&1,e=this.Qa(m.Ep),d.mb+=e-d.ae,0>d.mb&&(d.mb=0),d.mb>=d.rb&&(d.mb=d.rb-1),d.ae=e,d.Ya=32,0==d.mb&&(d.Ya|=268435456),this.Tb(),c=!0}0<this.eb&&(this.Da|=80);this.zf&8&&(!d||
d.Ya&8||!c||this.oa&&aj(this.oa,6))}};k.an=function(a,b){var c=this.se;this.se&=-129;this.ea(a,null,b,"INPUT",c);return c};k.so=function(a,b,c){this.ea(a,b,c,"CONTROL");this.Ul=b};function Bl(a,b,c,d,e,f,g,h){a.Tb();a.bc(b.gb|b.Na<<2|b.Ya&255,m.lm);a.bc((b.Ya&65280)>>>8,m.Tp);a.bc((b.Ya&16711680)>>>16,m.Up);var l=0;if(e!=b.mb||f!=b.Na)l=g=1;c&128&&(f^=l,d||(l=0));a.bc(e+l,m.Vj);a.bc(f,m.Wj);a.bc(g,m.Yj);a.bc(h,m.Uh)}k.Qa=function(){var a=this.cc[this.tb];this.tb++;return a};
k.to=function(a,b,c){this.ea(a,b,c,"DATA["+this.eb+"]");this.eb<this.cc.length&&(this.cc[this.eb++]=b);a=this.cc[0]&31;if(void 0!==rl[a]&&this.eb>=rl[a].zd){c=!1;this.tb=0;a=this.Qa();var d,e,f,g,h;b=a&31;switch(b){case 3:this.Qa(m.Pp);this.Qa(m.vp);this.Tb();break;case 4:e=this.Qa(m.Ff);this.gb=e&3;d=this.Ea[this.gb];this.Tb();this.bc((d.Ya&4278190080)>>>24,m.Sp);break;case 5:case 6:e=this.Qa(m.Ff);c=e>>2&1;this.gb=e&3;d=this.Ea[this.gb];d.Na=c;e=d.mb=this.Qa(m.Vj);f=this.Qa(m.Wj);g=d.Wa=this.Qa(m.Yj);
h=this.Qa(m.Uh);d.cb=128<<h;d.ce=this.Qa(m.pp);this.Qa(m.jm);this.Qa(m.op);6==b?this.qi(d):this.ri(d);Bl(this,d,a,c,e,f,g,h);c=!0;break;case 7:e=this.Qa(m.Ff);this.gb=e&3;d=this.Ea[this.gb];d.mb=d.ae=0;d.Ya=268435488;this.Tb();c=!0;break;case 8:d=this.Ea[this.gb];d.Na=0;this.Tb();this.bc(d.gb|d.Na<<2|d.Ya&255,m.lm);this.bc(d.mb,m.Ep);this.gb=this.gb+1&3;break;case 10:e=this.Qa(m.Ff);c=e>>2&1;this.gb=e&3;d=this.Ea[this.gb];e=d.mb;f=d.Na=c;g=d.Wa=1;h=0;d.Ya=0;d.za&&(d.Sa=d.za.seek(d.mb,d.Na,d.Wa))?
h=d.Sa.length:d.Ya=1088;Bl(this,d,a,c,e,f,g,h);c=!0;break;case 13:e=this.Qa(m.Ff);c=e>>2&1;this.gb=e&3;d=this.Ea[this.gb];e=d.mb;f=d.Na=c;g=1;h=this.Qa(m.Uh);d.cb=128<<h;d.ce=this.Qa(m.Kp);this.Qa(m.jm);d.dk=this.Qa(m.im);this.pk(d);Bl(this,d,a,c,e,f,g,h);c=!0;break;case 15:e=this.Qa(m.Ff),this.gb=e&3,d=this.Ea[this.gb],d.Na=e>>2&1,e=this.Qa(m.Bp),d.mb+=e-d.ae,0>d.mb&&(d.mb=0),d.mb>=d.rb&&(d.mb=d.rb-1),d.ae=e,d.Ya=32,0==d.mb&&(d.Ya|=268435456),this.Tb(),c=!0}0<this.eb&&(this.Da|=80);this.zf&8&&(!d||
d.Ya&8||!c||this.oa&&aj(this.oa,6))}};k.an=function(a,b){var c=this.se;this.se&=-129;this.ea(a,null,b,"INPUT",c);return c};k.so=function(a,b,c){this.ea(a,b,c,"CONTROL");this.Ul=b};function Bl(a,b,c,d,e,f,g,h){a.Tb();a.bc(b.gb|b.Na<<2|b.Ya&255,m.lm);a.bc((b.Ya&65280)>>>8,m.Qp);a.bc((b.Ya&16711680)>>>16,m.Rp);var l=0;if(e!=b.mb||f!=b.Na)l=g=1;c&128&&(f^=l,d||(l=0));a.bc(e+l,m.Vj);a.bc(f,m.Wj);a.bc(g,m.Yj);a.bc(h,m.Uh)}k.Qa=function(){var a=this.cc[this.tb];this.tb++;return a};
k.Tb=function(){this.tb=this.eb=0};k.bc=function(a){this.cc[this.eb++]=a};k.oi=function(a,b,c){void 0===b||0>b?this.sc(a,c):c(-1,!1)};k.pi=function(a,b){return void 0!==b&&0<=b?this.Fc(a,b):-1};k.qm=function(a,b){return void 0!==b&&0<=b?this.Rj(a,b):-1};k.qi=function(a){a.Ya=72;a.za&&(a.Sa=null,a.Ya=0,this.oa&&(Ui(this.oa,2,this,"dmaRead",a),Oi(this.oa,2)))};k.ri=function(a){a.Ya=72;a.za&&(a.za.nf?a.Ya=576:(a.Sa=null,a.Ya=0,this.oa&&(Ui(this.oa,2,this,"dmaWrite",a),Oi(this.oa,2))))};
k.pk=function(a){a.Ya=72;a.za&&(a.Sa=null,a.Ya=0,this.oa&&(a.He=0,a.wc=Array(4),a.Qf=!0,a.Wf=0,Ui(this.oa,2,this,"dmaFormat",a),Oi(this.oa,2),a.Qf=!1))};k.sc=function(a,b){var c=-1;if(!a.Ya&&a.za){do{if(a.Sa&&0<=(c=ol(a.Sa,a.ab++)))break;a.Sa=a.za.seek(a.mb,a.Na,a.Wa);if(!a.Sa){a.Ya=1088;break}a.ab=0;this.Nf(a)}while(1)}b(c,!1)};
k.Fc=function(a,b){if(a.Ya||!a.za)return-1;do{if(a.Sa&&a.za.write(a.Sa,a.ab++,b))break;a.Sa=a.za.seek(a.mb,a.Na,a.Wa);if(!a.Sa){a.Ya=8256;b=-1;break}a.ab=0;this.Nf(a)}while(1);return b};k.Nf=function(a){a.Wa++;a.Wa>=a.qg+1&&(a.Wa=1,a.Na++,a.Na>=a.pg&&(a.Na=0,a.mb++))};k.Rj=function(a,b){if(a.Ya)return-1;a.wc[a.He++]=b;if(a.He==a.wc.length){a.mb=a.wc[0];a.Na=a.wc[1];a.Wa=a.wc[2];a.cb=128<<a.wc[3];for(var c=a.He=0;c<a.cb;c++)if(0>this.Fc(a,a.dk))return-1;a.Wf++}a.Wf>=a.ce&&(b=-1);return b};
@ -641,7 +641,7 @@ k.jo=function(a,b,c){this.ea(a,b,c,"SECCNT");this.te=b};k.Rm=function(a,b){var c
k.ho=function(a,b,c){this.ea(a,b,c,"DRVHD");this.yf=b;this.Da=this.Ea[this.yf&16?1:0]?this.Da|64:this.Da&-65};k.Sm=function(a,b){var c=this.Da;this.ea(a,null,b,"STATUS",c);return c};k.bo=function(a,b,c){this.ea(a,b,c,"COMMAND");this.Kj=b;this.oa&&bj(this.oa,14);Kl(this)};k.io=function(a,b,c){this.ea(a,b,c,"FDR");this.Mh&4&&!(b&4)&&(this.Nd=1);this.Mh=b};
function Kl(a){var b=!1,c=a.Kj,d=a.yf&16?1:0,e=a.yf&15,f=a.Lh|(a.Kh&3)<<8,g=a.Nh,h=a.te||256;a.Pa=null;a.Nd=0;a.Da=80;(d=a.Ea[d])?(d.Sd=f,d.Na=e,d.Wa=g,d.cb=h*d.ib,c=144<=c?c:c&240,d.Sa=null,d.errorCode=0,a.Pa=d):c=-1;switch(c&240){case 32:a.sc(d,function(b){0<=b&&a.oa?(Jl(a),a.Da=136):(a.Da=1,a.Nd=16)},!1);break;case 48:a.oa?(Jl(a),a.Da=136):(a.Da=1,a.Nd=4);break;case 16:b=!0;break;case 64:b=!0;break;case 144:a.Nd=1;b=!0;break;case 145:d.sb=e+1,d.xb=h,b=!0}b&&Jl(a)}
function Jl(a){!a.oa||a.Mh&2||aj(a.oa,14)}
function Il(a){a.tb=0;var b=a.Qa(),c=a.Qa(),d=c&32,e=d>>5,f=c&31,g=a.Qa(),h=a.Qa(),l=g<<2&768|h,n=g&63,q=a.Qa(),r=a.Qa(),s=a.Ea[e];s&&(s.Sd=l,s.Na=f,s.Wa=n,s.cb=q*s.ib);switch(b){case 3:a.Tb(s?s.errorCode:4);a.bc(c);a.bc(g);a.bc(h);a.bc(0|d);b=-1;break;case 12:for(c=0;0<=(b=a.Qa());)s&&c<s.bf.length&&(s.bf[c++]=b);s&&Hl(a,s);b=0;s||a.pf!=e||(a.pf=-1,b=2);a.Tb(b|d);b=-1;break;case 224:case 228:a.Tb(0|d),b=-1}if(0<=b)switch(void 0===s?b=-1:(s.errorCode=0,s.dm=0),b){case 0:a.Tb(0|d);break;case 1:s.iq=
function Il(a){a.tb=0;var b=a.Qa(),c=a.Qa(),d=c&32,e=d>>5,f=c&31,g=a.Qa(),h=a.Qa(),l=g<<2&768|h,n=g&63,q=a.Qa(),r=a.Qa(),s=a.Ea[e];s&&(s.Sd=l,s.Na=f,s.Wa=n,s.cb=q*s.ib);switch(b){case 3:a.Tb(s?s.errorCode:4);a.bc(c);a.bc(g);a.bc(h);a.bc(0|d);b=-1;break;case 12:for(c=0;0<=(b=a.Qa());)s&&c<s.bf.length&&(s.bf[c++]=b);s&&Hl(a,s);b=0;s||a.pf!=e||(a.pf=-1,b=2);a.Tb(b|d);b=-1;break;case 224:case 228:a.Tb(0|d),b=-1}if(0<=b)switch(void 0===s?b=-1:(s.errorCode=0,s.dm=0),b){case 0:a.Tb(0|d);break;case 1:s.fq=
r;a.Tb(0|d);break;case 5:a.Tb(0|d);break;case 8:a.qi(s,function(b){a.Tb(b|d)});break;case 10:a.ri(s,function(b){a.Tb(b|d)});break;case 15:Ll(a,s,function(b){a.Tb(b|d)});break;default:a.Tb(2|d)}}k.Qa=function(){var a=-1;this.tb<this.eb&&(a=this.cc[this.tb++]);return a};k.Tb=function(a){this.tb=this.eb=0;void 0!==a&&this.bc(a);this.oa&&aj(this.oa,5);this.Da|=32};k.bc=function(a){this.cc[this.eb++]=a};k.oi=function(a,b,c){void 0===b||0>b?this.sc(a,c):c(-1,!1)};
k.pi=function(a,b){return void 0!==b&&0<=b?this.Fc(a,b):-1};k.rm=function(a,b){var c;void 0!==b&&0<=b?(c=b,a.ab<a.cf.length?a.cf[a.ab++]=c:(a.errorCode=20,c=-1)):c=-1;return c};k.sm=function(a,b){return void 0!==b&&0<=b?this.Rj(a,b):-1};k.qi=function(a,b){a.errorCode=4;if(a.za&&(a.Sa=null,this.oa)){a.errorCode=0;Ui(this.oa,3,this,"dmaRead",a);Oi(this.oa,3,function(c){c||0!=a.errorCode||(a.errorCode=4);b(a.errorCode?2:0)});return}b(a.errorCode?2:0)};
k.ri=function(a,b){a.errorCode=4;if(a.za&&(a.Sa=null,this.oa)){a.errorCode=0;Ui(this.oa,3,this,"dmaWrite",a);Oi(this.oa,3,function(c){c||(0==a.errorCode&&(a.errorCode=4),20==a.errorCode&&(a.errorCode=0));b(a.errorCode?2:0)});return}b(a.errorCode?2:0)};function Ll(a,b,c){b.errorCode=4;b.cf&&b.cf.length==b.cb||(b.cf=Array(b.cb));b.ab=0;a.oa?(b.errorCode=0,Ui(a.oa,3,a,"dmaWriteBuffer",b),Oi(a.oa,3,function(a){a||0!=b.errorCode||(b.errorCode=4);c(b.errorCode?2:0)})):c(b.errorCode?2:0)}

View file

@ -26,7 +26,7 @@ function Qa(a,b,c,d){this.sl=b||0;this.pa=null;this.offset=0;this.Ej=c;this.ea=n
Qa.prototype={Sg:function(){return 0},bh:function(){},Un:function(a){return this.pa[a>>2]>>>((a&3)<<3)&255},Xn:function(a){var b=a>>2;a=(a&3)<<3;var c=this.pa[b]>>>a;return 24>a?c&65535:c&255|(this.pa[b+1]&255)<<8},eo:function(a,b){var c=a>>2,d=(a&3)<<3;this.pa[c]=this.pa[c]&~(255<<d)|b<<d;this.ab=!0},io:function(a,b){var c=a>>2,d=(a&3)<<3;24>d?this.pa[c]=this.pa[c]&~(65535<<d)|b<<d:(this.pa[c]=this.pa[c]&16777215|b<<24,c++,this.pa[c]=this.pa[c]&4294967040|b>>8);this.ab=!0},save:function(){return this.ea?
null:this.pa},restore:function(a){return this.ea?null==a:a&&this.sl==a.length<<2?(this.pa=a,this.ab=!0):!1},re:function(a,b){a||(a=[]);void 0===b&&(b=!0);var c=a;this.yc=c[0]?c[0]:this.Sg;this.Vn=c[1]?c[1]:this.Sg;b&&(this.Vi=c[0]?c[0]:this.Sg,this.Wn=c[1]?c[1]:this.Sg);c=a;this.Bc=c[2]&&!this.Ej?c[2]:this.bh;this.fo=c[3]&&!this.Ej?c[3]:this.bh;b&&(this.cj=c[2]?c[2]:this.bh,this.ho=c[3]?c[3]:this.bh)}};var fb=[Qa.prototype.Un,Qa.prototype.Xn,Qa.prototype.eo,Qa.prototype.io];
function gb(a,b){v.call(this,"CPU",a,gb);var c=a.cycles||b,d=a.multiplier||1;this.ba={};this.ba.kd=c;this.ba.Dd=d;this.ba.Eg=Math.round(this.ba.kd/1E4)/100;this.ba.Me=this.ba.Eg*this.ba.Dd;this.na.Gb=!1;this.na.vc=!1;this.na.Bh=a.autoStart;c=Ba.autostart;void 0!==c&&(this.na.Bh="true"==c?!0:"false"==c?!1:null);this.na.tg=!1;this.ba.Jg=this.ba.Oe=0;this.ba.Kg=a.csStart;this.ba.uf=a.csInterval;this.ba.vf=a.csStop;var e=this;this.Xm=function(){hb(e)};this.Ma()}y(v,gb);k=gb.prototype;
k.nc=function(a,b,c,d){this.qa=b;this.Qa=d;this.La=a;var e=C(a,"Video");e&&(this.pf=function(){ib(e)},this.Se=function(){e.Se()});this.ja=C(a,"ChipSet");this.Ma()};k.reset=function(){};k.save=function(){return null};k.restore=function(){return!1};k.Qb=function(a,b){if(!b){if(a&&this.restore){jb(this);if(!this.restore(a))return!1;kb(this)}else this.reset();this.Zb("No debugger detected")}this.na.Gb=!0;!lb(this)&&this.Qa&&this.Qa.Fp();this.pf();this.of();return!0};
k.nc=function(a,b,c,d){this.qa=b;this.Qa=d;this.La=a;var e=C(a,"Video");e&&(this.pf=function(){ib(e)},this.Se=function(){e.Se()});this.ja=C(a,"ChipSet");this.Ma()};k.reset=function(){};k.save=function(){return null};k.restore=function(){return!1};k.Qb=function(a,b){if(!b){if(a&&this.restore){jb(this);if(!this.restore(a))return!1;kb(this)}else this.reset();this.Zb("No debugger detected")}this.na.Gb=!0;!lb(this)&&this.Qa&&this.Qa.Cp();this.pf();this.of();return!0};
k.Pb=function(a){this.na.Gb=!1;return a&&this.save?this.save():!0};function lb(a){return!0===a.na.Bh||null===a.na.Bh&&void 0===a.sa.run?(hb(a),!0):!1}k.Se=function(){};k.Ij=function(){return 0};function kb(a){void 0===a.ba.Kg&&(a.ba.Kg=0);void 0===a.ba.uf&&(a.ba.uf=-1);void 0===a.ba.vf&&(a.ba.vf=-1);a.na.tg=0<=a.ba.Kg&&0<a.ba.uf;a.na.tg&&(a.ba.Jg=0,a.ba.Oe=a.ba.Kg-a.me)}
function D(a,b,c,d){void 0!==a.sa[b]&&(void 0===d&&(d=4),void 0===c&&(Ma(a,"Register "+b+" is invalid"),mb(a)),c=p(c,d),a.sa[b].innerHTML!=c&&(a.sa[b].innerHTML=c))}k.of=function(){};k.pf=function(){};
k.zb=function(a,b,c,d){var e=this;a=!1;switch(c){case "run":this.sa[c]=d;d.onclick=function(){e.na.vc?mb(e,!0):hb(e,!0)};a=!0;break;case "reset":this.sa[c]=d;d.onclick=function(){e.La&&nb(e.La)};a=!0;break;case "speed":this.sa[c]=d;a=!0;break;case "setSpeed":this.sa[c]=d,d.onclick=function(){ob(e,e.ba.Dd<<1,!0)},d.innerHTML=this.ba.Me.toFixed(2)+"Mhz",a=!0}return a};function pb(a,b,c){a.me+=b;c&&(a.Rc=a.A=0)}
@ -60,7 +60,7 @@ k.Lm=function(a,b){this.Rf=a;this.Fa=this.ha=a.bd(this.Kf=b,0);return this.Z&1?0
k.M=function(){var a=Pc(this,this.Ha)<<24>>24;this.Ha=this.za.nb+(this.va=this.va+1&65535);return a&65535};k.L=function(){var a=E(this,this.Ha);this.Ha=this.za.nb+(this.va=this.va+2&65535);return a};k.Ea=function(){var a=this.Y;this.Y=this.Y+2&65535;return E(this,this.Tb.bd(a,1))};function L(a,b){var c=a.Y=a.Y-2&65535;Rc(a,a.Tb.cc(c,1),b)}
k.of=function(){D(this,"AX",this.H);D(this,"BX",this.C);D(this,"CX",this.J);D(this,"DX",this.K);D(this,"SP",this.Y);D(this,"BP",this.I);D(this,"SI",this.G);D(this,"DI",this.F);D(this,"CS",this.za.Aa);D(this,"DS",this.$b.Aa);D(this,"SS",this.Tb.Aa);D(this,"ES",this.mb.Aa);D(this,"IP",this.va);var a=mc(this);D(this,"PS",a);D(this,"C",a&1?1:0,1);D(this,"P",a&4?1:0,1);D(this,"A",a&16?1:0,1);D(this,"Z",a&64?1:0,1);D(this,"S",a&128?1:0,1);D(this,"T",a&256?1:0,1);D(this,"I",a&512?1:0,1);D(this,"D",a&1024?
1:0,1);D(this,"O",a&2048?1:0,1);this.sa.speed&&(this.sa.speed.innerHTML=this.na.vc&&this.ba.Qc?this.ba.Qc.toFixed(2)+"Mhz":"Stopped")};
k.il=function(a){this.na.ug=!0;this.na.Al=!1;this.Rc=this.A=a;this.ja&&tb(this.ja);a||!this.Qa||this.Qa.vp(Sc)||(this.Z|=4);do{if(a=this.Z&240)this.ua|=a;else if(this.Qg=this.Ha,this.ha=this.Fa=-1,this.D=this.$b,this.N=this.Tb,this.ua=this.Z&256,this.bb){a:{if(!(this.Z&4))if(this.bb&1&&this.Ga&512){if(a=Tc(this.ja),-1<=a&&(this.bb&=-2,0<=a)){this.bb&=-5;Uc.call(this,a,null,11);break a}}else if(this.bb&2){this.bb&=-3;Uc.call(this,1,null,11);break a}if(a=this.bb&8){a=this.ja;for(var b=!1,c=0;c<a.Ta;c++)for(var d=
k.il=function(a){this.na.ug=!0;this.na.Al=!1;this.Rc=this.A=a;this.ja&&tb(this.ja);a||!this.Qa||this.Qa.rp(Sc)||(this.Z|=4);do{if(a=this.Z&240)this.ua|=a;else if(this.Qg=this.Ha,this.ha=this.Fa=-1,this.D=this.$b,this.N=this.Tb,this.ua=this.Z&256,this.bb){a:{if(!(this.Z&4))if(this.bb&1&&this.Ga&512){if(a=Tc(this.ja),-1<=a&&(this.bb&=-2,0<=a)){this.bb&=-5;Uc.call(this,a,null,11);break a}}else if(this.bb&2){this.bb&=-3;Uc.call(this,1,null,11);break a}if(a=this.bb&8){a=this.ja;for(var b=!1,c=0;c<a.Ta;c++)for(var d=
a.Ta[c],e=0;e<d.wb.length;e++){var f=d.wb[e];f.jd||(Vc(a,f),f.jd||(b=!0))}a=!b}a&&(this.bb&=-9)}if(this.bb&4){this.Z=this.A=0;break}}this.Z=0;this.Na[this.da()].call(this)}while(0<this.A);return this.na.ug?this.Rc-this.A:void 0===this.na.ug?0:-1};u(function(){for(var a=A(window.document,"pcjs","cpu"),b=0;b<a.length;b++){var c=a[b],d=z(c),d=new Ib(d);Ja(d,c)}});function Wc(a,b){this.ka=a^b;this.ca=256;this.A-=0>this.Fa?0>this.ha?this.B.Ib:this.B.kb:this.B.Xb;return(this.X=this.ia=a+b)&255}
function Xc(a,b){this.ca=256;this.A-=0>this.Fa?0>this.ha?this.B.Ib:this.B.kb:this.B.Xb;return(this.X=this.ia=this.ka=a|b)&255}function Yc(a,b){this.ka=a^b;this.X=this.ia=a+b+(this.X&this.ca?1:0);this.ca=256;this.A-=0>this.Fa?0>this.ha?this.B.Ib:this.B.kb:this.B.Xb;return this.X&255}function Zc(a,b){this.ka=a^b;this.X=this.ia=a-b-(this.X&this.ca?1:0);this.ca=256;this.A-=0>this.Fa?0>this.ha?this.B.Ib:this.B.kb:this.B.Xb;return this.X&255}
function $c(a,b){this.ca=256;this.A-=0>this.Fa?0>this.ha?this.B.Ib:this.B.kb:this.B.Xb;return(this.X=this.ia=this.ka=a&b)&255}function ad(a,b){this.ka=a^b;this.ca=256;this.A-=0>this.Fa?0>this.ha?this.B.Ib:this.B.kb:this.B.Xb;return(this.X=this.ia=a-b)&255}function bd(a,b){this.ca=256;this.A-=0>this.Fa?0>this.ha?this.B.Ib:this.B.kb:this.B.Xb;return(this.X=this.ia=this.ka=a^b)&255}
@ -418,7 +418,7 @@ this.da();eb(this.qa,a,this.H&255,this.Ha-2);this.A-=this.B.zi},function(){var a
2},function(){this.vb=-1;Ig[this.da()].call(this,Od,Fd);0<=this.vb&&(this.H=this.vb)},function(){this.vb=-1;Jg[this.da()].call(this,Pd,Fd);0<=this.vb&&(this.H=this.vb,this.K=this.Nf)},function(){this.X&=~this.ca;this.A-=2},function(){this.X|=this.ca;this.A-=2},function(){this.Ga&=-513;this.A-=this.B.Yj},function(){this.Ga|=512;this.Z|=4;this.A-=2},function(){this.Ga&=-1025;this.A-=2},function(){this.Ga|=1024;this.A-=2},function(){Ig[this.da()].call(this,cc,Fd)},function(){Jg[this.da()].call(this,
ec,Fd)}];
function R(a){v.call(this,"ChipSet",a,R);this.Da=a.model;this.Da=void 0!==this.Da?parseInt(this.Da,10):ih;this.Lb=0;var b=a.sw1;if(b)this.Lb=jh(b,kh|lh.ol);else{this.pd=[360,360];(b=a.floppies)&&void 0!==b.length&&(this.pd=b);if(b=this.pd.length)this.Lb|=mh.dh,b--,this.Lb|=(b&3)<<mh.Xe;if(b=a.monitor||(this.Da<nh?"mono":"ega"),void 0!==oh[b])this.Lb|=oh[b]<<lh.Xe}this.Nd=jh(a.sw2||"11110000",0);this.Km=this.Da==ih?16:64;this.ff=this.gf=1;this.Da>=nh&&(this.ff=this.gf=2);this.yg=a.scaleTimers||!1;
this.ao=a.rtcDate;this.Gj=!1;a.sound&&window&&"webkitAudioContext"in window&&(this.th=new webkitAudioContext);this.reset(!0);this.Ma()}y(v,R);var ih=5150,nh=5170,oh={none:0,tv:1,color:2,mono:3,ega:0},mh={dh:1,ONE:0,Yo:64,Wo:128,so:192,We:192,Xe:6},kh=12,lh={Xo:16,lo:32,ol:48,We:48,Xe:4};k=R.prototype;
this.ao=a.rtcDate;this.Gj=!1;a.sound&&window&&"webkitAudioContext"in window&&(this.th=new webkitAudioContext);this.reset(!0);this.Ma()}y(v,R);var ih=5150,nh=5170,oh={none:0,tv:1,color:2,mono:3,ega:0},mh={dh:1,ONE:0,Vo:64,To:128,so:192,We:192,Xe:6},kh=12,lh={Uo:16,lo:32,ol:48,We:48,Xe:4};k=R.prototype;
k.zb=function(a,b,c,d){switch(c){case "sw1":return this.sa[c]=d,ph(this,c,d,this.Lb,{0:this.Da==ih?"Bootable Floppy Drive":"Loop on POST",1:this.Da==ih?"Reserved":"Coprocessor",2:"Base Memory Size",4:"Monitor Type",6:"Number of Floppy Drives"}),!0;case "sw2":if(this.Da==ih)return this.sa[c]=d,ph(this,c,d,this.Nd,{0:"Expansion Memory Size",4:"Reserved"}),!0;break;case "swdesc":return this.sa[c]=d,!0}return!1};
k.nc=function(a,b,c,d){this.qa=b;this.la=c;this.Qa=d;this.La=a;this.Ra=C(a,"Keyboard");this.Vk=Math.round(c.ba.kd/1193181);bb(b,this,qh);db(b,this,rh);this.Da<nh?(bb(b,this,sh),db(b,this,th)):(bb(b,this,uh),db(b,this,vh))};k.Qb=function(a,b){if(!b)if(!a)this.reset();else if(!this.restore(a))return!1;return!0};k.Pb=function(a){return a&&this.save?this.save():!0};
k.reset=function(a){var b;this.Lc=this.Lb;this.te=this.Nd;wh(this);this.Ta=Array(this.ff);for(b=0;b<this.ff;b++)xh(this,b);this.qb=Array(this.gf);yh(this,0,32);1<this.gf&&yh(this,1,160);this.ph=void 0;this.Mb=Array(3);for(b=0;b<this.Mb.length;b++)zh(this,b);this.ef=this.nh=this.kc=this.jg=void 0;this.ig=0;if(this.Da>=nh){this.hb=16;this.Zc=0;this.Mc=16;this.dg=0;this.Vd=160;512<=Ah(this)&&(this.Vd|=16);3==Bh(this)&&(this.Vd|=64);this.lh=3;this.gg=0;this.Nb=Array(7);this.Ae=0;a&&(this.oa=Array(64));
@ -429,7 +429,7 @@ k.save=function(){var a=new G(this);a.set(0,[this.Lb,this.Nd,this.Lc,this.te]);f
[b]);b=[];for(c=0;c<this.Mb.length;c++)d=[],e=this.Mb[c],d[0]=e.rc,d[1]=e.Ic,d[2]=e.Wb,d[3]=e.lf,d[4]=e.tj,d[5]=e.mode,d[6]=e.Of,d[7]=e.xd,d[8]=e.de,d[9]=e.Pc,d[10]=e.qf,d[11]=e.Ee,d[12]=e.Kd,b[c]=d;a.set(3,[this.ph,b]);a.set(4,[this.jg,this.kc,this.nh,this.ef,this.ig]);this.Da>=nh&&(a.set(5,[this.hb,this.Zc,this.Mc,this.dg,this.Vd,this.lh]),a.set(6,[this.gg,this.Nb,this.Ae,this.oa,this.tf]));return a.data()};
k.restore=function(a){var b,c;b=a[0];this.Lb=b[0];this.Nd=b[1];this.Lc=b[2];this.te=b[3];b=a[1];this.Ta=Array(this.ff);for(c=0;c<this.ff;c++)xh(this,c,1==b.length?b[0][c]:b);b=a[2];this.qb=Array(this.gf);for(c=0;c<this.gf;c++)yh(this,c,0===c?32:160,b[0][c]);b=a[3];this.ph=b[0];this.Mb=Array(3);for(c=0;c<this.Mb.length;c++)zh(this,c,b[1][c]);b=a[4];this.jg=b[0];this.kc=b[1];this.nh=b[2];this.ef=b[3];this.ig=b[4];if(b=a[5])this.hb=b[0],this.Zc=b[1],this.Mc=b[2],this.dg=b[3],this.Vd=b[4],this.lh=b[5];
if(b=a[6])this.gg=b[0],this.Nb=b[1],this.Ae=b[2],this.oa=b[3],this.tf=b[4],Ch(this);return!0};function xh(a,b,c){a=a.Ta[b]={};c&&5==c.length||(c=[0,void 0,void 0,0,[]]);a.ud=c[0];a.mh=c[1];a.rj=c[2];a.Eb=c[3];a.Pm=b<<2;a.wb=Array(4);for(b=0;b<a.wb.length;b++)Fh(a,b,c[4][b])}function Fh(a,b,c){var d=a.wb[b]={};if(void 0===c||8!=c.length)c=[!0,[],[],[],[]];d.ea=a;d.Kj=b;d.jd=c[0];d.mj=c[1];d.rc=c[2];d.Cb=c[3];d.Wb=c[4];d.mode=c[5];d.kg=c[6];Gh(d,c[8],c[9])}
function Gh(a,b,c,d){"string"==typeof b&&(b=Ha(b));b&&(a.pg=null,a.Yn=b.id,a.Zn=c,a.og=b,a.Mh=b[c],a.Pg=d)}function yh(a,b,c,d){a=a.qb[b]={};d&&8==d.length||(d=[0,[void 0,void 0,void 0,void 0]]);a.port=c;a.xp=b<<3;a.Af=d[0];a.Rd=d[1];a.ld=d[2];a.$c=d[3];a.Db=d[4];a.Ec=d[5];a.Wd=d[6];a.df=d[7]}
function Gh(a,b,c,d){"string"==typeof b&&(b=Ha(b));b&&(a.pg=null,a.Yn=b.id,a.Zn=c,a.og=b,a.Mh=b[c],a.Pg=d)}function yh(a,b,c,d){a=a.qb[b]={};d&&8==d.length||(d=[0,[void 0,void 0,void 0,void 0]]);a.port=c;a.tp=b<<3;a.Af=d[0];a.Rd=d[1];a.ld=d[2];a.$c=d[3];a.Db=d[4];a.Ec=d[5];a.Wd=d[6];a.df=d[7]}
function zh(a,b,c){a=a.Mb[b]={};if(void 0===c||13!=c.length)c=[[],[],[],[]];a.rc=c[0];a.Ic=c[1];a.Wb=c[2];a.lf=c[3];a.tj=c[4];a.mode=c[5];a.Of=c[6];a.xd=c[7];a.de=c[8];a.Pc=c[9];a.qf=c[10];a.Ee=c[11];a.Kd=c[12]}function Ah(a,b){return((((b?a.Lb:a.Lc)&12)>>2)+1)*a.Km+32*((b?a.Nd:a.te)&15)}function Hh(a,b){var c=b?a.Lb:a.Lc;return a.Da!=ih||c&mh.dh?((c&mh.We)>>mh.Xe)+1:0}
function Dh(a,b){if(b<Hh(a)){if(!a.pd)return 1;if(b<a.pd.length)switch(a.pd[b]){case 160:case 180:case 320:case 360:return 1;case 720:return 3;case 1200:return 2;case 1440:return 4}}return 0}function Bh(a,b){return((b?a.Lb:a.Lc)&lh.We)>>lh.Xe}
function ph(a,b,c,d,e){for(var f="",h=1;8>=h;h++){var g="pcjs-bitCell";h||(g+=" pcjs-bitCellLeft");f+='<div id="'+(b+"-"+h)+'" class="'+g+'" data-value="0">'+h+"</div>\n"}c.innerHTML=f;b=A(c,"pcjs-bitCell");c=null;for(h=0;h<b.length;h++)void 0!==e&&void 0!==e[h]&&(c=e[h]),c&&b[h].setAttribute("title",c),Ih(b[h],d&1<<h?!1:!0),b[h].onclick=function(a,b){return function(){var c="1"!=b.getAttribute("data-value");Ih(b,c);var d=b.getAttribute("id").split("-"),e=1<<parseInt(d[1],10)-1;switch(d[0]){case "sw1":a.Lb=
@ -460,14 +460,14 @@ var qh={0:function(){return Jh(this,0,0)},1:function(){return Lh(this,0,0)},2:fu
128:R.prototype.En,132:function(a,b){this.Nb[0]=b},133:function(a,b){this.Nb[1]=b},134:function(a,b){this.Nb[2]=b},136:function(a,b){this.Nb[3]=b},137:function(a,b){Th(this,1,2,b)},138:function(a,b){Th(this,1,3,b)},139:function(a,b){Th(this,1,1,b)},140:function(a,b){this.Nb[4]=b},141:function(a,b){this.Nb[5]=b},142:function(a,b){this.Nb[6]=b},143:function(a,b){Th(this,1,0,b)},160:function(a,b){Xh(this,1,b)},161:function(a,b){ci(this,1,b)},192:function(a,b){Kh(this,1,0,b)},194:function(a,b){Mh(this,
1,0,b)},196:function(a,b){Kh(this,1,1,b)},198:function(a,b){Mh(this,1,1,b)},200:function(a,b){Kh(this,1,2,b)},202:function(a,b){Mh(this,1,2,b)},204:function(a,b){Kh(this,1,3,b)},206:function(a,b){Mh(this,1,3,b)},208:function(a,b){this.Ta[1].mh=b},210:function(a,b){Oh(this,1,b)},212:function(a,b){Ph(this,1,b)},214:function(a,b){this.Ta[1].wb[b&3].mode=b},216:function(){this.Ta[1].Eb=0},218:function(){Rh(this,1)}};
u(function(){for(var a=A(window.document,"pcjs","chipset"),b=0;b<a.length;b++){var c=a[b],d=z(c),d=new R(d);Ja(d,c);wh(d)}});function si(a){v.call(this,"ROM",a,si);this.rb=null;this.nj=a.addr;this.$g=a.size;this.ql=a.alias;this.Pf=a.file;this.Mj=a.notify;if(this.Pf){a=this.Pf;var b=ea(this.Pf);"json"!=b&&"hex"!=b&&(a=la()+"/api/v1/dump?file="+this.Pf+"&format=bytes&decimal=true");r(a,!0,null,this,si.prototype.Um)}}y(v,si);si.prototype.nc=function(a,b,c,d){this.qa=b;this.la=c;this.Qa=d;ti(this)};
si.prototype.Qb=function(){this.jh&&(this.Qa&&this.Qa.gp(this.nj,this.$g,this.jh),delete this.jh);return!0};si.prototype.Pb=function(){return!0};
si.prototype.Qb=function(){this.jh&&(this.Qa&&this.Qa.dp(this.nj,this.$g,this.jh),delete this.jh);return!0};si.prototype.Pb=function(){return!0};
si.prototype.Um=function(a,b,c){if(c)this.ya("Unable to load system ROM (error "+c+")");else{if("["==b.charAt(0)||"{"==b.charAt(0))try{var d=eval("("+b+")"),e=d.bytes,f=d.data;if(e)this.rb=e;else if(f)for(this.rb=Array(4*f.length),c=b=0;b<f.length;b++)this.rb[c++]=f[b]&255,this.rb[c++]=f[b]>>8&255,this.rb[c++]=f[b]>>16&255,this.rb[c++]=f[b]>>24&255;else this.rb=d;this.jh=d.symbols;if(!this.rb.length){s("Empty ROM: "+a);return}if(1==this.rb.length){s(this.rb[0]);return}}catch(h){this.ya("ROM data error: "+
h.message);return}else for(a=b.replace(/\n/gm," ").replace(/ +$/,"").split(" "),this.rb=Array(a.length),d=0;d<a.length;d++)this.rb[d]=parseInt(a[d],16);ti(this)}};function ti(a){if(!La(a))if(!a.Pf)a.Ma();else if(a.rb&&a.qa){if(a.rb.length!=a.$g)Ma(a,"ROM size (0x"+p(a.rb.length)+") does not match specified size (0x"+p(a.$g)+")");else if(ui(a,a.nj)&&ui(a,a.ql)){if(a.Mj){var b=Ha(a.Mj,a.id);b&&("ega"==b.Da&&vi(b,a.rb,[8752,12640],8),b.Ma())}delete a.rb}a.Ma()}}
function ui(a,b){if(null==b)return!0;if(Sa(a.qa,b,a.$g,!0)){for(var c=0;c<a.rb.length;c++)Za(a.qa,b+c,a.rb[c]);return!0}return!1}u(function(){for(var a=A(window.document,"pcjs","rom"),b=0;b<a.length;b++){var c=a[b],d=z(c),d=new si(d);Ja(d,c)}});function wi(a){v.call(this,"RAM",a,wi);this.cg=a.addr;this.nd=a.size;this.Fl=a.test;this.Cl=!!this.nd;this.qg=!1}y(v,wi);wi.prototype.nc=function(a,b,c){this.qa=b;this.la=c;this.ja=C(a,"ChipSet");this.Ma()};wi.prototype.Qb=function(a,b){b||this.reset();return!0};
wi.prototype.Pb=function(){return!0};wi.prototype.reset=function(){if(!this.cg&&!this.Cl&&this.ja){var a=1024*Ah(this.ja);this.nd&&a!=this.nd&&(Wa(this.qa,this.cg,this.nd),this.qg=!1);this.nd=a}!this.qg&&this.nd&&Sa(this.qa,this.cg,this.nd)&&(this.qg=!0,this.status(Math.floor(this.nd/1024)+"Kb"));if(this.qg){if(this.Fl||$a(this.qa,1138,4660),this.ja&&(a=this.ja,a.oa)){var b=1048576>this.cg?21:23,c=a.oa[b]|a.oa[b+1]<<8,c=c+(this.nd>>10);a.oa[b]=c&255;a.oa[b+1]=c>>8;Eh(a)}}else s("No RAM allocated")};
u(function(){for(var a=A(window.document,"pcjs","ram"),b=0;b<a.length;b++){var c=a[b],d=z(c),d=new wi(d);Ja(d,c)}});function xi(a){v.call(this,"Keyboard",a,xi);this.ih={};this.Nm=250;this.Om=100;this.Ma()}y(v,xi);
var S={mo:1,no: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,jo:65,ko:66,gj:67,ml:68,E:69,qo:70,wo:71,hj:72,yo:73,zo:74,Ao:75,Bo:76,Co:77,eh:78,Eo:79,Fo:80,Ho:81,jj:82,Lo:83,Vo:84,Zo:85,$o:86,ap:87,cp:88,dp:89,ep:90,"[":91,"\\":92,"]":93,"^":94,_:95,"`":96,fp:97,hp:98,jp:99,kp:100,lp:101,mp:102,np:103,op:104,pp:105,qp:106,rp:107,sp:108,
tp:109,wp:110,yp:111,zp:112,Ap:113,Bp:114,Cp:115,Dp:116,Ep:117,Gp:118,Hp:119,x:120,y:121,z:122,"{":123,"|":124,"}":125,"~":126},yi={16:2,17:8,18:32,20:256},zi={tab:1009,esc:1027,"right-shift":3016,shift:1016,ctrl:1017,alt:1018,"caps-lock":1020,f1:1112,f2:1113,f3:1114,f4:1115,f5:1116,f6:1117,f7:1118,f8:1119,f9:1120,f10:1121,left:1037,up:1038,right:1039,down:1040,"ctrl-c":4003,"ctrl-break":4063,"ctrl-alt-del":4081},Ai={esc:1,1:2,2:3,3:4,4:5,5:6,6:7,7:8,8:9,9:10,0:11,"-":12,"=":13,bs:14,tab:15,q:16,
var S={mo:1,no: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,jo:65,ko:66,gj:67,ml:68,E:69,qo:70,to:71,hj:72,vo:73,wo:74,xo:75,yo:76,zo:77,eh:78,Bo:79,Co:80,Eo:81,jj:82,Io:83,So:84,Wo:85,Xo:86,Yo:87,$o:88,ap:89,bp:90,"[":91,"\\":92,"]":93,"^":94,_:95,"`":96,cp:97,ep:98,gp:99,hp:100,ip:101,jp:102,kp:103,lp:104,mp:105,np:106,op:107,pp:108,
qp:109,sp:110,vp:111,wp:112,xp:113,yp:114,zp:115,Ap:116,Bp:117,Dp:118,Ep:119,x:120,y:121,z:122,"{":123,"|":124,"}":125,"~":126},yi={16:2,17:8,18:32,20:256},zi={tab:1009,esc:1027,"right-shift":3016,shift:1016,ctrl:1017,alt:1018,"caps-lock":1020,f1:1112,f2:1113,f3:1114,f4:1115,f5:1116,f6:1117,f7:1118,f8:1119,f9:1120,f10:1121,left:1037,up:1038,right:1039,down:1040,"ctrl-c":4003,"ctrl-break":4063,"ctrl-alt-del":4081},Ai={esc:1,1:2,2:3,3:4,4:5,5:6,6:7,7:8,8:9,9:10,0:11,"-":12,"=":13,bs:14,tab:15,q:16,
w:17,e:18,r:19,t:20,y:21,u:22,i:23,o:24,p:25,"[":26,"]":27,enter:28,ctrl:29,a:30,s:31,d:32,f:33,g:34,h:35,j:36,k:37,l:38,";":39,quote:40,"`":41,shift:42,"\\":43,z:44,x:45,c:46,v:47,b:48,n:49,m:50,",":51,".":52,"/":53,"right-shift":54,prtsc:55,alt:56,space:57,"caps-lock":58,f1:59,f2:60,f3:61,f4:62,f5:63,f6:64,f7:65,f8:66,f9:67,f10:68,"num-lock":69,"scroll-lock":70,"num-home":71,"num-up":72,"num-pgup":73,"num-sub":74,"num-left":75,"num-center":76,"num-right":77,"num-add":78,"num-end":79,"num-down":80,
"num-pgdn":81,"num-ins":82,"num-del":83,sysreq:84,pause:84,f11:87,f12:88,"num-enter":7392,"right-ctrl":7648,"num-div":13792,"num-mul":14304,"right-alt":14560,home:18400,up:18656,pgup:18912,left:19424,right:19936,end:20448,down:20704,pgdn:20960,ins:21216,del:21472,win:23520,"right-win":23776,menu:24032},T={1027:2};T[S["1"]]=2;T[S["!"]]=10754;T[S["2"]]=3;T[S["@"]]=10755;T[S["3"]]=4;T[S["#"]]=10756;T[S["4"]]=5;T[S.$]=10757;T[S["5"]]=6;T[S["%"]]=10758;T[S["6"]]=7;T[S["^"]]=10759;T[S["7"]]=8;
T[S["&"]]=10760;T[S["8"]]=9;T[S["*"]]=10761;T[S["9"]]=10;T[S["("]]=10762;T[S["0"]]=11;T[S[")"]]=10763;T[S["-"]]=12;T[S._]=10764;T[S["="]]=13;T[S["+"]]=10765;T[1008]=14;T[1009]=15;T[113]=16;T[81]=10768;T[119]=17;T[87]=10769;T[101]=18;T[69]=10770;T[114]=19;T[82]=10771;T[116]=20;T[84]=10772;T[121]=21;T[89]=10773;T[117]=22;T[85]=10774;T[105]=23;T[73]=10775;T[111]=24;T[79]=10776;T[112]=25;T[80]=10777;T[S["["]]=26;T[S["{"]]=10778;T[S["]"]]=27;T[S["}"]]=10779;T[13]=28;T[1017]=29;T[97]=30;T[65]=10782;
@ -566,10 +566,10 @@ k.save=function(){var a=0,b=[];b[a++]=[this.oe,this.De,this.fb,this.gb,this.lb,t
k.restore=function(a){var b=0,c="unsupported restore format";if(a&&0<a.length){var d=0,e=a[d++];e&&2<=e.length&&(!this.Ua.length&&6<=e.length?this.create("local",e[2],e[3],e[4],e[5]):null!=e[1]&&null!=this.De&&e[1]!=this.De&&(c="original checksum ("+e[1]+") differs from current checksum ("+this.De+")",b=-1));for(this.Ua.length||(b=-1);d<a.length&&0<=b;){var f=0,h=a[d++],g=h[f++],m=h[f++],n=h[f++];if(g>=this.Ua.length||m>=this.Ua[g].length||n>=this.Ua[g][m].length){c="sector "+g+":"+m+":"+n+" out of range ("+
b+" changes applied)";b=-1;break}if(this.He){c="unable to modify write-protected disk";b=-1;break}e=h[f++];f=h[f++];h=e+f.length;if(g=this.Ua[g][m][n]){for(m=g.data.length;m<e;)g.data[m++]=g.pattern;m=0;g.Jc=e;for(g.lc=f.length;e<h;)g.data[e++]=f[m++];b++}}}0>b&&this.ea.ya("unable to restore disk '"+this.Uc+": "+c);return b};
function Nj(a){v.call(this,"FDC",a,Nj);this.dmaRead=this.xh;this.dmaWrite=this.yh;this.dmaFormat=this.ul;this.ce=null;if(a.autoMount&&(this.ce=a.autoMount,"string"==typeof this.ce))try{this.ce=eval("("+a.autoMount+")")}catch(b){s("FDC auto-mount error: "+b.message+" ("+a.autoMount+")"),this.ce=null}this.ic=[]}y(v,Nj);l={};aa={};
var Oj={3:{ad:3,vd:0,name:aa.Qo},4:{ad:2,vd:1,name:aa.Oo},5:{ad:9,vd:7,name:aa.bp},6:{ad:9,vd:7,name:aa.Io},7:{ad:2,vd:0,name:aa.Ko},8:{ad:1,vd:2,name:aa.Po},10:{ad:2,vd:7,name:aa.Jo},13:{ad:6,vd:7,name:aa.ro},15:{ad:3,vd:0,name:aa.No}};k=Nj.prototype;
var Oj={3:{ad:3,vd:0,name:aa.No},4:{ad:2,vd:1,name:aa.Lo},5:{ad:9,vd:7,name:aa.Zo},6:{ad:9,vd:7,name:aa.Fo},7:{ad:2,vd:0,name:aa.Ho},8:{ad:1,vd:2,name:aa.Mo},10:{ad:2,vd:7,name:aa.Go},13:{ad:6,vd:7,name:aa.ro},15:{ad:3,vd:0,name:aa.Ko}};k=Nj.prototype;
k.zb=function(a,b,c,d){var e=this;switch(c){case "listDisks":return this.sa[c]=d,Pj(this,"Local Disk","?"),Pj(this,"Remote Disk","??"),d.onchange=function(){var a=e.sa.descDisk,b=d.options[d.selectedIndex];if(a&&b){var c={};if(b=b.getAttribute("data-value"))try{c=eval("({"+b+"})")}catch(m){s("FDC option error: "+m.message)}b=c.desc;void 0===b&&(b="");c=c.href;void 0!==c&&(b='<a href="'+c+'" target="_blank">'+b+"</a>");a.innerHTML=b}},!0;case "descDisk":case "listDrives":return this.sa[c]=d,d.onchange=
function(){var a;a=d.value;var b=10,c;if(a){b||(b=16);if("$"==a.charAt(0))b=16,a=a.substr(1);else if("0x"==a.substr(0,2))b=16,a=a.substr(2);else{var m=a.charAt(a.length-1).toLowerCase();"h"==m?(b=16,m=null):"."==m&&(b=10,m=null);null===m&&(a=a.substr(0,a.length-1))}var n;ca(a,b)&&!isNaN(n=parseInt(a,b))&&(c=n)}a=c;null!=a&&Qj(e,a)},!0;case "loadDrive":return this.sa[c]=d,d.onclick=function(){var a=e.sa.listDisks;a&&Rj(e,a.options[a.selectedIndex].text,a.value)},!0;case "mountDrive":return window.vo&&
window.to&&window.uo?(this.sa[c]=d,d.addEventListener("change",function(){var a=d.children[0];a.children[1].disabled=0==a.children[0].files.length}),d.onsubmit=function(a){if(a=a.currentTarget[1].files[0]){var b=a.name;Rj(e,da(b,!0),b,a)}return!1}):d.parentNode.removeChild(d),!0}return!1};k.nc=function(a,b,c,d){this.qa=b;this.la=c;this.Qa=d;this.La=a;this.ja=C(a,"ChipSet");this.gd();bb(b,this,Sj);db(b,this,Tj);this.bf()||this.Ma()};
function(){var a;a=d.value;var b=10,c;if(a){b||(b=16);if("$"==a.charAt(0))b=16,a=a.substr(1);else if("0x"==a.substr(0,2))b=16,a=a.substr(2);else{var m=a.charAt(a.length-1).toLowerCase();"h"==m?(b=16,m=null):"."==m&&(b=10,m=null);null===m&&(a=a.substr(0,a.length-1))}var n;ca(a,b)&&!isNaN(n=parseInt(a,b))&&(c=n)}a=c;null!=a&&Qj(e,a)},!0;case "loadDrive":return this.sa[c]=d,d.onclick=function(){var a=e.sa.listDisks;a&&Rj(e,a.options[a.selectedIndex].text,a.value)},!0;case "mountDrive":return window&&
"FileReader"in window?(this.sa[c]=d,d.addEventListener("change",function(){var a=d.children[0];a.children[1].disabled=0==a.children[0].files.length}),d.onsubmit=function(a){if(a=a.currentTarget[1].files[0]){var b=a.name;Rj(e,da(b,!0),b,a)}return!1}):d.parentNode.removeChild(d),!0}return!1};k.nc=function(a,b,c,d){this.qa=b;this.la=c;this.Qa=d;this.La=a;this.ja=C(a,"ChipSet");this.gd();bb(b,this,Sj);db(b,this,Tj);this.bf()||this.Ma()};
k.Qb=function(a,b){if(!b){if(!a||!this.restore){if(this.reset(),this.La.Hh){this.ic=[];for(var c=0;c<this.xa.length;c++)Uj(this,c,!0);this.bf(!0)}}else if(!this.restore(a))return!1;if(c=this.sa.listDrives){for(;c.firstChild;)c.removeChild(c.firstChild);c.innerHTML="";for(var d=0;d<this.bi;d++){var e=window.document.createElement("option");e.value=d;e.innerHTML=String.fromCharCode(65+d)+":";c.appendChild(e)}0<this.bi&&(c.value="0",Qj(this,0))}}return!0};
k.Pb=function(a){return a&&this.save?this.save():!0};k.reset=function(){this.gd()};k.save=function(){var a=new G(this);a.set(0,this.Yi());return a.data()};k.restore=function(a){return this.gd(a[0])};
k.gd=function(a){var b=0,c,d=!0;void 0===a&&(a=[0,0,128,Array(9),0,0,0,[]]);this.Wa=a[b++];b++;this.wa=a[b++];this.Sb=a[b++];this.pb=a[b++];this.$a=a[b++];this.Re=a[b++];var e=a[b++];c=a[b++];null!=c&&(this.ic=c);void 0===this.xa&&(this.bi=4,this.ja&&(this.bi=Hh(this.ja)),this.xa=Array(4));for(c=0;c<this.xa.length;c++){var f=this.xa[c];if(void 0===f){var f=this.xa[c]={},h;if(this.ja)a:{h=this.ja;if(c<Hh(h)){if(!h.pd){h=360;break a}if(c<h.pd.length){h=h.pd[c];break a}}h=0}else h=0;switch(h){case 160:case 180:f.gb=
@ -583,10 +583,10 @@ k.zj=function(a,b,c,d){var e;a.uc=!1;b&&(e=b.info(),b&&e[0]>a.fb||e[1]>a.gb)&&(t
function Pj(a,b,c){if(a=a.sa.listDisks){for(var d=0;d<a.options.length;d++)if(a.options[d].value==c)return;d=window.document.createElement("option");d.value=c;d.innerHTML=b;a.appendChild(d)}}function Qj(a,b){if(0<=b&&b<a.xa.length){var c=a.xa[b],d=a.sa.listDisks,e=a.sa.listDrives;if(d&&e&&(e=parseInt(e.value,10),c=c.Fe?"?":c.pe,!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 Uj(a,b,c,d){var e=a.xa[b];e.ta&&(Vj(a,e.pe,e.ta),e.dl="",e.pe="",e.ta=null,e.Fe=!1,a.Ld|=128,d||a.ya("Drive "+String.fromCharCode(65+b)+" unloaded",c),c||d||Qj(a,b))}function Xj(a,b,c,d){var e;for(e=0;e<a.ic.length;e++)if(a.ic[e][1]==c){d.restore(a.ic[e][2]);return}a.ic[e]=[b,c,[]]}function Vj(a,b,c){var d;for(d=0;d<a.ic.length;d++)if(a.ic[d][1]==b){a.ic[d][2]=c.save();break}}k.tn=function(a,b){b&4?this.Re&4||this.Re&8&&this.ja&&di(this.ja,6):this.gd();this.Re=b};k.gm=function(){return this.wa};
k.em=function(){var a=0;this.pb<this.$a&&(a=this.Sb[this.pb]);this.Re&8&&this.ja&&ei(this.ja,6);++this.pb>=this.$a&&(this.wa&=-81,this.pb=this.$a=0);return a};
k.sn=function(a,b){this.$a<this.Sb.length&&(this.Sb[this.$a++]=b);var c=this.Sb[0]&31;if(void 0!==Oj[c]&&this.$a>=Oj[c].ad){var d=!1;this.pb=0;var c=this.Ia(),e,f,h,g,m,n=c&31;switch(n){case 3:this.Ia(l.Ro);this.Ia(l.xo);this.Fb();break;case 4:f=this.Ia(l.Ve);this.Wa=f&3;e=this.xa[this.Wa];this.Fb();this.Rb((e.Sa&4278190080)>>>24,l.Uo);break;case 5:case 6:f=this.Ia(l.Ve);d=f>>2&1;this.Wa=f&3;e=this.xa[this.Wa];e.Ja=d;f=e.ib=this.Ia(l.gj);h=this.Ia(l.hj);g=e.Va=this.Ia(l.jj);m=this.Ia(l.eh);e.eb=128<<
m;e.td=this.Ia(l.po);this.Ia(l.nl);this.Ia(l.oo);6==n?this.zh(e):this.Ah(e);Yj(this,e,c,d,f,h,g,m);d=!0;break;case 7:f=this.Ia(l.Ve);this.Wa=f&3;e=this.xa[this.Wa];e.ib=e.rd=0;e.Sa=268435488;this.Fb();d=!0;break;case 8:e=this.xa[this.Wa];e.Ja=0;this.Fb();this.Rb(e.Wa|e.Ja<<2|e.Sa&255,l.pl);this.Rb(e.ib,l.Go);this.Wa=this.Wa+1&3;break;case 10:f=this.Ia(l.Ve);d=f>>2&1;this.Wa=f&3;e=this.xa[this.Wa];f=e.ib;h=e.Ja=d;g=e.Va=1;m=0;e.Sa=0;e.ta&&(e.Ka=e.ta.seek(e.ib,e.Ja,e.Va))?m=e.Ka.length:e.Sa=1088;Yj(this,
e,c,d,f,h,g,m);d=!0;break;case 13:f=this.Ia(l.Ve);d=f>>2&1;this.Wa=f&3;e=this.xa[this.Wa];f=e.ib;h=e.Ja=d;g=1;m=this.Ia(l.eh);e.eb=128<<m;e.td=this.Ia(l.Mo);this.Ia(l.nl);e.pj=this.Ia(l.ml);this.yj(e);Yj(this,e,c,d,f,h,g,m);d=!0;break;case 15:f=this.Ia(l.Ve),this.Wa=f&3,e=this.xa[this.Wa],e.Ja=f>>2&1,f=this.Ia(l.Do),e.ib+=f-e.rd,0>e.ib&&(e.ib=0),e.ib>=e.fb&&(e.ib=e.fb-1),e.rd=f,e.Sa=32,0==e.ib&&(e.Sa|=268435456),this.Fb(),d=!0}0<this.$a&&(this.wa|=80);this.Re&8&&(!e||e.Sa&8||!d||this.ja&&di(this.ja,
6))}};k.fm=function(){var a=this.Ld;this.Ld&=-129;return a};k.rn=function(a,b){this.Zk=b};function Yj(a,b,c,d,e,f,h,g){a.Fb();a.Rb(b.Wa|b.Ja<<2|b.Sa&255,l.pl);a.Rb((b.Sa&65280)>>>8,l.So);a.Rb((b.Sa&16711680)>>>16,l.To);var m=0;if(e!=b.ib||f!=b.Ja)m=h=1;c&128&&(f^=m,d||(m=0));a.Rb(e+m,l.gj);a.Rb(f,l.hj);a.Rb(h,l.jj);a.Rb(g,l.eh)}k.Ia=function(){var a=this.Sb[this.pb];this.pb++;return a};k.Fb=function(){this.pb=this.$a=0};k.Rb=function(a){this.Sb[this.$a++]=a};
k.sn=function(a,b){this.$a<this.Sb.length&&(this.Sb[this.$a++]=b);var c=this.Sb[0]&31;if(void 0!==Oj[c]&&this.$a>=Oj[c].ad){var d=!1;this.pb=0;var c=this.Ia(),e,f,h,g,m,n=c&31;switch(n){case 3:this.Ia(l.Oo);this.Ia(l.uo);this.Fb();break;case 4:f=this.Ia(l.Ve);this.Wa=f&3;e=this.xa[this.Wa];this.Fb();this.Rb((e.Sa&4278190080)>>>24,l.Ro);break;case 5:case 6:f=this.Ia(l.Ve);d=f>>2&1;this.Wa=f&3;e=this.xa[this.Wa];e.Ja=d;f=e.ib=this.Ia(l.gj);h=this.Ia(l.hj);g=e.Va=this.Ia(l.jj);m=this.Ia(l.eh);e.eb=128<<
m;e.td=this.Ia(l.po);this.Ia(l.nl);this.Ia(l.oo);6==n?this.zh(e):this.Ah(e);Yj(this,e,c,d,f,h,g,m);d=!0;break;case 7:f=this.Ia(l.Ve);this.Wa=f&3;e=this.xa[this.Wa];e.ib=e.rd=0;e.Sa=268435488;this.Fb();d=!0;break;case 8:e=this.xa[this.Wa];e.Ja=0;this.Fb();this.Rb(e.Wa|e.Ja<<2|e.Sa&255,l.pl);this.Rb(e.ib,l.Do);this.Wa=this.Wa+1&3;break;case 10:f=this.Ia(l.Ve);d=f>>2&1;this.Wa=f&3;e=this.xa[this.Wa];f=e.ib;h=e.Ja=d;g=e.Va=1;m=0;e.Sa=0;e.ta&&(e.Ka=e.ta.seek(e.ib,e.Ja,e.Va))?m=e.Ka.length:e.Sa=1088;Yj(this,
e,c,d,f,h,g,m);d=!0;break;case 13:f=this.Ia(l.Ve);d=f>>2&1;this.Wa=f&3;e=this.xa[this.Wa];f=e.ib;h=e.Ja=d;g=1;m=this.Ia(l.eh);e.eb=128<<m;e.td=this.Ia(l.Jo);this.Ia(l.nl);e.pj=this.Ia(l.ml);this.yj(e);Yj(this,e,c,d,f,h,g,m);d=!0;break;case 15:f=this.Ia(l.Ve),this.Wa=f&3,e=this.xa[this.Wa],e.Ja=f>>2&1,f=this.Ia(l.Ao),e.ib+=f-e.rd,0>e.ib&&(e.ib=0),e.ib>=e.fb&&(e.ib=e.fb-1),e.rd=f,e.Sa=32,0==e.ib&&(e.Sa|=268435456),this.Fb(),d=!0}0<this.$a&&(this.wa|=80);this.Re&8&&(!e||e.Sa&8||!d||this.ja&&di(this.ja,
6))}};k.fm=function(){var a=this.Ld;this.Ld&=-129;return a};k.rn=function(a,b){this.Zk=b};function Yj(a,b,c,d,e,f,h,g){a.Fb();a.Rb(b.Wa|b.Ja<<2|b.Sa&255,l.pl);a.Rb((b.Sa&65280)>>>8,l.Po);a.Rb((b.Sa&16711680)>>>16,l.Qo);var m=0;if(e!=b.ib||f!=b.Ja)m=h=1;c&128&&(f^=m,d||(m=0));a.Rb(e+m,l.gj);a.Rb(f,l.hj);a.Rb(h,l.jj);a.Rb(g,l.eh)}k.Ia=function(){var a=this.Sb[this.pb];this.pb++;return a};k.Fb=function(){this.pb=this.$a=0};k.Rb=function(a){this.Sb[this.$a++]=a};
k.xh=function(a,b,c){void 0===b||0>b?this.yc(a,c):c(-1,!1)};k.yh=function(a,b){return void 0!==b&&0<=b?this.Bc(a,b):-1};k.ul=function(a,b){return void 0!==b&&0<=b?this.dj(a,b):-1};k.zh=function(a){a.Sa=72;a.ta&&(a.Ka=null,a.Sa=0,this.ja&&(Uh(this.ja,2,this,"dmaRead",a),Qh(this.ja,2)))};k.Ah=function(a){a.Sa=72;a.ta&&(a.ta.He?a.Sa=576:(a.Ka=null,a.Sa=0,this.ja&&(Uh(this.ja,2,this,"dmaWrite",a),Qh(this.ja,2))))};
k.yj=function(a){a.Sa=72;a.ta&&(a.Ka=null,a.Sa=0,this.ja&&(a.be=0,a.jc=Array(4),a.cf=!0,a.hf=0,Uh(this.ja,2,this,"dmaFormat",a),Qh(this.ja,2),a.cf=!1))};k.yc=function(a,b){var c=-1;if(!a.Sa&&a.ta){do{if(a.Ka&&0<=(c=Mj(a.Ka,a.Ya++)))break;a.Ka=a.ta.seek(a.ib,a.Ja,a.Va);if(!a.Ka){a.Sa=1088;break}a.Ya=0;this.$e(a)}while(1)}b(c,!1)};
k.Bc=function(a,b){if(a.Sa||!a.ta)return-1;do{if(a.Ka&&a.ta.write(a.Ka,a.Ya++,b))break;a.Ka=a.ta.seek(a.ib,a.Ja,a.Va);if(!a.Ka){a.Sa=8256;b=-1;break}a.Ya=0;this.$e(a)}while(1);return b};k.$e=function(a){a.Va++;a.Va>=a.Cf+1&&(a.Va=1,a.Ja++,a.Ja>=a.Bf&&(a.Ja=0,a.ib++))};k.dj=function(a,b){if(a.Sa)return-1;a.jc[a.be++]=b;if(a.be==a.jc.length){a.ib=a.jc[0];a.Ja=a.jc[1];a.Va=a.jc[2];a.eb=128<<a.jc[3];for(var c=a.be=0;c<a.eb;c++)if(0>this.Bc(a,a.pj))return-1;a.hf++}a.hf>=a.td&&(b=-1);return b};
@ -608,7 +608,7 @@ k.en=function(a,b){this.Oa&&this.Oa.eb>=this.Oa.Xa&&(0>this.Bc(this.Oa,b)?(this.
k.cn=function(a,b){this.Tg=b};k.Tl=function(){return this.Qe};k.fn=function(a,b){this.Qe=b;this.wa=this.xa[this.Qe&16?1:0]?this.wa|64:this.wa&-65};k.Xl=function(){return this.wa};k.bn=function(a,b){this.Wi=b;this.ja&&ei(this.ja,14);hk(this)};k.gn=function(a,b){this.Vg&4&&!(b&4)&&(this.md=1);this.Vg=b};
function hk(a){var b=!1,c=a.Wi,d=a.Qe&16?1:0,e=a.Qe&15,f=a.Ug|(a.Tg&3)<<8,h=a.Wg,g=a.Md||256;a.Oa=null;a.md=0;a.wa=80;(d=a.xa[d])?(d.Od=f,d.Ja=e,d.Va=h,d.eb=g*d.Xa,c=144<=c?c:c&240,d.Ka=null,d.errorCode=0,a.Oa=d):c=-1;switch(c&240){case 32:a.yc(d,function(b){0<=b&&a.ja?(gk(a),a.wa=136):(a.wa=1,a.md=16)},!1);break;case 48:a.ja?(gk(a),a.wa=136):(a.wa=1,a.md=4);break;case 16:b=!0;break;case 64:b=!0;break;case 144:a.md=1;b=!0;break;case 145:d.gb=e+1,d.lb=g,b=!0}b&&gk(a)}
function gk(a){!a.ja||a.Vg&2||di(a.ja,14)}
function fk(a){a.pb=0;var b=a.Ia(),c=a.Ia(),d=c&32,e=d>>5,f=c&31,h=a.Ia(),g=a.Ia(),m=h<<2&768|g,n=h&63,q=a.Ia(),w=a.Ia(),t=a.xa[e];t&&(t.Od=m,t.Ja=f,t.Va=n,t.eb=q*t.Xa);switch(b){case 3:a.Fb(t?t.errorCode:4);a.Rb(c);a.Rb(h);a.Rb(g);a.Rb(0|d);b=-1;break;case 12:for(c=0;0<=(b=a.Ia());)t&&c<t.xe.length&&(t.xe[c++]=b);t&&ek(a,t);b=0;t||a.Je!=e||(a.Je=-1,b=2);a.Fb(b|d);b=-1;break;case 224:case 228:a.Fb(0|d),b=-1}if(0<=b)switch(void 0===t?b=-1:(t.errorCode=0,t.hl=0),b){case 0:a.Fb(0|d);break;case 1:t.ip=
function fk(a){a.pb=0;var b=a.Ia(),c=a.Ia(),d=c&32,e=d>>5,f=c&31,h=a.Ia(),g=a.Ia(),m=h<<2&768|g,n=h&63,q=a.Ia(),w=a.Ia(),t=a.xa[e];t&&(t.Od=m,t.Ja=f,t.Va=n,t.eb=q*t.Xa);switch(b){case 3:a.Fb(t?t.errorCode:4);a.Rb(c);a.Rb(h);a.Rb(g);a.Rb(0|d);b=-1;break;case 12:for(c=0;0<=(b=a.Ia());)t&&c<t.xe.length&&(t.xe[c++]=b);t&&ek(a,t);b=0;t||a.Je!=e||(a.Je=-1,b=2);a.Fb(b|d);b=-1;break;case 224:case 228:a.Fb(0|d),b=-1}if(0<=b)switch(void 0===t?b=-1:(t.errorCode=0,t.hl=0),b){case 0:a.Fb(0|d);break;case 1:t.fp=
w;a.Fb(0|d);break;case 5:a.Fb(0|d);break;case 8:a.zh(t,function(b){a.Fb(b|d)});break;case 10:a.Ah(t,function(b){a.Fb(b|d)});break;case 15:ik(a,t,function(b){a.Fb(b|d)});break;default:a.Fb(2|d)}}k.Ia=function(){var a=-1;this.pb<this.$a&&(a=this.Sb[this.pb++]);return a};k.Fb=function(a){this.pb=this.$a=0;void 0!==a&&this.Rb(a);this.ja&&di(this.ja,5);this.wa|=32};k.Rb=function(a){this.Sb[this.$a++]=a};k.xh=function(a,b,c){void 0===b||0>b?this.yc(a,c):c(-1,!1)};
k.yh=function(a,b){return void 0!==b&&0<=b?this.Bc(a,b):-1};k.vl=function(a,b){var c;void 0!==b&&0<=b?(c=b,a.Ya<a.ye.length?a.ye[a.Ya++]=c:(a.errorCode=20,c=-1)):c=-1;return c};k.wl=function(a,b){return void 0!==b&&0<=b?this.dj(a,b):-1};k.zh=function(a,b){a.errorCode=4;if(a.ta&&(a.Ka=null,this.ja)){a.errorCode=0;Uh(this.ja,3,this,"dmaRead",a);Qh(this.ja,3,function(c){c||0!=a.errorCode||(a.errorCode=4);b(a.errorCode?2:0)});return}b(a.errorCode?2:0)};
k.Ah=function(a,b){a.errorCode=4;if(a.ta&&(a.Ka=null,this.ja)){a.errorCode=0;Uh(this.ja,3,this,"dmaWrite",a);Qh(this.ja,3,function(c){c||(0==a.errorCode&&(a.errorCode=4),20==a.errorCode&&(a.errorCode=0));b(a.errorCode?2:0)});return}b(a.errorCode?2:0)};function ik(a,b,c){b.errorCode=4;b.ye&&b.ye.length==b.eb||(b.ye=Array(b.eb));b.Ya=0;a.ja?(b.errorCode=0,Uh(a.ja,3,a,"dmaWriteBuffer",b),Qh(a.ja,3,function(a){a||0!=b.errorCode||(b.errorCode=4);c(b.errorCode?2:0)})):c(b.errorCode?2:0)}

View file

@ -132,7 +132,7 @@ C1PSerialPort.prototype.setBinding = function(sHTMLClass, sHTMLType, sBinding, c
/*
* Check for availability of FileReader
*/
if (window.FileReader && window.File && window.FileList) {
if (window && 'FileReader' in window) {
this.bindings[sBinding] = control;
/*

View file

@ -474,7 +474,7 @@ FDC.prototype.setBinding = function(sHTMLClass, sHTMLType, sBinding, control)
/*
* Check for availability of FileReader
*/
if (window.FileReader && window.File && window.FileList) {
if (window && 'FileReader' in window) {
this.bindings[sBinding] = control;
/*

View file

@ -104,12 +104,12 @@ function ta(a){var b=0;if(a.o.C)for(;b<a.Sa;){var c=a.a[a.Zb+b];if(a.mc[b]!=c){v
x(function(){for(var a=F(window.document,"c1pjs","video"),b=0;b<a.length;b++){var c=a[b],d=D(c),e=window.document.createElement("canvas");if(void 0===e){c.innerHTML="<br/>Missing &lt;canvas&gt; support; try a new web browser.";break}e.setAttribute("class","c1pjs-canvas");e.setAttribute("width",d.screenWidth);e.setAttribute("height",d.screenHeight);e.setAttribute("contenteditable","true");e.setAttribute("autocapitalize","off");e.setAttribute("autocorrect","off");e.style.backgroundColor=d.screenColor;
e.style.height="auto";0<=(window?window.navigator.userAgent:"").indexOf("MSIE")&&(e.style.height=(c.clientWidth*d.screenHeight/d.screenWidth|0)+"px",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.appendChild(e);var g=new Image,h=e.getContext("2d"),e=new Pa(d,e,h,g);g.onload=function(a){return function(){a.Q()}}(e,d.charSet);g.src=d.charSet;E(e,c)}});
function Sa(a){z.call(this,"C1PSerialPort",a);this.o.C=!1;this.Ed=a.demo;this.Af=0;this.zf=1;this.reset()}B(Sa);f=Sa.prototype;f.reset=function(){if(2!=this.Ga){this.Ob=this.qc=0;var a=1;if(this.Hd){var b=this.Hd.match(/\d+/);null!==b&&(a=parseInt(b[0],10))}this.ab='10 PRINT "HELLO OSI #'+a+'"\n';this.Ga=this.Vb=0}};f.start=function(){this.H&&this.Ed&&(V(this.H," C\n\n",3E3),setTimeout(function(a){return function(){a.Ga=1;V(a.H,"LOAD\n")}}(this),12E3));this.Ed=!1};
f.J=function(a,b,c,d){var e=this;switch(c){case "listSerial":return this.s[c]=d,!0;case "loadSerial":return this.s[c]=d,d.onclick=function(){e.s.listSerial&&s(e.s.listSerial.value,e,e.Id)},!0;case "mountSerial":return window.aj&&window.Zi&&window.$i?(this.s[c]=d,d.addEventListener("change",function(){var a=d.children[0];a.children[1].disabled=0==a.children[0].files.length}),d.onsubmit=function(a){var b=a.currentTarget[1].files[0],c=new FileReader;c.onload=function(){e.Id(b.name,c.result.toString(),
f.J=function(a,b,c,d){var e=this;switch(c){case "listSerial":return this.s[c]=d,!0;case "loadSerial":return this.s[c]=d,d.onclick=function(){e.s.listSerial&&s(e.s.listSerial.value,e,e.Id)},!0;case "mountSerial":return window&&"FileReader"in window?(this.s[c]=d,d.addEventListener("change",function(){var a=d.children[0];a.children[1].disabled=0==a.children[0].files.length}),d.onsubmit=function(a){var b=a.currentTarget[1].files[0],c=new FileReader;c.onload=function(){e.Id(b.name,c.result.toString(),
0)};c.readAsText(b);return!1}):d.parentNode.removeChild(d),!0}return!1};f.W=function(a,b,c,d){this.a=a;this.Gc=b;this.Hf=c-b+1;this.Sd=this.Gc+this.Hf;if(this.l=d)ua(d,b,c,this,this.I),N(d,b,c,this,this.P);this.Q()};f.ca=function(a,b){a&&!this.o.C&&(this.o.C=!0,this.O=b,this.H=L(b,"keyboard"),this.m=L(b,"debugger"))};
f.Id=function(a,b,c){b?(this.ab=b,this.Ga=this.Vb=0,this.O&&this.H&&this.l.o.ha?(this.i("auto-loading "+a),this.l.X(),"."!=this.ab.charAt(0)?(this.Ga=1,V(this.H,"NEW\nLOAD\n")):(this.Ga=2,this.O.reset(!0),V(this.H,"ML"))):this.i(a+" ready to load")):this.i(a+" load error ("+c+")")};f.I=function(a,b){void 0!==b&&(a&1?Ta(this):this.ab&&!this.Vb&&Ta(this))};f.P=function(a,b){void 0!==b&&this.m&&S(this.m,this,a,b,this.m.Tc,!0)};
function Ta(a){if(void 0!==a.ab){a.qc=0;a.Ob=0;if(a.Vb<a.ab.length){var b=a.ab.charCodeAt(a.Vb++);10==b&&(b=13);a.qc=b;a.Ob=1}else 1==a.Ga&&a.H&&V(a.H," \nRUN\n"),a.Ga=0;a.bc()}}f.bc=function(){var a;for(a=this.Gc+0;a<this.Sd;a+=2)this.a[a]=this.Ob?this.zf:this.Af;for(a=this.Gc+1;a<this.Sd;a+=2)this.a[a]=this.Ob?this.qc:0};x(function(){for(var a=F(window.document,"c1pjs","serial"),b=0;b<a.length;b++){var c=a[b],d=D(c),d=new Sa(d);E(d,c)}});
function Ua(a){z.call(this,"C1PDiskController",a);this.o.C=!1;this.rf=this.nd=0;this.kd=1;this.sf=this.od=2;this.ld=3;this.Oc=128;this.Pc=64;this.La=4;this.mf=1;this.fd=2;this.lf=4;this.of=8;this.nf=16;this.gd=32;this.ed=64;this.kc=128;this.jd=4;this.hd=8;this.pf=32;this.tf=this.qf=16;this.md=17;this.Qc=3;this.ud=1;this.vd=2;this.td=4;this.sd=8;this.Ae=0;this.Je=40;this.reset(!0)}B(Ua);f=Ua.prototype;
f.reset=function(a){Va(this);this.L=-1;a&&(this.V=[],this.V[0]={bj:this.Ae,Qd:this.Je,Nf:!0,Ya:20,ia:0,Wa:-1,Kb:[]})};
f.reset=function(a){Va(this);this.L=-1;a&&(this.V=[],this.V[0]={Zi:this.Ae,Qd:this.Je,Nf:!0,Ya:20,ia:0,Wa:-1,Kb:[]})};
function Va(a){a.je={t:a.ed,ba:function(){},update:function(a){return function(c){void 0!==c&&(this.t=c);a.$b.t&a.La||W(a,a.rf,this)}}(a)};a.Ia={t:255,ba:function(){this.update()},update:function(a){return function(c){void 0===c?c=a.Ia.t:Wa(a,c,a.tb.t);c=c|a.kc|a.gd|a.of|a.lf|a.fd|a.nf;c&=~a.mf;if(0<=a.L&&a.V[a.L].Kb.length){var d=a.V[a.L];d.Nf&&(c&=~a.gd);d.ia||(c&=~a.fd);10>=--d.Ya&&(0<d.Ya?(c&=~a.kc,Xa(a)):(d.Ya=100,0<=a.L&&(a.V[a.L].Wa=0,Ya(a))))}this.t=c;a.$b.t&a.La&&W(a,a.nd,this)}}(a)};a.$b=
{t:0,ba:function(){},update:function(a){return function(c){void 0!==c&&(this.t=c&~(a.Oc|a.Pc));W(a,a.kd,this);a.Ia.update();a.je.update()}}(a)};a.ke={t:255,ba:function(){},update:function(a){return function(c){void 0!==c&&(this.t=c);a.ac.t&a.La||W(a,a.sf,this)}}(a)};a.tb={t:255,ba:function(){},update:function(a){return function(c){void 0===c?c=a.tb.t:Wa(a,a.Ia.t,c);if(0<=a.L&&a.L<a.V.length){var d=a.V[a.L];d.Kb.length&&a.tb.t&a.hd&&!(c&a.hd)&&(c&a.jd?d.ia--:d.ia++,a.m&&T(a.m,a.m.Ma)&&a.m.message("stepping "+
(c&a.jd?"down":"up")+" to track "+d.ia),d.ia>=d.Qd&&(d.ia=d.Qd),0>d.ia&&(d.ia=0),d.Ya=20,a.Ia.update(a.Ia.t|a.kc),Xa(a))}this.t=c;a.ac.t&a.La&&W(a,a.od,this)}}(a)};a.ac={t:0,ba:function(){},update:function(a){return function(c){void 0!==c&&(this.t=c&~(a.Oc|a.Pc));W(a,a.ld,this);a.tb.update();a.ke.update()}}(a)};a.Wi={t:0,ba:function(){},update:function(a){return function(c){void 0!==c&&((c&a.Qc)==a.Qc&&(a.Ja.t=a.vd|a.td|a.sd),this.t=c);a.Ja.update()}}(a)};a.Ja={t:a.vd|a.td|a.sd,ba:function(){},update:function(a){return function(c){void 0===

View file

@ -100,12 +100,12 @@ function ma(a){var b=0;if(a.m.B)for(;b<a.ia;){var c=a.a[a.Va+b];if(a.eb[b]!=c){v
w(function(){for(var a=I(window.document,"c1pjs","video"),b=0;b<a.length;b++){var c=a[b],d=G(c),f=window.document.createElement("canvas");if(void 0===f){c.innerHTML="<br/>Missing &lt;canvas&gt; support; try a new web browser.";break}f.setAttribute("class","c1pjs-canvas");f.setAttribute("width",d.screenWidth);f.setAttribute("height",d.screenHeight);f.setAttribute("contenteditable","true");f.setAttribute("autocapitalize","off");f.setAttribute("autocorrect","off");f.style.backgroundColor=d.screenColor;
f.style.height="auto";0<=(window?window.navigator.userAgent:"").indexOf("MSIE")&&(f.style.height=(c.clientWidth*d.screenHeight/d.screenWidth|0)+"px",c.onresize=function(a,b,c,d){return function(){b.style.height=(a.clientWidth*d/c|0)+"px"}}(c,f,d.screenWidth,d.screenHeight));c.appendChild(f);var g=new Image,k=f.getContext("2d"),f=new Ca(d,f,k,g);g.onload=function(a){return function(){a.K()}}(f,d.charSet);g.src=d.charSet;H(f,c)}});
function Fa(a){z.call(this,"C1PSerialPort",a);this.m.B=!1;this.bc=a.demo;this.Bd=0;this.Ad=1;this.reset()}E(Fa);e=Fa.prototype;e.reset=function(){if(2!=this.$){this.La=this.ib=0;var a=1;if(this.fc){var b=this.fc.match(/\d+/);null!==b&&(a=parseInt(b[0],10))}this.na='10 PRINT "HELLO OSI #'+a+'"\n';this.$=this.Qa=0}};e.start=function(){this.D&&this.bc&&(X(this.D," C\n\n",3E3),setTimeout(function(a){return function(){a.$=1;X(a.D,"LOAD\n")}}(this),12E3));this.bc=!1};
e.I=function(a,b,c,d){var f=this;switch(c){case "listSerial":return this.p[c]=d,!0;case "loadSerial":return this.p[c]=d,d.onclick=function(){f.p.listSerial&&q(f.p.listSerial.value,f,f.gc)},!0;case "mountSerial":return window.Wg&&window.Ug&&window.Vg?(this.p[c]=d,d.addEventListener("change",function(){var a=d.children[0];a.children[1].disabled=0==a.children[0].files.length}),d.onsubmit=function(a){var b=a.currentTarget[1].files[0],c=new FileReader;c.onload=function(){f.gc(b.name,c.result.toString(),
e.I=function(a,b,c,d){var f=this;switch(c){case "listSerial":return this.p[c]=d,!0;case "loadSerial":return this.p[c]=d,d.onclick=function(){f.p.listSerial&&q(f.p.listSerial.value,f,f.gc)},!0;case "mountSerial":return window&&"FileReader"in window?(this.p[c]=d,d.addEventListener("change",function(){var a=d.children[0];a.children[1].disabled=0==a.children[0].files.length}),d.onsubmit=function(a){var b=a.currentTarget[1].files[0],c=new FileReader;c.onload=function(){f.gc(b.name,c.result.toString(),
0)};c.readAsText(b);return!1}):d.parentNode.removeChild(d),!0}return!1};e.Q=function(a,b,c,d){this.a=a;this.vb=b;this.Gd=c-b+1;this.rc=this.vb+this.Gd;if(this.t=d)na(d,b,c,this,this.O),Q(d,b,c,this,this.M);this.K()};e.T=function(a,b){a&&!this.m.B&&(this.m.B=!0,this.H=b,this.D=M(b,"keyboard"))};
e.gc=function(a,b,c){b?(this.na=b,this.$=this.Qa=0,this.H&&this.D&&this.t.m.S?(this.u("auto-loading "+a),this.t.ea(),"."!=this.na.charAt(0)?(this.$=1,X(this.D,"NEW\nLOAD\n")):(this.$=2,this.H.reset(!0),X(this.D,"ML"))):this.u(a+" ready to load")):this.u(a+" load error ("+c+")")};e.O=function(a,b){void 0!==b&&(a&1?Ga(this):this.na&&!this.Qa&&Ga(this))};e.M=function(){};
function Ga(a){if(void 0!==a.na){a.ib=0;a.La=0;if(a.Qa<a.na.length){var b=a.na.charCodeAt(a.Qa++);10==b&&(b=13);a.ib=b;a.La=1}else 1==a.$&&a.D&&X(a.D," \nRUN\n"),a.$=0;a.Ya()}}e.Ya=function(){var a;for(a=this.vb+0;a<this.rc;a+=2)this.a[a]=this.La?this.Ad:this.Bd;for(a=this.vb+1;a<this.rc;a+=2)this.a[a]=this.La?this.ib:0};w(function(){for(var a=I(window.document,"c1pjs","serial"),b=0;b<a.length;b++){var c=a[b],d=G(c),d=new Fa(d);H(d,c)}});
function Ha(a){z.call(this,"C1PDiskController",a);this.m.B=!1;this.qd=this.Ob=0;this.Lb=1;this.rd=this.Pb=2;this.Mb=3;this.Cb=128;this.Db=64;this.fa=4;this.kd=1;this.Ib=2;this.jd=4;this.md=8;this.ld=16;this.Jb=32;this.Hb=64;this.ab=128;this.od=4;this.Kb=8;this.nd=32;this.sd=this.pd=16;this.Nb=17;this.Eb=3;this.Tb=1;this.Ub=2;this.Sb=4;this.Rb=8;this.Zc=0;this.hd=40;this.reset(!0)}E(Ha);e=Ha.prototype;
e.reset=function(a){Ia(this);this.F=-1;a&&(this.N=[],this.N[0]={Xg:this.Zc,oc:this.hd,Md:!0,la:20,W:0,ja:-1,Ha:[]})};
e.reset=function(a){Ia(this);this.F=-1;a&&(this.N=[],this.N[0]={Ug:this.Zc,oc:this.hd,Md:!0,la:20,W:0,ja:-1,Ha:[]})};
function Ia(a){a.Jc={q:a.Hb,P:function(){},update:function(a){return function(c){void 0!==c&&(this.q=c);a.Wa.q&a.fa||Y(a,a.qd,this)}}(a)};a.ba={q:255,P:function(){this.update()},update:function(a){return function(c){void 0===c?c=a.ba.q:Ja(a,c,a.za.q);c=c|a.ab|a.Jb|a.md|a.jd|a.Ib|a.ld;c&=~a.kd;if(0<=a.F&&a.N[a.F].Ha.length){var d=a.N[a.F];d.Md&&(c&=~a.Jb);d.W||(c&=~a.Ib);10>=--d.la&&(0<d.la?(c&=~a.ab,Ka(a)):(d.la=100,0<=a.F&&(a.N[a.F].ja=0,La(a))))}this.q=c;a.Wa.q&a.fa&&Y(a,a.Ob,this)}}(a)};a.Wa={q:0,
P:function(){},update:function(a){return function(c){void 0!==c&&(this.q=c&~(a.Cb|a.Db));Y(a,a.Lb,this);a.ba.update();a.Jc.update()}}(a)};a.Kc={q:255,P:function(){},update:function(a){return function(c){void 0!==c&&(this.q=c);a.Xa.q&a.fa||Y(a,a.rd,this)}}(a)};a.za={q:255,P:function(){},update:function(a){return function(c){void 0===c?c=a.za.q:Ja(a,a.ba.q,c);if(0<=a.F&&a.F<a.N.length){var d=a.N[a.F];d.Ha.length&&a.za.q&a.Kb&&!(c&a.Kb)&&(c&a.od?d.W--:d.W++,d.W>=d.oc&&(d.W=d.oc),0>d.W&&(d.W=0),d.la=
20,a.ba.update(a.ba.q|a.ab),Ka(a))}this.q=c;a.Xa.q&a.fa&&Y(a,a.Pb,this)}}(a)};a.Xa={q:0,P:function(){},update:function(a){return function(c){void 0!==c&&(this.q=c&~(a.Cb|a.Db));Y(a,a.Mb,this);a.za.update();a.Kc.update()}}(a)};a.Sg={q:0,P:function(){},update:function(a){return function(c){void 0!==c&&((c&a.Eb)==a.Eb&&(a.ca.q=a.Ub|a.Sb|a.Rb),this.q=c);a.ca.update()}}(a)};a.ca={q:a.Ub|a.Sb|a.Rb,P:function(){},update:function(a){return function(c){void 0===c&&(c=a.ca.q);c&=~a.Tb;0<=a.F&&0<=a.N[a.F].ja&&

View file

@ -428,7 +428,7 @@ this.H&255,this.Ga-2);Ab(this.ra,a+1&65535,this.H>>8,this.Ga-2);this.A-=this.B.n
1)<<8;this.A-=this.B.Yi},function(){Ab(this.ra,this.K,this.H&255,this.Ga-1);this.A-=this.B.mj},function(){Ab(this.ra,this.K,this.H&255,this.Ga-1);Ab(this.ra,this.K+1&65535,this.H>>8,this.Ga-1);this.A-=this.B.mj},$h,$h,function(){this.aa|=132;this.A-=this.B.oe},function(){this.aa|=68;this.A-=this.B.oe},function(){this.pb|=4;this.A-=2;this.fa&&Ed(this.fa)?(nd(this,-1),this.Bb()):this.Ca&512||(this.fa&&nd(this,-1),this.Bb())},function(){od(this)?ud(this):zd(this);this.A-=2},function(){this.Jb=-1;Ah[this.ha()].call(this,
De,ue);0<=this.Jb&&(this.H=this.Jb)},function(){this.Jb=-1;Bh[this.ha()].call(this,Ee,ue);0<=this.Jb&&(this.H=this.Jb,this.K=this.Bg)},function(){this.Z&=~this.ga;this.A-=2},function(){this.Z|=this.ga;this.A-=2},function(){this.Ca&=-513;this.A-=this.B.Rk},function(){this.Ca|=512;this.aa|=4;this.A-=2},function(){this.Ca&=-1025;this.A-=2},function(){this.Ca|=1024;this.A-=2},function(){Ah[this.ha()].call(this,Lc,ue)},function(){Bh[this.ha()].call(this,Oc,ue)}];
function O(a){z.call(this,"ChipSet",a,O);this.Ia=a.model;this.Ia=void 0!==this.Ia?parseInt(this.Ia,10):ai;this.$b=0;var b=a.sw1;if(b)this.$b=bi(b,ci|di.km);else{this.Vd=[360,360];(b=a.floppies)&&void 0!==b.length&&(this.Vd=b);if(b=this.Vd.length)this.$b|=ei.Th,b--,this.$b|=(b&3)<<ei.Hf;if(b=a.monitor||(this.Ia<fi?"mono":"ega"),void 0!==gi[b])this.$b|=gi[b]<<di.Hf}this.ue=bi(a.sw2||"11110000",0);this.In=this.Ia==ai?16:64;this.Uf=this.Vf=1;this.Ia>=fi&&(this.Uf=this.Vf=2);this.ph=a.scaleTimers||!1;
this.cp=a.rtcDate;this.yk=!1;a.sound&&window&&"webkitAudioContext"in window&&(this.ki=new webkitAudioContext);this.reset(!0);this.Ta()}A(z,O);var ai=5150,fi=5170,gi={none:0,tv:1,color:2,mono:3,ega:0},ei={Th:1,ONE:0,Zp:64,Xp:128,sp:192,Gf:192,Hf:6},ci=12,di={Yp:16,lp:32,km:48,Gf:48,Hf:4};k=O.prototype;
this.cp=a.rtcDate;this.yk=!1;a.sound&&window&&"webkitAudioContext"in window&&(this.ki=new webkitAudioContext);this.reset(!0);this.Ta()}A(z,O);var ai=5150,fi=5170,gi={none:0,tv:1,color:2,mono:3,ega:0},ei={Th:1,ONE:0,Wp:64,Up:128,sp:192,Gf:192,Hf:6},ci=12,di={Vp:16,lp:32,km:48,Gf:48,Hf:4};k=O.prototype;
k.Eb=function(a,b,c,d){switch(c){case "sw1":return this.ya[c]=d,hi(this,c,d,this.$b,{0:this.Ia==ai?"Bootable Floppy Drive":"Loop on POST",1:this.Ia==ai?"Reserved":"Coprocessor",2:"Base Memory Size",4:"Monitor Type",6:"Number of Floppy Drives"}),!0;case "sw2":if(this.Ia==ai)return this.ya[c]=d,hi(this,c,d,this.ue,{0:"Expansion Memory Size",4:"Reserved"}),!0;break;case "swdesc":return this.ya[c]=d,!0}return!1};
k.pc=function(a,b,c,d){this.ra=b;this.T=c;this.fa=d;this.Ka=a;this.bb=eb(a,"Keyboard");this.Ol=Math.round(c.ca.Kd/1193181);tb(b,this,ii);zb(b,this,ji);this.Ia<fi?(tb(b,this,ki),zb(b,this,li)):(tb(b,this,mi),zb(b,this,ni));if(d){var e=this;oi(d,Fd,function(){for(var a=0;a<e.zb.length;a++){for(var b=e.zb[a],c="PIC"+a+":",d=0;d<b.sd.length;d++)c+=" IC"+(d+1)+"="+t(b.sd[d]);c+=" IMR="+t(b.yd)+" IRR="+t(b.Mb)+" ISR="+t(b.Ic);e.fa.message(c)}});oi(d,pi,function(){for(var a=0;a<e.Lb.length;a++){qi(e,a);
var b=e.Lb[a],c="TIMER"+a+":",d=0;if(void 0!==b.kd)for(var n=0;n<=b.kd;n++)d|=b.ac[n]<<8*n;c+=" MODE"+b.mode+" BYTES="+b.kd+" COUNT="+v(d);e.fa.message(c)}});oi(d,ri,function(){for(var a="",b=0;64>b;b++){var c=13>=b?si(e,b):e.ta[b];a&&(a+="\n");a+="CMOS[0x"+t(b)+"]: 0x"+t(c)}e.fa.message(a)})}Xc(c,ti,this,this.Hn)};k.Zb=function(a,b){if(!b)if(!a)this.reset();else if(!this.restore(a))return!1;return!0};k.Yb=function(a){return a&&this.save?this.save():!0};
@ -440,7 +440,7 @@ k.save=function(){var a=new gd(this);a.set(0,[this.$b,this.ue,this.dd,this.Ze]);
[b]);b=[];for(c=0;c<this.Lb.length;c++)d=[],e=this.Lb[c],d[0]=e.Kc,d[1]=e.Yc,d[2]=e.ac,d[3]=e.$f,d[4]=e.hk,d[5]=e.mode,d[6]=e.Cg,d[7]=e.ge,d[8]=e.kd,d[9]=e.md,d[10]=e.cg,d[11]=e.kf,d[12]=e.re,b[c]=d;a.set(3,[this.hi,b]);a.set(4,[this.Xg,this.zc,this.fi,this.Tf,this.Wg]);this.Ia>=fi&&(a.set(5,[this.lb,this.xd,this.gd,this.Sg,this.Ae,this.di]),a.set(6,[this.Rf,this.Og,this.Be,this.ta,this.jg]));return a.data()};
k.restore=function(a){var b,c;b=a[0];this.$b=b[0];this.ue=b[1];this.dd=b[2];this.Ze=b[3];b=a[1];this.fb=Array(this.Uf);for(c=0;c<this.Uf;c++)vi(this,c,1==b.length?b[0][c]:b);b=a[2];this.zb=Array(this.Vf);for(c=0;c<this.Vf;c++)wi(this,c,0===c?32:160,b[0][c]);b=a[3];this.hi=b[0];this.Lb=Array(3);for(c=0;c<this.Lb.length;c++)xi(this,c,b[1][c]);b=a[4];this.Xg=b[0];this.zc=b[1];this.fi=b[2];this.Tf=b[3];this.Wg=b[4];if(b=a[5])this.lb=b[0],this.xd=b[1],this.gd=b[2],this.Sg=b[3],this.Ae=b[4],this.di=b[5];
if(b=a[6])this.Rf=b[0],this.Og=b[1],this.Be=b[2],this.ta=b[3],this.jg=b[4],Ai(this);return!0};function vi(a,b,c){a=a.fb[b]={};c&&5==c.length||(c=[0,void 0,void 0,0,[]]);a.de=c[0];a.ei=c[1];a.fk=c[2];a.ub=c[3];a.On=b<<2;a.Kb=Array(4);for(b=0;b<a.Kb.length;b++)Di(a,b,c[4][b])}function Di(a,b,c){var d=a.Kb[b]={};if(void 0===c||8!=c.length)c=[!0,[],[],[],[]];d.ia=a;d.Dk=b;d.Id=c[0];d.ak=c[1];d.Kc=c[2];d.Sb=c[3];d.ac=c[4];d.mode=c[5];d.Yg=c[6];Ei(d,c[8],c[9])}
function Ei(a,b,c,d){"string"==typeof b&&(b=Wa(b));b&&(a.gh=null,a.$o=b.id,a.ap=c,a.eh=b,a.Ci=b[c],a.Fh=d)}function wi(a,b,c,d){a=a.zb[b]={};d&&8==d.length||(d=[0,[void 0,void 0,void 0,void 0]]);a.port=c;a.vq=b<<3;a.og=d[0];a.sd=d[1];a.Ld=d[2];a.yd=d[3];a.Mb=d[4];a.Ic=d[5];a.Ce=d[6];a.Sf=d[7]}
function Ei(a,b,c,d){"string"==typeof b&&(b=Wa(b));b&&(a.gh=null,a.$o=b.id,a.ap=c,a.eh=b,a.Ci=b[c],a.Fh=d)}function wi(a,b,c,d){a=a.zb[b]={};d&&8==d.length||(d=[0,[void 0,void 0,void 0,void 0]]);a.port=c;a.sq=b<<3;a.og=d[0];a.sd=d[1];a.Ld=d[2];a.yd=d[3];a.Mb=d[4];a.Ic=d[5];a.Ce=d[6];a.Sf=d[7]}
function xi(a,b,c){a=a.Lb[b]={};if(void 0===c||13!=c.length)c=[[],[],[],[]];a.Kc=c[0];a.Yc=c[1];a.ac=c[2];a.$f=c[3];a.hk=c[4];a.mode=c[5];a.Cg=c[6];a.ge=c[7];a.kd=c[8];a.md=c[9];a.cg=c[10];a.kf=c[11];a.re=c[12]}function yi(a,b){return((((b?a.$b:a.dd)&12)>>2)+1)*a.In+32*((b?a.ue:a.Ze)&15)}function Fi(a,b){var c=b?a.$b:a.dd;return a.Ia!=ai||c&ei.Th?((c&ei.Gf)>>ei.Hf)+1:0}
function Bi(a,b){if(b<Fi(a)){if(!a.Vd)return 1;if(b<a.Vd.length)switch(a.Vd[b]){case 160:case 180:case 320:case 360:return 1;case 720:return 3;case 1200:return 2;case 1440:return 4}}return 0}function zi(a,b){return((b?a.$b:a.dd)&di.Gf)>>di.Hf}
function hi(a,b,c,d,e){for(var f="",g=1;8>=g;g++){var h="pcjs-bitCell";g||(h+=" pcjs-bitCellLeft");f+='<div id="'+(b+"-"+g)+'" class="'+h+'" data-value="0">'+g+"</div>\n"}c.innerHTML=f;b=D(c,"pcjs-bitCell");c=null;for(g=0;g<b.length;g++)void 0!==e&&void 0!==e[g]&&(c=e[g]),c&&b[g].setAttribute("title",c),Gi(b[g],d&1<<g?!1:!0),b[g].onclick=function(a,b){return function(){var c="1"!=b.getAttribute("data-value");Gi(b,c);var d=b.getAttribute("id").split("-"),e=1<<parseInt(d[1],10)-1;switch(d[0]){case "sw1":a.$b=
@ -484,8 +484,8 @@ g.message);return}else for(a=b.replace(/\n/gm," ").replace(/ +$/,"").split(" "),
function zj(a,b){if(null==b)return!0;if(kb(a.ra,b,a.Qh,!0)){for(var c=0;c<a.Fb.length;c++)pb(a.ra,b+c,a.Fb[c]);return!0}return!1}Ha(function(){for(var a=D(window.document,"pcjs","rom"),b=0;b<a.length;b++){var c=a[b],d=C(c),d=new wj(d);Za(d,c)}});function Bj(a){z.call(this,"RAM",a,Bj);this.Qg=a.addr;this.Qd=a.size;this.zm=a.test;this.xm=!!this.Qd;this.hh=!1}A(z,Bj);Bj.prototype.pc=function(a,b,c){this.ra=b;this.T=c;this.oa=eb(a,"ChipSet");this.Ta()};Bj.prototype.Zb=function(a,b){b||this.reset();return!0};
Bj.prototype.Yb=function(){return!0};Bj.prototype.reset=function(){if(!this.Qg&&!this.xm&&this.oa){var a=1024*yi(this.oa);this.Qd&&a!=this.Qd&&(mb(this.ra,this.Qg,this.Qd),this.hh=!1);this.Qd=a}!this.hh&&this.Qd&&kb(this.ra,this.Qg,this.Qd)&&(this.hh=!0,this.status(Math.floor(this.Qd/1024)+"Kb"));if(this.hh){if(this.zm||qb(this.ra,1138,4660),this.oa&&(a=this.oa,a.ta)){var b=1048576>this.Qg?21:23,c=a.ta[b]|a.ta[b+1]<<8,c=c+(this.Qd>>10);a.ta[b]=c&255;a.ta[b+1]=c>>8;Ci(a)}}else x("No RAM allocated")};
Ha(function(){for(var a=D(window.document,"pcjs","ram"),b=0;b<a.length;b++){var c=a[b],d=C(c),d=new Bj(d);Za(d,c)}});function Cj(a){z.call(this,"Keyboard",a,Cj);this.Yh={};this.Ln=250;this.Mn=100;this.Ta()}A(z,Cj);
var Q={mp:1,np: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,jp:65,kp:66,Vj:67,im:68,E:69,qp:70,xp:71,Wj:72,zp:73,Ap:74,Bp:75,Cp:76,Dp:77,Uh:78,Fp:79,Gp:80,Ip:81,Yj:82,Mp:83,Wp:84,$p:85,aq:86,bq:87,dq:88,eq:89,fq:90,"[":91,"\\":92,"]":93,"^":94,_:95,"`":96,gq:97,hq:98,jq:99,kq:100,lq:101,mq:102,nq:103,oq:104,pq:105,qq:106,rq:107,sq:108,
tq:109,uq:110,wq:111,xq:112,yq:113,zq:114,Aq:115,Bq:116,Cq:117,Dq:118,Eq:119,x:120,y:121,z:122,"{":123,"|":124,"}":125,"~":126},Dj={16:2,17:8,18:32,20:256},Ej={tab:1009,esc:1027,"right-shift":3016,shift:1016,ctrl:1017,alt:1018,"caps-lock":1020,f1:1112,f2:1113,f3:1114,f4:1115,f5:1116,f6:1117,f7:1118,f8:1119,f9:1120,f10:1121,left:1037,up:1038,right:1039,down:1040,"ctrl-c":4003,"ctrl-break":4063,"ctrl-alt-del":4081},Fj={esc:1,1:2,2:3,3:4,4:5,5:6,6:7,7:8,8:9,9:10,0:11,"-":12,"=":13,bs:14,tab:15,q:16,
var Q={mp:1,np: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,jp:65,kp:66,Vj:67,im:68,E:69,qp:70,tp:71,Wj:72,wp:73,xp:74,yp:75,zp:76,Ap:77,Uh:78,Cp:79,Dp:80,Fp:81,Yj:82,Jp:83,Tp:84,Xp:85,Yp:86,Zp:87,aq:88,bq:89,cq:90,"[":91,"\\":92,"]":93,"^":94,_:95,"`":96,dq:97,eq:98,gq:99,hq:100,iq:101,jq:102,kq:103,lq:104,mq:105,nq:106,oq:107,pq:108,
qq:109,rq:110,tq:111,uq:112,vq:113,wq:114,xq:115,yq:116,zq:117,Aq:118,Bq:119,x:120,y:121,z:122,"{":123,"|":124,"}":125,"~":126},Dj={16:2,17:8,18:32,20:256},Ej={tab:1009,esc:1027,"right-shift":3016,shift:1016,ctrl:1017,alt:1018,"caps-lock":1020,f1:1112,f2:1113,f3:1114,f4:1115,f5:1116,f6:1117,f7:1118,f8:1119,f9:1120,f10:1121,left:1037,up:1038,right:1039,down:1040,"ctrl-c":4003,"ctrl-break":4063,"ctrl-alt-del":4081},Fj={esc:1,1:2,2:3,3:4,4:5,5:6,6:7,7:8,8:9,9:10,0:11,"-":12,"=":13,bs:14,tab:15,q:16,
w:17,e:18,r:19,t:20,y:21,u:22,i:23,o:24,p:25,"[":26,"]":27,enter:28,ctrl:29,a:30,s:31,d:32,f:33,g:34,h:35,j:36,k:37,l:38,";":39,quote:40,"`":41,shift:42,"\\":43,z:44,x:45,c:46,v:47,b:48,n:49,m:50,",":51,".":52,"/":53,"right-shift":54,prtsc:55,alt:56,space:57,"caps-lock":58,f1:59,f2:60,f3:61,f4:62,f5:63,f6:64,f7:65,f8:66,f9:67,f10:68,"num-lock":69,"scroll-lock":70,"num-home":71,"num-up":72,"num-pgup":73,"num-sub":74,"num-left":75,"num-center":76,"num-right":77,"num-add":78,"num-end":79,"num-down":80,
"num-pgdn":81,"num-ins":82,"num-del":83,sysreq:84,pause:84,f11:87,f12:88,"num-enter":7392,"right-ctrl":7648,"num-div":13792,"num-mul":14304,"right-alt":14560,home:18400,up:18656,pgup:18912,left:19424,right:19936,end:20448,down:20704,pgdn:20960,ins:21216,del:21472,win:23520,"right-win":23776,menu:24032},S={1027:2};S[Q["1"]]=2;S[Q["!"]]=10754;S[Q["2"]]=3;S[Q["@"]]=10755;S[Q["3"]]=4;S[Q["#"]]=10756;S[Q["4"]]=5;S[Q.$]=10757;S[Q["5"]]=6;S[Q["%"]]=10758;S[Q["6"]]=7;S[Q["^"]]=10759;S[Q["7"]]=8;
S[Q["&"]]=10760;S[Q["8"]]=9;S[Q["*"]]=10761;S[Q["9"]]=10;S[Q["("]]=10762;S[Q["0"]]=11;S[Q[")"]]=10763;S[Q["-"]]=12;S[Q._]=10764;S[Q["="]]=13;S[Q["+"]]=10765;S[1008]=14;S[1009]=15;S[113]=16;S[81]=10768;S[119]=17;S[87]=10769;S[101]=18;S[69]=10770;S[114]=19;S[82]=10771;S[116]=20;S[84]=10772;S[121]=21;S[89]=10773;S[117]=22;S[85]=10774;S[105]=23;S[73]=10775;S[111]=24;S[79]=10776;S[112]=25;S[80]=10777;S[Q["["]]=26;S[Q["{"]]=10778;S[Q["]"]]=27;S[Q["}"]]=10779;S[13]=28;S[1017]=29;S[97]=30;S[65]=10782;
@ -595,9 +595,9 @@ k.save=function(){var a=0,b=[];b[a++]=[this.Ue,this.gf,this.rb,this.sb,this.xb,t
k.restore=function(a){var b=0,c="unsupported restore format";if(a&&0<a.length){var d=0,e=a[d++];e&&2<=e.length&&(!this.$a.length&&6<=e.length?this.create("local",e[2],e[3],e[4],e[5]):null!=e[1]&&null!=this.gf&&e[1]!=this.gf&&(c="original checksum ("+e[1]+") differs from current checksum ("+this.gf+")",b=-1));for(this.$a.length||(b=-1);d<a.length&&0<=b;){var f=0,g=a[d++],h=g[f++],l=g[f++],n=g[f++];if(h>=this.$a.length||l>=this.$a[h].length||n>=this.$a[h][l].length){c="sector "+h+":"+l+":"+n+" out of range ("+
b+" changes applied)";b=-1;break}if(this.nf){c="unable to modify write-protected disk";b=-1;break}e=g[f++];f=g[f++];g=e+f.length;if(h=this.$a[h][l][n]){for(l=h.data.length;l<e;)h.data[l++]=h.pattern;l=0;h.$c=e;for(h.Ac=f.length;e<g;)h.data[e++]=f[l++];b++}}}0>b&&this.ia.Ja("unable to restore disk '"+this.qd+": "+c);return b};k.Ra=function(a){this.fa&&E(this.fa,pl)&&this.fa.message(a)};
function ql(a){z.call(this,"FDC",a,ql);this.dmaRead=this.oi;this.dmaWrite=this.pi;this.dmaFormat=this.qm;this.Ie=null;if(a.autoMount&&(this.Ie=a.autoMount,"string"==typeof this.Ie))try{this.Ie=eval("("+a.autoMount+")")}catch(b){x("FDC auto-mount error: "+b.message+" ("+a.autoMount+")"),this.Ie=null}this.uc=[]}A(z,ql);m={};aa={};
var rl={3:{zd:3,ee:0,name:aa.Rp},4:{zd:2,ee:1,name:aa.Pp},5:{zd:9,ee:7,name:aa.cq},6:{zd:9,ee:7,name:aa.Jp},7:{zd:2,ee:0,name:aa.Lp},8:{zd:1,ee:2,name:aa.Qp},10:{zd:2,ee:7,name:aa.Kp},13:{zd:6,ee:7,name:aa.rp},15:{zd:3,ee:0,name:aa.Op}};k=ql.prototype;
var rl={3:{zd:3,ee:0,name:aa.Op},4:{zd:2,ee:1,name:aa.Mp},5:{zd:9,ee:7,name:aa.$p},6:{zd:9,ee:7,name:aa.Gp},7:{zd:2,ee:0,name:aa.Ip},8:{zd:1,ee:2,name:aa.Np},10:{zd:2,ee:7,name:aa.Hp},13:{zd:6,ee:7,name:aa.rp},15:{zd:3,ee:0,name:aa.Lp}};k=ql.prototype;
k.Eb=function(a,b,c,d){var e=this;switch(c){case "listDisks":return this.ya[c]=d,sl(this,"Local Disk","?"),sl(this,"Remote Disk","??"),d.onchange=function(){var a=e.ya.descDisk,b=d.options[d.selectedIndex];if(a&&b){var c={};if(b=b.getAttribute("data-value"))try{c=eval("({"+b+"})")}catch(l){x("FDC option error: "+l.message)}b=c.desc;void 0===b&&(b="");c=c.href;void 0!==c&&(b='<a href="'+c+'" target="_blank">'+b+"</a>");a.innerHTML=b}},!0;case "descDisk":case "listDrives":return this.ya[c]=d,d.onchange=
function(){var a=da(d.value,10);null!=a&&tl(e,a)},!0;case "loadDrive":return this.ya[c]=d,d.onclick=function(){var a=e.ya.listDisks;a&&ul(e,a.options[a.selectedIndex].text,a.value)},!0;case "mountDrive":return window.wp&&window.tp&&window.vp?(this.ya[c]=d,d.addEventListener("change",function(){var a=d.children[0];a.children[1].disabled=0==a.children[0].files.length}),d.onsubmit=function(a){if(a=a.currentTarget[1].files[0]){var b=a.name;ul(e,fa(b,!0),b,a)}return!1}):d.parentNode.removeChild(d),!0}return!1};
function(){var a=da(d.value,10);null!=a&&tl(e,a)},!0;case "loadDrive":return this.ya[c]=d,d.onclick=function(){var a=e.ya.listDisks;a&&ul(e,a.options[a.selectedIndex].text,a.value)},!0;case "mountDrive":return window&&"FileReader"in window?(this.ya[c]=d,d.addEventListener("change",function(){var a=d.children[0];a.children[1].disabled=0==a.children[0].files.length}),d.onsubmit=function(a){if(a=a.currentTarget[1].files[0]){var b=a.name;ul(e,fa(b,!0),b,a)}return!1}):d.parentNode.removeChild(d),!0}return!1};
k.pc=function(a,b,c,d){this.ra=b;this.T=c;this.fa=d;this.Ka=a;this.oa=eb(a,"ChipSet");this.Hd();tb(b,this,vl);zb(b,this,wl);this.Pf()||this.Ta()};
k.Zb=function(a,b){if(!b){if(!a||!this.restore){if(this.reset(),this.Ka.yi){this.uc=[];for(var c=0;c<this.Ea.length;c++)xl(this,c,!0);this.Pf(!0)}}else if(!this.restore(a))return!1;if(c=this.ya.listDrives){for(;c.firstChild;)c.removeChild(c.firstChild);c.innerHTML="";for(var d=0;d<this.Qi;d++){var e=window.document.createElement("option");e.value=d;e.innerHTML=String.fromCharCode(65+d)+":";c.appendChild(e)}0<this.Qi&&(c.value="0",tl(this,0))}}return!0};
k.Yb=function(a){return a&&this.save?this.save():!0};k.reset=function(){this.Hd()};k.save=function(){var a=new gd(this);a.set(0,this.Nj());return a.data()};k.restore=function(a){return this.Hd(a[0])};
@ -613,10 +613,10 @@ k.qk=function(a,b,c,d){var e;a.Cc=!1;b&&(e=b.info(),b&&e[0]>a.rb||e[1]>a.sb)&&(t
function sl(a,b,c){if(a=a.ya.listDisks){for(var d=0;d<a.options.length;d++)if(a.options[d].value==c)return;d=window.document.createElement("option");d.value=c;d.innerHTML=b;a.appendChild(d)}}function tl(a,b){if(0<=b&&b<a.Ea.length){var c=a.Ea[b],d=a.ya.listDisks,e=a.ya.listDrives;if(d&&e&&(e=parseInt(e.value,10),c=c.lf?"?":c.Ve,!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 xl(a,b,c,d){var e=a.Ea[b];e.za&&(yl(a,e.Ve,e.za),e.Zl="",e.Ve="",e.za=null,e.lf=!1,a.se|=128,d||a.Ja("Drive "+String.fromCharCode(65+b)+" unloaded",c),c||d||tl(a,b))}function Al(a,b,c,d){var e;for(e=0;e<a.uc.length;e++)if(a.uc[e][1]==c){d.restore(a.uc[e][2]);return}a.uc[e]=[b,c,[]]}function yl(a,b,c){var d;for(d=0;d<a.uc.length;d++)if(a.uc[d][1]==b){a.uc[d][2]=c.save();break}}k.uo=function(a,b,c){this.ea(a,b,c,"OUTPUT");b&4?this.zf&4||this.zf&8&&this.oa&&aj(this.oa,6):this.Hd();this.zf=b};
k.bn=function(a,b){this.ea(a,null,b,"STATUS",this.Da);return this.Da};k.$m=function(a,b){var c=0;this.tb<this.eb&&(c=this.cc[this.tb]);this.zf&8&&this.oa&&bj(this.oa,6);this.ea(a,null,b,"DATA["+this.tb+"]",c);++this.tb>=this.eb&&(this.Da&=-81,this.tb=this.eb=0);return c};
k.to=function(a,b,c){this.ea(a,b,c,"DATA["+this.eb+"]");this.eb<this.cc.length&&(this.cc[this.eb++]=b);a=this.cc[0]&31;if(void 0!==rl[a]&&this.eb>=rl[a].zd){c=!1;this.tb=0;a=this.Qa();var d,e,f,g,h;b=a&31;switch(b){case 3:this.Qa(m.Sp);this.Qa(m.yp);this.Tb();break;case 4:e=this.Qa(m.Ff);this.gb=e&3;d=this.Ea[this.gb];this.Tb();this.bc((d.Ya&4278190080)>>>24,m.Vp);break;case 5:case 6:e=this.Qa(m.Ff);c=e>>2&1;this.gb=e&3;d=this.Ea[this.gb];d.Na=c;e=d.mb=this.Qa(m.Vj);f=this.Qa(m.Wj);g=d.Wa=this.Qa(m.Yj);
h=this.Qa(m.Uh);d.cb=128<<h;d.ce=this.Qa(m.pp);this.Qa(m.jm);this.Qa(m.op);6==b?this.qi(d):this.ri(d);Bl(this,d,a,c,e,f,g,h);c=!0;break;case 7:e=this.Qa(m.Ff);this.gb=e&3;d=this.Ea[this.gb];d.mb=d.ae=0;d.Ya=268435488;this.Tb();c=!0;break;case 8:d=this.Ea[this.gb];d.Na=0;this.Tb();this.bc(d.gb|d.Na<<2|d.Ya&255,m.lm);this.bc(d.mb,m.Hp);this.gb=this.gb+1&3;break;case 10:e=this.Qa(m.Ff);c=e>>2&1;this.gb=e&3;d=this.Ea[this.gb];e=d.mb;f=d.Na=c;g=d.Wa=1;h=0;d.Ya=0;d.za&&(d.Sa=d.za.seek(d.mb,d.Na,d.Wa))?
h=d.Sa.length:d.Ya=1088;Bl(this,d,a,c,e,f,g,h);c=!0;break;case 13:e=this.Qa(m.Ff);c=e>>2&1;this.gb=e&3;d=this.Ea[this.gb];e=d.mb;f=d.Na=c;g=1;h=this.Qa(m.Uh);d.cb=128<<h;d.ce=this.Qa(m.Np);this.Qa(m.jm);d.dk=this.Qa(m.im);this.pk(d);Bl(this,d,a,c,e,f,g,h);c=!0;break;case 15:e=this.Qa(m.Ff),this.gb=e&3,d=this.Ea[this.gb],d.Na=e>>2&1,e=this.Qa(m.Ep),d.mb+=e-d.ae,0>d.mb&&(d.mb=0),d.mb>=d.rb&&(d.mb=d.rb-1),d.ae=e,d.Ya=32,0==d.mb&&(d.Ya|=268435456),this.Tb(),c=!0}0<this.eb&&(this.Da|=80);this.zf&8&&(!d||
d.Ya&8||!c||this.oa&&aj(this.oa,6))}};k.an=function(a,b){var c=this.se;this.se&=-129;this.ea(a,null,b,"INPUT",c);return c};k.so=function(a,b,c){this.ea(a,b,c,"CONTROL");this.Ul=b};function Bl(a,b,c,d,e,f,g,h){a.Tb();a.bc(b.gb|b.Na<<2|b.Ya&255,m.lm);a.bc((b.Ya&65280)>>>8,m.Tp);a.bc((b.Ya&16711680)>>>16,m.Up);var l=0;if(e!=b.mb||f!=b.Na)l=g=1;c&128&&(f^=l,d||(l=0));a.bc(e+l,m.Vj);a.bc(f,m.Wj);a.bc(g,m.Yj);a.bc(h,m.Uh)}k.Qa=function(){var a=this.cc[this.tb];this.tb++;return a};
k.to=function(a,b,c){this.ea(a,b,c,"DATA["+this.eb+"]");this.eb<this.cc.length&&(this.cc[this.eb++]=b);a=this.cc[0]&31;if(void 0!==rl[a]&&this.eb>=rl[a].zd){c=!1;this.tb=0;a=this.Qa();var d,e,f,g,h;b=a&31;switch(b){case 3:this.Qa(m.Pp);this.Qa(m.vp);this.Tb();break;case 4:e=this.Qa(m.Ff);this.gb=e&3;d=this.Ea[this.gb];this.Tb();this.bc((d.Ya&4278190080)>>>24,m.Sp);break;case 5:case 6:e=this.Qa(m.Ff);c=e>>2&1;this.gb=e&3;d=this.Ea[this.gb];d.Na=c;e=d.mb=this.Qa(m.Vj);f=this.Qa(m.Wj);g=d.Wa=this.Qa(m.Yj);
h=this.Qa(m.Uh);d.cb=128<<h;d.ce=this.Qa(m.pp);this.Qa(m.jm);this.Qa(m.op);6==b?this.qi(d):this.ri(d);Bl(this,d,a,c,e,f,g,h);c=!0;break;case 7:e=this.Qa(m.Ff);this.gb=e&3;d=this.Ea[this.gb];d.mb=d.ae=0;d.Ya=268435488;this.Tb();c=!0;break;case 8:d=this.Ea[this.gb];d.Na=0;this.Tb();this.bc(d.gb|d.Na<<2|d.Ya&255,m.lm);this.bc(d.mb,m.Ep);this.gb=this.gb+1&3;break;case 10:e=this.Qa(m.Ff);c=e>>2&1;this.gb=e&3;d=this.Ea[this.gb];e=d.mb;f=d.Na=c;g=d.Wa=1;h=0;d.Ya=0;d.za&&(d.Sa=d.za.seek(d.mb,d.Na,d.Wa))?
h=d.Sa.length:d.Ya=1088;Bl(this,d,a,c,e,f,g,h);c=!0;break;case 13:e=this.Qa(m.Ff);c=e>>2&1;this.gb=e&3;d=this.Ea[this.gb];e=d.mb;f=d.Na=c;g=1;h=this.Qa(m.Uh);d.cb=128<<h;d.ce=this.Qa(m.Kp);this.Qa(m.jm);d.dk=this.Qa(m.im);this.pk(d);Bl(this,d,a,c,e,f,g,h);c=!0;break;case 15:e=this.Qa(m.Ff),this.gb=e&3,d=this.Ea[this.gb],d.Na=e>>2&1,e=this.Qa(m.Bp),d.mb+=e-d.ae,0>d.mb&&(d.mb=0),d.mb>=d.rb&&(d.mb=d.rb-1),d.ae=e,d.Ya=32,0==d.mb&&(d.Ya|=268435456),this.Tb(),c=!0}0<this.eb&&(this.Da|=80);this.zf&8&&(!d||
d.Ya&8||!c||this.oa&&aj(this.oa,6))}};k.an=function(a,b){var c=this.se;this.se&=-129;this.ea(a,null,b,"INPUT",c);return c};k.so=function(a,b,c){this.ea(a,b,c,"CONTROL");this.Ul=b};function Bl(a,b,c,d,e,f,g,h){a.Tb();a.bc(b.gb|b.Na<<2|b.Ya&255,m.lm);a.bc((b.Ya&65280)>>>8,m.Qp);a.bc((b.Ya&16711680)>>>16,m.Rp);var l=0;if(e!=b.mb||f!=b.Na)l=g=1;c&128&&(f^=l,d||(l=0));a.bc(e+l,m.Vj);a.bc(f,m.Wj);a.bc(g,m.Yj);a.bc(h,m.Uh)}k.Qa=function(){var a=this.cc[this.tb];this.tb++;return a};
k.Tb=function(){this.tb=this.eb=0};k.bc=function(a){this.cc[this.eb++]=a};k.oi=function(a,b,c){void 0===b||0>b?this.sc(a,c):c(-1,!1)};k.pi=function(a,b){return void 0!==b&&0<=b?this.Fc(a,b):-1};k.qm=function(a,b){return void 0!==b&&0<=b?this.Rj(a,b):-1};k.qi=function(a){a.Ya=72;a.za&&(a.Sa=null,a.Ya=0,this.oa&&(Ui(this.oa,2,this,"dmaRead",a),Oi(this.oa,2)))};k.ri=function(a){a.Ya=72;a.za&&(a.za.nf?a.Ya=576:(a.Sa=null,a.Ya=0,this.oa&&(Ui(this.oa,2,this,"dmaWrite",a),Oi(this.oa,2))))};
k.pk=function(a){a.Ya=72;a.za&&(a.Sa=null,a.Ya=0,this.oa&&(a.He=0,a.wc=Array(4),a.Qf=!0,a.Wf=0,Ui(this.oa,2,this,"dmaFormat",a),Oi(this.oa,2),a.Qf=!1))};k.sc=function(a,b){var c=-1;if(!a.Ya&&a.za){do{if(a.Sa&&0<=(c=ol(a.Sa,a.ab++)))break;a.Sa=a.za.seek(a.mb,a.Na,a.Wa);if(!a.Sa){a.Ya=1088;break}a.ab=0;this.Nf(a)}while(1)}b(c,!1)};
k.Fc=function(a,b){if(a.Ya||!a.za)return-1;do{if(a.Sa&&a.za.write(a.Sa,a.ab++,b))break;a.Sa=a.za.seek(a.mb,a.Na,a.Wa);if(!a.Sa){a.Ya=8256;b=-1;break}a.ab=0;this.Nf(a)}while(1);return b};k.Nf=function(a){a.Wa++;a.Wa>=a.qg+1&&(a.Wa=1,a.Na++,a.Na>=a.pg&&(a.Na=0,a.mb++))};k.Rj=function(a,b){if(a.Ya)return-1;a.wc[a.He++]=b;if(a.He==a.wc.length){a.mb=a.wc[0];a.Na=a.wc[1];a.Wa=a.wc[2];a.cb=128<<a.wc[3];for(var c=a.He=0;c<a.cb;c++)if(0>this.Fc(a,a.dk))return-1;a.Wf++}a.Wf>=a.ce&&(b=-1);return b};
@ -641,7 +641,7 @@ k.jo=function(a,b,c){this.ea(a,b,c,"SECCNT");this.te=b};k.Rm=function(a,b){var c
k.ho=function(a,b,c){this.ea(a,b,c,"DRVHD");this.yf=b;this.Da=this.Ea[this.yf&16?1:0]?this.Da|64:this.Da&-65};k.Sm=function(a,b){var c=this.Da;this.ea(a,null,b,"STATUS",c);return c};k.bo=function(a,b,c){this.ea(a,b,c,"COMMAND");this.Kj=b;this.oa&&bj(this.oa,14);Kl(this)};k.io=function(a,b,c){this.ea(a,b,c,"FDR");this.Mh&4&&!(b&4)&&(this.Nd=1);this.Mh=b};
function Kl(a){var b=!1,c=a.Kj,d=a.yf&16?1:0,e=a.yf&15,f=a.Lh|(a.Kh&3)<<8,g=a.Nh,h=a.te||256;a.Pa=null;a.Nd=0;a.Da=80;(d=a.Ea[d])?(d.Sd=f,d.Na=e,d.Wa=g,d.cb=h*d.ib,c=144<=c?c:c&240,d.Sa=null,d.errorCode=0,a.Pa=d):c=-1;switch(c&240){case 32:a.sc(d,function(b){0<=b&&a.oa?(Jl(a),a.Da=136):(a.Da=1,a.Nd=16)},!1);break;case 48:a.oa?(Jl(a),a.Da=136):(a.Da=1,a.Nd=4);break;case 16:b=!0;break;case 64:b=!0;break;case 144:a.Nd=1;b=!0;break;case 145:d.sb=e+1,d.xb=h,b=!0}b&&Jl(a)}
function Jl(a){!a.oa||a.Mh&2||aj(a.oa,14)}
function Il(a){a.tb=0;var b=a.Qa(),c=a.Qa(),d=c&32,e=d>>5,f=c&31,g=a.Qa(),h=a.Qa(),l=g<<2&768|h,n=g&63,q=a.Qa(),r=a.Qa(),s=a.Ea[e];s&&(s.Sd=l,s.Na=f,s.Wa=n,s.cb=q*s.ib);switch(b){case 3:a.Tb(s?s.errorCode:4);a.bc(c);a.bc(g);a.bc(h);a.bc(0|d);b=-1;break;case 12:for(c=0;0<=(b=a.Qa());)s&&c<s.bf.length&&(s.bf[c++]=b);s&&Hl(a,s);b=0;s||a.pf!=e||(a.pf=-1,b=2);a.Tb(b|d);b=-1;break;case 224:case 228:a.Tb(0|d),b=-1}if(0<=b)switch(void 0===s?b=-1:(s.errorCode=0,s.dm=0),b){case 0:a.Tb(0|d);break;case 1:s.iq=
function Il(a){a.tb=0;var b=a.Qa(),c=a.Qa(),d=c&32,e=d>>5,f=c&31,g=a.Qa(),h=a.Qa(),l=g<<2&768|h,n=g&63,q=a.Qa(),r=a.Qa(),s=a.Ea[e];s&&(s.Sd=l,s.Na=f,s.Wa=n,s.cb=q*s.ib);switch(b){case 3:a.Tb(s?s.errorCode:4);a.bc(c);a.bc(g);a.bc(h);a.bc(0|d);b=-1;break;case 12:for(c=0;0<=(b=a.Qa());)s&&c<s.bf.length&&(s.bf[c++]=b);s&&Hl(a,s);b=0;s||a.pf!=e||(a.pf=-1,b=2);a.Tb(b|d);b=-1;break;case 224:case 228:a.Tb(0|d),b=-1}if(0<=b)switch(void 0===s?b=-1:(s.errorCode=0,s.dm=0),b){case 0:a.Tb(0|d);break;case 1:s.fq=
r;a.Tb(0|d);break;case 5:a.Tb(0|d);break;case 8:a.qi(s,function(b){a.Tb(b|d)});break;case 10:a.ri(s,function(b){a.Tb(b|d)});break;case 15:Ll(a,s,function(b){a.Tb(b|d)});break;default:a.Tb(2|d)}}k.Qa=function(){var a=-1;this.tb<this.eb&&(a=this.cc[this.tb++]);return a};k.Tb=function(a){this.tb=this.eb=0;void 0!==a&&this.bc(a);this.oa&&aj(this.oa,5);this.Da|=32};k.bc=function(a){this.cc[this.eb++]=a};k.oi=function(a,b,c){void 0===b||0>b?this.sc(a,c):c(-1,!1)};
k.pi=function(a,b){return void 0!==b&&0<=b?this.Fc(a,b):-1};k.rm=function(a,b){var c;void 0!==b&&0<=b?(c=b,a.ab<a.cf.length?a.cf[a.ab++]=c:(a.errorCode=20,c=-1)):c=-1;return c};k.sm=function(a,b){return void 0!==b&&0<=b?this.Rj(a,b):-1};k.qi=function(a,b){a.errorCode=4;if(a.za&&(a.Sa=null,this.oa)){a.errorCode=0;Ui(this.oa,3,this,"dmaRead",a);Oi(this.oa,3,function(c){c||0!=a.errorCode||(a.errorCode=4);b(a.errorCode?2:0)});return}b(a.errorCode?2:0)};
k.ri=function(a,b){a.errorCode=4;if(a.za&&(a.Sa=null,this.oa)){a.errorCode=0;Ui(this.oa,3,this,"dmaWrite",a);Oi(this.oa,3,function(c){c||(0==a.errorCode&&(a.errorCode=4),20==a.errorCode&&(a.errorCode=0));b(a.errorCode?2:0)});return}b(a.errorCode?2:0)};function Ll(a,b,c){b.errorCode=4;b.cf&&b.cf.length==b.cb||(b.cf=Array(b.cb));b.ab=0;a.oa?(b.errorCode=0,Ui(a.oa,3,a,"dmaWriteBuffer",b),Oi(a.oa,3,function(a){a||0!=b.errorCode||(b.errorCode=4);c(b.errorCode?2:0)})):c(b.errorCode?2:0)}

View file

@ -26,7 +26,7 @@ function Qa(a,b,c,d){this.sl=b||0;this.pa=null;this.offset=0;this.Ej=c;this.ea=n
Qa.prototype={Sg:function(){return 0},bh:function(){},Un:function(a){return this.pa[a>>2]>>>((a&3)<<3)&255},Xn:function(a){var b=a>>2;a=(a&3)<<3;var c=this.pa[b]>>>a;return 24>a?c&65535:c&255|(this.pa[b+1]&255)<<8},eo:function(a,b){var c=a>>2,d=(a&3)<<3;this.pa[c]=this.pa[c]&~(255<<d)|b<<d;this.ab=!0},io:function(a,b){var c=a>>2,d=(a&3)<<3;24>d?this.pa[c]=this.pa[c]&~(65535<<d)|b<<d:(this.pa[c]=this.pa[c]&16777215|b<<24,c++,this.pa[c]=this.pa[c]&4294967040|b>>8);this.ab=!0},save:function(){return this.ea?
null:this.pa},restore:function(a){return this.ea?null==a:a&&this.sl==a.length<<2?(this.pa=a,this.ab=!0):!1},re:function(a,b){a||(a=[]);void 0===b&&(b=!0);var c=a;this.yc=c[0]?c[0]:this.Sg;this.Vn=c[1]?c[1]:this.Sg;b&&(this.Vi=c[0]?c[0]:this.Sg,this.Wn=c[1]?c[1]:this.Sg);c=a;this.Bc=c[2]&&!this.Ej?c[2]:this.bh;this.fo=c[3]&&!this.Ej?c[3]:this.bh;b&&(this.cj=c[2]?c[2]:this.bh,this.ho=c[3]?c[3]:this.bh)}};var fb=[Qa.prototype.Un,Qa.prototype.Xn,Qa.prototype.eo,Qa.prototype.io];
function gb(a,b){v.call(this,"CPU",a,gb);var c=a.cycles||b,d=a.multiplier||1;this.ba={};this.ba.kd=c;this.ba.Dd=d;this.ba.Eg=Math.round(this.ba.kd/1E4)/100;this.ba.Me=this.ba.Eg*this.ba.Dd;this.na.Gb=!1;this.na.vc=!1;this.na.Bh=a.autoStart;c=Ba.autostart;void 0!==c&&(this.na.Bh="true"==c?!0:"false"==c?!1:null);this.na.tg=!1;this.ba.Jg=this.ba.Oe=0;this.ba.Kg=a.csStart;this.ba.uf=a.csInterval;this.ba.vf=a.csStop;var e=this;this.Xm=function(){hb(e)};this.Ma()}y(v,gb);k=gb.prototype;
k.nc=function(a,b,c,d){this.qa=b;this.Qa=d;this.La=a;var e=C(a,"Video");e&&(this.pf=function(){ib(e)},this.Se=function(){e.Se()});this.ja=C(a,"ChipSet");this.Ma()};k.reset=function(){};k.save=function(){return null};k.restore=function(){return!1};k.Qb=function(a,b){if(!b){if(a&&this.restore){jb(this);if(!this.restore(a))return!1;kb(this)}else this.reset();this.Zb("No debugger detected")}this.na.Gb=!0;!lb(this)&&this.Qa&&this.Qa.Fp();this.pf();this.of();return!0};
k.nc=function(a,b,c,d){this.qa=b;this.Qa=d;this.La=a;var e=C(a,"Video");e&&(this.pf=function(){ib(e)},this.Se=function(){e.Se()});this.ja=C(a,"ChipSet");this.Ma()};k.reset=function(){};k.save=function(){return null};k.restore=function(){return!1};k.Qb=function(a,b){if(!b){if(a&&this.restore){jb(this);if(!this.restore(a))return!1;kb(this)}else this.reset();this.Zb("No debugger detected")}this.na.Gb=!0;!lb(this)&&this.Qa&&this.Qa.Cp();this.pf();this.of();return!0};
k.Pb=function(a){this.na.Gb=!1;return a&&this.save?this.save():!0};function lb(a){return!0===a.na.Bh||null===a.na.Bh&&void 0===a.sa.run?(hb(a),!0):!1}k.Se=function(){};k.Ij=function(){return 0};function kb(a){void 0===a.ba.Kg&&(a.ba.Kg=0);void 0===a.ba.uf&&(a.ba.uf=-1);void 0===a.ba.vf&&(a.ba.vf=-1);a.na.tg=0<=a.ba.Kg&&0<a.ba.uf;a.na.tg&&(a.ba.Jg=0,a.ba.Oe=a.ba.Kg-a.me)}
function D(a,b,c,d){void 0!==a.sa[b]&&(void 0===d&&(d=4),void 0===c&&(Ma(a,"Register "+b+" is invalid"),mb(a)),c=p(c,d),a.sa[b].innerHTML!=c&&(a.sa[b].innerHTML=c))}k.of=function(){};k.pf=function(){};
k.zb=function(a,b,c,d){var e=this;a=!1;switch(c){case "run":this.sa[c]=d;d.onclick=function(){e.na.vc?mb(e,!0):hb(e,!0)};a=!0;break;case "reset":this.sa[c]=d;d.onclick=function(){e.La&&nb(e.La)};a=!0;break;case "speed":this.sa[c]=d;a=!0;break;case "setSpeed":this.sa[c]=d,d.onclick=function(){ob(e,e.ba.Dd<<1,!0)},d.innerHTML=this.ba.Me.toFixed(2)+"Mhz",a=!0}return a};function pb(a,b,c){a.me+=b;c&&(a.Rc=a.A=0)}
@ -60,7 +60,7 @@ k.Lm=function(a,b){this.Rf=a;this.Fa=this.ha=a.bd(this.Kf=b,0);return this.Z&1?0
k.M=function(){var a=Pc(this,this.Ha)<<24>>24;this.Ha=this.za.nb+(this.va=this.va+1&65535);return a&65535};k.L=function(){var a=E(this,this.Ha);this.Ha=this.za.nb+(this.va=this.va+2&65535);return a};k.Ea=function(){var a=this.Y;this.Y=this.Y+2&65535;return E(this,this.Tb.bd(a,1))};function L(a,b){var c=a.Y=a.Y-2&65535;Rc(a,a.Tb.cc(c,1),b)}
k.of=function(){D(this,"AX",this.H);D(this,"BX",this.C);D(this,"CX",this.J);D(this,"DX",this.K);D(this,"SP",this.Y);D(this,"BP",this.I);D(this,"SI",this.G);D(this,"DI",this.F);D(this,"CS",this.za.Aa);D(this,"DS",this.$b.Aa);D(this,"SS",this.Tb.Aa);D(this,"ES",this.mb.Aa);D(this,"IP",this.va);var a=mc(this);D(this,"PS",a);D(this,"C",a&1?1:0,1);D(this,"P",a&4?1:0,1);D(this,"A",a&16?1:0,1);D(this,"Z",a&64?1:0,1);D(this,"S",a&128?1:0,1);D(this,"T",a&256?1:0,1);D(this,"I",a&512?1:0,1);D(this,"D",a&1024?
1:0,1);D(this,"O",a&2048?1:0,1);this.sa.speed&&(this.sa.speed.innerHTML=this.na.vc&&this.ba.Qc?this.ba.Qc.toFixed(2)+"Mhz":"Stopped")};
k.il=function(a){this.na.ug=!0;this.na.Al=!1;this.Rc=this.A=a;this.ja&&tb(this.ja);a||!this.Qa||this.Qa.vp(Sc)||(this.Z|=4);do{if(a=this.Z&240)this.ua|=a;else if(this.Qg=this.Ha,this.ha=this.Fa=-1,this.D=this.$b,this.N=this.Tb,this.ua=this.Z&256,this.bb){a:{if(!(this.Z&4))if(this.bb&1&&this.Ga&512){if(a=Tc(this.ja),-1<=a&&(this.bb&=-2,0<=a)){this.bb&=-5;Uc.call(this,a,null,11);break a}}else if(this.bb&2){this.bb&=-3;Uc.call(this,1,null,11);break a}if(a=this.bb&8){a=this.ja;for(var b=!1,c=0;c<a.Ta;c++)for(var d=
k.il=function(a){this.na.ug=!0;this.na.Al=!1;this.Rc=this.A=a;this.ja&&tb(this.ja);a||!this.Qa||this.Qa.rp(Sc)||(this.Z|=4);do{if(a=this.Z&240)this.ua|=a;else if(this.Qg=this.Ha,this.ha=this.Fa=-1,this.D=this.$b,this.N=this.Tb,this.ua=this.Z&256,this.bb){a:{if(!(this.Z&4))if(this.bb&1&&this.Ga&512){if(a=Tc(this.ja),-1<=a&&(this.bb&=-2,0<=a)){this.bb&=-5;Uc.call(this,a,null,11);break a}}else if(this.bb&2){this.bb&=-3;Uc.call(this,1,null,11);break a}if(a=this.bb&8){a=this.ja;for(var b=!1,c=0;c<a.Ta;c++)for(var d=
a.Ta[c],e=0;e<d.wb.length;e++){var f=d.wb[e];f.jd||(Vc(a,f),f.jd||(b=!0))}a=!b}a&&(this.bb&=-9)}if(this.bb&4){this.Z=this.A=0;break}}this.Z=0;this.Na[this.da()].call(this)}while(0<this.A);return this.na.ug?this.Rc-this.A:void 0===this.na.ug?0:-1};u(function(){for(var a=A(window.document,"pcjs","cpu"),b=0;b<a.length;b++){var c=a[b],d=z(c),d=new Ib(d);Ja(d,c)}});function Wc(a,b){this.ka=a^b;this.ca=256;this.A-=0>this.Fa?0>this.ha?this.B.Ib:this.B.kb:this.B.Xb;return(this.X=this.ia=a+b)&255}
function Xc(a,b){this.ca=256;this.A-=0>this.Fa?0>this.ha?this.B.Ib:this.B.kb:this.B.Xb;return(this.X=this.ia=this.ka=a|b)&255}function Yc(a,b){this.ka=a^b;this.X=this.ia=a+b+(this.X&this.ca?1:0);this.ca=256;this.A-=0>this.Fa?0>this.ha?this.B.Ib:this.B.kb:this.B.Xb;return this.X&255}function Zc(a,b){this.ka=a^b;this.X=this.ia=a-b-(this.X&this.ca?1:0);this.ca=256;this.A-=0>this.Fa?0>this.ha?this.B.Ib:this.B.kb:this.B.Xb;return this.X&255}
function $c(a,b){this.ca=256;this.A-=0>this.Fa?0>this.ha?this.B.Ib:this.B.kb:this.B.Xb;return(this.X=this.ia=this.ka=a&b)&255}function ad(a,b){this.ka=a^b;this.ca=256;this.A-=0>this.Fa?0>this.ha?this.B.Ib:this.B.kb:this.B.Xb;return(this.X=this.ia=a-b)&255}function bd(a,b){this.ca=256;this.A-=0>this.Fa?0>this.ha?this.B.Ib:this.B.kb:this.B.Xb;return(this.X=this.ia=this.ka=a^b)&255}
@ -418,7 +418,7 @@ this.da();eb(this.qa,a,this.H&255,this.Ha-2);this.A-=this.B.zi},function(){var a
2},function(){this.vb=-1;Ig[this.da()].call(this,Od,Fd);0<=this.vb&&(this.H=this.vb)},function(){this.vb=-1;Jg[this.da()].call(this,Pd,Fd);0<=this.vb&&(this.H=this.vb,this.K=this.Nf)},function(){this.X&=~this.ca;this.A-=2},function(){this.X|=this.ca;this.A-=2},function(){this.Ga&=-513;this.A-=this.B.Yj},function(){this.Ga|=512;this.Z|=4;this.A-=2},function(){this.Ga&=-1025;this.A-=2},function(){this.Ga|=1024;this.A-=2},function(){Ig[this.da()].call(this,cc,Fd)},function(){Jg[this.da()].call(this,
ec,Fd)}];
function R(a){v.call(this,"ChipSet",a,R);this.Da=a.model;this.Da=void 0!==this.Da?parseInt(this.Da,10):ih;this.Lb=0;var b=a.sw1;if(b)this.Lb=jh(b,kh|lh.ol);else{this.pd=[360,360];(b=a.floppies)&&void 0!==b.length&&(this.pd=b);if(b=this.pd.length)this.Lb|=mh.dh,b--,this.Lb|=(b&3)<<mh.Xe;if(b=a.monitor||(this.Da<nh?"mono":"ega"),void 0!==oh[b])this.Lb|=oh[b]<<lh.Xe}this.Nd=jh(a.sw2||"11110000",0);this.Km=this.Da==ih?16:64;this.ff=this.gf=1;this.Da>=nh&&(this.ff=this.gf=2);this.yg=a.scaleTimers||!1;
this.ao=a.rtcDate;this.Gj=!1;a.sound&&window&&"webkitAudioContext"in window&&(this.th=new webkitAudioContext);this.reset(!0);this.Ma()}y(v,R);var ih=5150,nh=5170,oh={none:0,tv:1,color:2,mono:3,ega:0},mh={dh:1,ONE:0,Yo:64,Wo:128,so:192,We:192,Xe:6},kh=12,lh={Xo:16,lo:32,ol:48,We:48,Xe:4};k=R.prototype;
this.ao=a.rtcDate;this.Gj=!1;a.sound&&window&&"webkitAudioContext"in window&&(this.th=new webkitAudioContext);this.reset(!0);this.Ma()}y(v,R);var ih=5150,nh=5170,oh={none:0,tv:1,color:2,mono:3,ega:0},mh={dh:1,ONE:0,Vo:64,To:128,so:192,We:192,Xe:6},kh=12,lh={Uo:16,lo:32,ol:48,We:48,Xe:4};k=R.prototype;
k.zb=function(a,b,c,d){switch(c){case "sw1":return this.sa[c]=d,ph(this,c,d,this.Lb,{0:this.Da==ih?"Bootable Floppy Drive":"Loop on POST",1:this.Da==ih?"Reserved":"Coprocessor",2:"Base Memory Size",4:"Monitor Type",6:"Number of Floppy Drives"}),!0;case "sw2":if(this.Da==ih)return this.sa[c]=d,ph(this,c,d,this.Nd,{0:"Expansion Memory Size",4:"Reserved"}),!0;break;case "swdesc":return this.sa[c]=d,!0}return!1};
k.nc=function(a,b,c,d){this.qa=b;this.la=c;this.Qa=d;this.La=a;this.Ra=C(a,"Keyboard");this.Vk=Math.round(c.ba.kd/1193181);bb(b,this,qh);db(b,this,rh);this.Da<nh?(bb(b,this,sh),db(b,this,th)):(bb(b,this,uh),db(b,this,vh))};k.Qb=function(a,b){if(!b)if(!a)this.reset();else if(!this.restore(a))return!1;return!0};k.Pb=function(a){return a&&this.save?this.save():!0};
k.reset=function(a){var b;this.Lc=this.Lb;this.te=this.Nd;wh(this);this.Ta=Array(this.ff);for(b=0;b<this.ff;b++)xh(this,b);this.qb=Array(this.gf);yh(this,0,32);1<this.gf&&yh(this,1,160);this.ph=void 0;this.Mb=Array(3);for(b=0;b<this.Mb.length;b++)zh(this,b);this.ef=this.nh=this.kc=this.jg=void 0;this.ig=0;if(this.Da>=nh){this.hb=16;this.Zc=0;this.Mc=16;this.dg=0;this.Vd=160;512<=Ah(this)&&(this.Vd|=16);3==Bh(this)&&(this.Vd|=64);this.lh=3;this.gg=0;this.Nb=Array(7);this.Ae=0;a&&(this.oa=Array(64));
@ -429,7 +429,7 @@ k.save=function(){var a=new G(this);a.set(0,[this.Lb,this.Nd,this.Lc,this.te]);f
[b]);b=[];for(c=0;c<this.Mb.length;c++)d=[],e=this.Mb[c],d[0]=e.rc,d[1]=e.Ic,d[2]=e.Wb,d[3]=e.lf,d[4]=e.tj,d[5]=e.mode,d[6]=e.Of,d[7]=e.xd,d[8]=e.de,d[9]=e.Pc,d[10]=e.qf,d[11]=e.Ee,d[12]=e.Kd,b[c]=d;a.set(3,[this.ph,b]);a.set(4,[this.jg,this.kc,this.nh,this.ef,this.ig]);this.Da>=nh&&(a.set(5,[this.hb,this.Zc,this.Mc,this.dg,this.Vd,this.lh]),a.set(6,[this.gg,this.Nb,this.Ae,this.oa,this.tf]));return a.data()};
k.restore=function(a){var b,c;b=a[0];this.Lb=b[0];this.Nd=b[1];this.Lc=b[2];this.te=b[3];b=a[1];this.Ta=Array(this.ff);for(c=0;c<this.ff;c++)xh(this,c,1==b.length?b[0][c]:b);b=a[2];this.qb=Array(this.gf);for(c=0;c<this.gf;c++)yh(this,c,0===c?32:160,b[0][c]);b=a[3];this.ph=b[0];this.Mb=Array(3);for(c=0;c<this.Mb.length;c++)zh(this,c,b[1][c]);b=a[4];this.jg=b[0];this.kc=b[1];this.nh=b[2];this.ef=b[3];this.ig=b[4];if(b=a[5])this.hb=b[0],this.Zc=b[1],this.Mc=b[2],this.dg=b[3],this.Vd=b[4],this.lh=b[5];
if(b=a[6])this.gg=b[0],this.Nb=b[1],this.Ae=b[2],this.oa=b[3],this.tf=b[4],Ch(this);return!0};function xh(a,b,c){a=a.Ta[b]={};c&&5==c.length||(c=[0,void 0,void 0,0,[]]);a.ud=c[0];a.mh=c[1];a.rj=c[2];a.Eb=c[3];a.Pm=b<<2;a.wb=Array(4);for(b=0;b<a.wb.length;b++)Fh(a,b,c[4][b])}function Fh(a,b,c){var d=a.wb[b]={};if(void 0===c||8!=c.length)c=[!0,[],[],[],[]];d.ea=a;d.Kj=b;d.jd=c[0];d.mj=c[1];d.rc=c[2];d.Cb=c[3];d.Wb=c[4];d.mode=c[5];d.kg=c[6];Gh(d,c[8],c[9])}
function Gh(a,b,c,d){"string"==typeof b&&(b=Ha(b));b&&(a.pg=null,a.Yn=b.id,a.Zn=c,a.og=b,a.Mh=b[c],a.Pg=d)}function yh(a,b,c,d){a=a.qb[b]={};d&&8==d.length||(d=[0,[void 0,void 0,void 0,void 0]]);a.port=c;a.xp=b<<3;a.Af=d[0];a.Rd=d[1];a.ld=d[2];a.$c=d[3];a.Db=d[4];a.Ec=d[5];a.Wd=d[6];a.df=d[7]}
function Gh(a,b,c,d){"string"==typeof b&&(b=Ha(b));b&&(a.pg=null,a.Yn=b.id,a.Zn=c,a.og=b,a.Mh=b[c],a.Pg=d)}function yh(a,b,c,d){a=a.qb[b]={};d&&8==d.length||(d=[0,[void 0,void 0,void 0,void 0]]);a.port=c;a.tp=b<<3;a.Af=d[0];a.Rd=d[1];a.ld=d[2];a.$c=d[3];a.Db=d[4];a.Ec=d[5];a.Wd=d[6];a.df=d[7]}
function zh(a,b,c){a=a.Mb[b]={};if(void 0===c||13!=c.length)c=[[],[],[],[]];a.rc=c[0];a.Ic=c[1];a.Wb=c[2];a.lf=c[3];a.tj=c[4];a.mode=c[5];a.Of=c[6];a.xd=c[7];a.de=c[8];a.Pc=c[9];a.qf=c[10];a.Ee=c[11];a.Kd=c[12]}function Ah(a,b){return((((b?a.Lb:a.Lc)&12)>>2)+1)*a.Km+32*((b?a.Nd:a.te)&15)}function Hh(a,b){var c=b?a.Lb:a.Lc;return a.Da!=ih||c&mh.dh?((c&mh.We)>>mh.Xe)+1:0}
function Dh(a,b){if(b<Hh(a)){if(!a.pd)return 1;if(b<a.pd.length)switch(a.pd[b]){case 160:case 180:case 320:case 360:return 1;case 720:return 3;case 1200:return 2;case 1440:return 4}}return 0}function Bh(a,b){return((b?a.Lb:a.Lc)&lh.We)>>lh.Xe}
function ph(a,b,c,d,e){for(var f="",h=1;8>=h;h++){var g="pcjs-bitCell";h||(g+=" pcjs-bitCellLeft");f+='<div id="'+(b+"-"+h)+'" class="'+g+'" data-value="0">'+h+"</div>\n"}c.innerHTML=f;b=A(c,"pcjs-bitCell");c=null;for(h=0;h<b.length;h++)void 0!==e&&void 0!==e[h]&&(c=e[h]),c&&b[h].setAttribute("title",c),Ih(b[h],d&1<<h?!1:!0),b[h].onclick=function(a,b){return function(){var c="1"!=b.getAttribute("data-value");Ih(b,c);var d=b.getAttribute("id").split("-"),e=1<<parseInt(d[1],10)-1;switch(d[0]){case "sw1":a.Lb=
@ -460,14 +460,14 @@ var qh={0:function(){return Jh(this,0,0)},1:function(){return Lh(this,0,0)},2:fu
128:R.prototype.En,132:function(a,b){this.Nb[0]=b},133:function(a,b){this.Nb[1]=b},134:function(a,b){this.Nb[2]=b},136:function(a,b){this.Nb[3]=b},137:function(a,b){Th(this,1,2,b)},138:function(a,b){Th(this,1,3,b)},139:function(a,b){Th(this,1,1,b)},140:function(a,b){this.Nb[4]=b},141:function(a,b){this.Nb[5]=b},142:function(a,b){this.Nb[6]=b},143:function(a,b){Th(this,1,0,b)},160:function(a,b){Xh(this,1,b)},161:function(a,b){ci(this,1,b)},192:function(a,b){Kh(this,1,0,b)},194:function(a,b){Mh(this,
1,0,b)},196:function(a,b){Kh(this,1,1,b)},198:function(a,b){Mh(this,1,1,b)},200:function(a,b){Kh(this,1,2,b)},202:function(a,b){Mh(this,1,2,b)},204:function(a,b){Kh(this,1,3,b)},206:function(a,b){Mh(this,1,3,b)},208:function(a,b){this.Ta[1].mh=b},210:function(a,b){Oh(this,1,b)},212:function(a,b){Ph(this,1,b)},214:function(a,b){this.Ta[1].wb[b&3].mode=b},216:function(){this.Ta[1].Eb=0},218:function(){Rh(this,1)}};
u(function(){for(var a=A(window.document,"pcjs","chipset"),b=0;b<a.length;b++){var c=a[b],d=z(c),d=new R(d);Ja(d,c);wh(d)}});function si(a){v.call(this,"ROM",a,si);this.rb=null;this.nj=a.addr;this.$g=a.size;this.ql=a.alias;this.Pf=a.file;this.Mj=a.notify;if(this.Pf){a=this.Pf;var b=ea(this.Pf);"json"!=b&&"hex"!=b&&(a=la()+"/api/v1/dump?file="+this.Pf+"&format=bytes&decimal=true");r(a,!0,null,this,si.prototype.Um)}}y(v,si);si.prototype.nc=function(a,b,c,d){this.qa=b;this.la=c;this.Qa=d;ti(this)};
si.prototype.Qb=function(){this.jh&&(this.Qa&&this.Qa.gp(this.nj,this.$g,this.jh),delete this.jh);return!0};si.prototype.Pb=function(){return!0};
si.prototype.Qb=function(){this.jh&&(this.Qa&&this.Qa.dp(this.nj,this.$g,this.jh),delete this.jh);return!0};si.prototype.Pb=function(){return!0};
si.prototype.Um=function(a,b,c){if(c)this.ya("Unable to load system ROM (error "+c+")");else{if("["==b.charAt(0)||"{"==b.charAt(0))try{var d=eval("("+b+")"),e=d.bytes,f=d.data;if(e)this.rb=e;else if(f)for(this.rb=Array(4*f.length),c=b=0;b<f.length;b++)this.rb[c++]=f[b]&255,this.rb[c++]=f[b]>>8&255,this.rb[c++]=f[b]>>16&255,this.rb[c++]=f[b]>>24&255;else this.rb=d;this.jh=d.symbols;if(!this.rb.length){s("Empty ROM: "+a);return}if(1==this.rb.length){s(this.rb[0]);return}}catch(h){this.ya("ROM data error: "+
h.message);return}else for(a=b.replace(/\n/gm," ").replace(/ +$/,"").split(" "),this.rb=Array(a.length),d=0;d<a.length;d++)this.rb[d]=parseInt(a[d],16);ti(this)}};function ti(a){if(!La(a))if(!a.Pf)a.Ma();else if(a.rb&&a.qa){if(a.rb.length!=a.$g)Ma(a,"ROM size (0x"+p(a.rb.length)+") does not match specified size (0x"+p(a.$g)+")");else if(ui(a,a.nj)&&ui(a,a.ql)){if(a.Mj){var b=Ha(a.Mj,a.id);b&&("ega"==b.Da&&vi(b,a.rb,[8752,12640],8),b.Ma())}delete a.rb}a.Ma()}}
function ui(a,b){if(null==b)return!0;if(Sa(a.qa,b,a.$g,!0)){for(var c=0;c<a.rb.length;c++)Za(a.qa,b+c,a.rb[c]);return!0}return!1}u(function(){for(var a=A(window.document,"pcjs","rom"),b=0;b<a.length;b++){var c=a[b],d=z(c),d=new si(d);Ja(d,c)}});function wi(a){v.call(this,"RAM",a,wi);this.cg=a.addr;this.nd=a.size;this.Fl=a.test;this.Cl=!!this.nd;this.qg=!1}y(v,wi);wi.prototype.nc=function(a,b,c){this.qa=b;this.la=c;this.ja=C(a,"ChipSet");this.Ma()};wi.prototype.Qb=function(a,b){b||this.reset();return!0};
wi.prototype.Pb=function(){return!0};wi.prototype.reset=function(){if(!this.cg&&!this.Cl&&this.ja){var a=1024*Ah(this.ja);this.nd&&a!=this.nd&&(Wa(this.qa,this.cg,this.nd),this.qg=!1);this.nd=a}!this.qg&&this.nd&&Sa(this.qa,this.cg,this.nd)&&(this.qg=!0,this.status(Math.floor(this.nd/1024)+"Kb"));if(this.qg){if(this.Fl||$a(this.qa,1138,4660),this.ja&&(a=this.ja,a.oa)){var b=1048576>this.cg?21:23,c=a.oa[b]|a.oa[b+1]<<8,c=c+(this.nd>>10);a.oa[b]=c&255;a.oa[b+1]=c>>8;Eh(a)}}else s("No RAM allocated")};
u(function(){for(var a=A(window.document,"pcjs","ram"),b=0;b<a.length;b++){var c=a[b],d=z(c),d=new wi(d);Ja(d,c)}});function xi(a){v.call(this,"Keyboard",a,xi);this.ih={};this.Nm=250;this.Om=100;this.Ma()}y(v,xi);
var S={mo:1,no: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,jo:65,ko:66,gj:67,ml:68,E:69,qo:70,wo:71,hj:72,yo:73,zo:74,Ao:75,Bo:76,Co:77,eh:78,Eo:79,Fo:80,Ho:81,jj:82,Lo:83,Vo:84,Zo:85,$o:86,ap:87,cp:88,dp:89,ep:90,"[":91,"\\":92,"]":93,"^":94,_:95,"`":96,fp:97,hp:98,jp:99,kp:100,lp:101,mp:102,np:103,op:104,pp:105,qp:106,rp:107,sp:108,
tp:109,wp:110,yp:111,zp:112,Ap:113,Bp:114,Cp:115,Dp:116,Ep:117,Gp:118,Hp:119,x:120,y:121,z:122,"{":123,"|":124,"}":125,"~":126},yi={16:2,17:8,18:32,20:256},zi={tab:1009,esc:1027,"right-shift":3016,shift:1016,ctrl:1017,alt:1018,"caps-lock":1020,f1:1112,f2:1113,f3:1114,f4:1115,f5:1116,f6:1117,f7:1118,f8:1119,f9:1120,f10:1121,left:1037,up:1038,right:1039,down:1040,"ctrl-c":4003,"ctrl-break":4063,"ctrl-alt-del":4081},Ai={esc:1,1:2,2:3,3:4,4:5,5:6,6:7,7:8,8:9,9:10,0:11,"-":12,"=":13,bs:14,tab:15,q:16,
var S={mo:1,no: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,jo:65,ko:66,gj:67,ml:68,E:69,qo:70,to:71,hj:72,vo:73,wo:74,xo:75,yo:76,zo:77,eh:78,Bo:79,Co:80,Eo:81,jj:82,Io:83,So:84,Wo:85,Xo:86,Yo:87,$o:88,ap:89,bp:90,"[":91,"\\":92,"]":93,"^":94,_:95,"`":96,cp:97,ep:98,gp:99,hp:100,ip:101,jp:102,kp:103,lp:104,mp:105,np:106,op:107,pp:108,
qp:109,sp:110,vp:111,wp:112,xp:113,yp:114,zp:115,Ap:116,Bp:117,Dp:118,Ep:119,x:120,y:121,z:122,"{":123,"|":124,"}":125,"~":126},yi={16:2,17:8,18:32,20:256},zi={tab:1009,esc:1027,"right-shift":3016,shift:1016,ctrl:1017,alt:1018,"caps-lock":1020,f1:1112,f2:1113,f3:1114,f4:1115,f5:1116,f6:1117,f7:1118,f8:1119,f9:1120,f10:1121,left:1037,up:1038,right:1039,down:1040,"ctrl-c":4003,"ctrl-break":4063,"ctrl-alt-del":4081},Ai={esc:1,1:2,2:3,3:4,4:5,5:6,6:7,7:8,8:9,9:10,0:11,"-":12,"=":13,bs:14,tab:15,q:16,
w:17,e:18,r:19,t:20,y:21,u:22,i:23,o:24,p:25,"[":26,"]":27,enter:28,ctrl:29,a:30,s:31,d:32,f:33,g:34,h:35,j:36,k:37,l:38,";":39,quote:40,"`":41,shift:42,"\\":43,z:44,x:45,c:46,v:47,b:48,n:49,m:50,",":51,".":52,"/":53,"right-shift":54,prtsc:55,alt:56,space:57,"caps-lock":58,f1:59,f2:60,f3:61,f4:62,f5:63,f6:64,f7:65,f8:66,f9:67,f10:68,"num-lock":69,"scroll-lock":70,"num-home":71,"num-up":72,"num-pgup":73,"num-sub":74,"num-left":75,"num-center":76,"num-right":77,"num-add":78,"num-end":79,"num-down":80,
"num-pgdn":81,"num-ins":82,"num-del":83,sysreq:84,pause:84,f11:87,f12:88,"num-enter":7392,"right-ctrl":7648,"num-div":13792,"num-mul":14304,"right-alt":14560,home:18400,up:18656,pgup:18912,left:19424,right:19936,end:20448,down:20704,pgdn:20960,ins:21216,del:21472,win:23520,"right-win":23776,menu:24032},T={1027:2};T[S["1"]]=2;T[S["!"]]=10754;T[S["2"]]=3;T[S["@"]]=10755;T[S["3"]]=4;T[S["#"]]=10756;T[S["4"]]=5;T[S.$]=10757;T[S["5"]]=6;T[S["%"]]=10758;T[S["6"]]=7;T[S["^"]]=10759;T[S["7"]]=8;
T[S["&"]]=10760;T[S["8"]]=9;T[S["*"]]=10761;T[S["9"]]=10;T[S["("]]=10762;T[S["0"]]=11;T[S[")"]]=10763;T[S["-"]]=12;T[S._]=10764;T[S["="]]=13;T[S["+"]]=10765;T[1008]=14;T[1009]=15;T[113]=16;T[81]=10768;T[119]=17;T[87]=10769;T[101]=18;T[69]=10770;T[114]=19;T[82]=10771;T[116]=20;T[84]=10772;T[121]=21;T[89]=10773;T[117]=22;T[85]=10774;T[105]=23;T[73]=10775;T[111]=24;T[79]=10776;T[112]=25;T[80]=10777;T[S["["]]=26;T[S["{"]]=10778;T[S["]"]]=27;T[S["}"]]=10779;T[13]=28;T[1017]=29;T[97]=30;T[65]=10782;
@ -566,10 +566,10 @@ k.save=function(){var a=0,b=[];b[a++]=[this.oe,this.De,this.fb,this.gb,this.lb,t
k.restore=function(a){var b=0,c="unsupported restore format";if(a&&0<a.length){var d=0,e=a[d++];e&&2<=e.length&&(!this.Ua.length&&6<=e.length?this.create("local",e[2],e[3],e[4],e[5]):null!=e[1]&&null!=this.De&&e[1]!=this.De&&(c="original checksum ("+e[1]+") differs from current checksum ("+this.De+")",b=-1));for(this.Ua.length||(b=-1);d<a.length&&0<=b;){var f=0,h=a[d++],g=h[f++],m=h[f++],n=h[f++];if(g>=this.Ua.length||m>=this.Ua[g].length||n>=this.Ua[g][m].length){c="sector "+g+":"+m+":"+n+" out of range ("+
b+" changes applied)";b=-1;break}if(this.He){c="unable to modify write-protected disk";b=-1;break}e=h[f++];f=h[f++];h=e+f.length;if(g=this.Ua[g][m][n]){for(m=g.data.length;m<e;)g.data[m++]=g.pattern;m=0;g.Jc=e;for(g.lc=f.length;e<h;)g.data[e++]=f[m++];b++}}}0>b&&this.ea.ya("unable to restore disk '"+this.Uc+": "+c);return b};
function Nj(a){v.call(this,"FDC",a,Nj);this.dmaRead=this.xh;this.dmaWrite=this.yh;this.dmaFormat=this.ul;this.ce=null;if(a.autoMount&&(this.ce=a.autoMount,"string"==typeof this.ce))try{this.ce=eval("("+a.autoMount+")")}catch(b){s("FDC auto-mount error: "+b.message+" ("+a.autoMount+")"),this.ce=null}this.ic=[]}y(v,Nj);l={};aa={};
var Oj={3:{ad:3,vd:0,name:aa.Qo},4:{ad:2,vd:1,name:aa.Oo},5:{ad:9,vd:7,name:aa.bp},6:{ad:9,vd:7,name:aa.Io},7:{ad:2,vd:0,name:aa.Ko},8:{ad:1,vd:2,name:aa.Po},10:{ad:2,vd:7,name:aa.Jo},13:{ad:6,vd:7,name:aa.ro},15:{ad:3,vd:0,name:aa.No}};k=Nj.prototype;
var Oj={3:{ad:3,vd:0,name:aa.No},4:{ad:2,vd:1,name:aa.Lo},5:{ad:9,vd:7,name:aa.Zo},6:{ad:9,vd:7,name:aa.Fo},7:{ad:2,vd:0,name:aa.Ho},8:{ad:1,vd:2,name:aa.Mo},10:{ad:2,vd:7,name:aa.Go},13:{ad:6,vd:7,name:aa.ro},15:{ad:3,vd:0,name:aa.Ko}};k=Nj.prototype;
k.zb=function(a,b,c,d){var e=this;switch(c){case "listDisks":return this.sa[c]=d,Pj(this,"Local Disk","?"),Pj(this,"Remote Disk","??"),d.onchange=function(){var a=e.sa.descDisk,b=d.options[d.selectedIndex];if(a&&b){var c={};if(b=b.getAttribute("data-value"))try{c=eval("({"+b+"})")}catch(m){s("FDC option error: "+m.message)}b=c.desc;void 0===b&&(b="");c=c.href;void 0!==c&&(b='<a href="'+c+'" target="_blank">'+b+"</a>");a.innerHTML=b}},!0;case "descDisk":case "listDrives":return this.sa[c]=d,d.onchange=
function(){var a;a=d.value;var b=10,c;if(a){b||(b=16);if("$"==a.charAt(0))b=16,a=a.substr(1);else if("0x"==a.substr(0,2))b=16,a=a.substr(2);else{var m=a.charAt(a.length-1).toLowerCase();"h"==m?(b=16,m=null):"."==m&&(b=10,m=null);null===m&&(a=a.substr(0,a.length-1))}var n;ca(a,b)&&!isNaN(n=parseInt(a,b))&&(c=n)}a=c;null!=a&&Qj(e,a)},!0;case "loadDrive":return this.sa[c]=d,d.onclick=function(){var a=e.sa.listDisks;a&&Rj(e,a.options[a.selectedIndex].text,a.value)},!0;case "mountDrive":return window.vo&&
window.to&&window.uo?(this.sa[c]=d,d.addEventListener("change",function(){var a=d.children[0];a.children[1].disabled=0==a.children[0].files.length}),d.onsubmit=function(a){if(a=a.currentTarget[1].files[0]){var b=a.name;Rj(e,da(b,!0),b,a)}return!1}):d.parentNode.removeChild(d),!0}return!1};k.nc=function(a,b,c,d){this.qa=b;this.la=c;this.Qa=d;this.La=a;this.ja=C(a,"ChipSet");this.gd();bb(b,this,Sj);db(b,this,Tj);this.bf()||this.Ma()};
function(){var a;a=d.value;var b=10,c;if(a){b||(b=16);if("$"==a.charAt(0))b=16,a=a.substr(1);else if("0x"==a.substr(0,2))b=16,a=a.substr(2);else{var m=a.charAt(a.length-1).toLowerCase();"h"==m?(b=16,m=null):"."==m&&(b=10,m=null);null===m&&(a=a.substr(0,a.length-1))}var n;ca(a,b)&&!isNaN(n=parseInt(a,b))&&(c=n)}a=c;null!=a&&Qj(e,a)},!0;case "loadDrive":return this.sa[c]=d,d.onclick=function(){var a=e.sa.listDisks;a&&Rj(e,a.options[a.selectedIndex].text,a.value)},!0;case "mountDrive":return window&&
"FileReader"in window?(this.sa[c]=d,d.addEventListener("change",function(){var a=d.children[0];a.children[1].disabled=0==a.children[0].files.length}),d.onsubmit=function(a){if(a=a.currentTarget[1].files[0]){var b=a.name;Rj(e,da(b,!0),b,a)}return!1}):d.parentNode.removeChild(d),!0}return!1};k.nc=function(a,b,c,d){this.qa=b;this.la=c;this.Qa=d;this.La=a;this.ja=C(a,"ChipSet");this.gd();bb(b,this,Sj);db(b,this,Tj);this.bf()||this.Ma()};
k.Qb=function(a,b){if(!b){if(!a||!this.restore){if(this.reset(),this.La.Hh){this.ic=[];for(var c=0;c<this.xa.length;c++)Uj(this,c,!0);this.bf(!0)}}else if(!this.restore(a))return!1;if(c=this.sa.listDrives){for(;c.firstChild;)c.removeChild(c.firstChild);c.innerHTML="";for(var d=0;d<this.bi;d++){var e=window.document.createElement("option");e.value=d;e.innerHTML=String.fromCharCode(65+d)+":";c.appendChild(e)}0<this.bi&&(c.value="0",Qj(this,0))}}return!0};
k.Pb=function(a){return a&&this.save?this.save():!0};k.reset=function(){this.gd()};k.save=function(){var a=new G(this);a.set(0,this.Yi());return a.data()};k.restore=function(a){return this.gd(a[0])};
k.gd=function(a){var b=0,c,d=!0;void 0===a&&(a=[0,0,128,Array(9),0,0,0,[]]);this.Wa=a[b++];b++;this.wa=a[b++];this.Sb=a[b++];this.pb=a[b++];this.$a=a[b++];this.Re=a[b++];var e=a[b++];c=a[b++];null!=c&&(this.ic=c);void 0===this.xa&&(this.bi=4,this.ja&&(this.bi=Hh(this.ja)),this.xa=Array(4));for(c=0;c<this.xa.length;c++){var f=this.xa[c];if(void 0===f){var f=this.xa[c]={},h;if(this.ja)a:{h=this.ja;if(c<Hh(h)){if(!h.pd){h=360;break a}if(c<h.pd.length){h=h.pd[c];break a}}h=0}else h=0;switch(h){case 160:case 180:f.gb=
@ -583,10 +583,10 @@ k.zj=function(a,b,c,d){var e;a.uc=!1;b&&(e=b.info(),b&&e[0]>a.fb||e[1]>a.gb)&&(t
function Pj(a,b,c){if(a=a.sa.listDisks){for(var d=0;d<a.options.length;d++)if(a.options[d].value==c)return;d=window.document.createElement("option");d.value=c;d.innerHTML=b;a.appendChild(d)}}function Qj(a,b){if(0<=b&&b<a.xa.length){var c=a.xa[b],d=a.sa.listDisks,e=a.sa.listDrives;if(d&&e&&(e=parseInt(e.value,10),c=c.Fe?"?":c.pe,!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 Uj(a,b,c,d){var e=a.xa[b];e.ta&&(Vj(a,e.pe,e.ta),e.dl="",e.pe="",e.ta=null,e.Fe=!1,a.Ld|=128,d||a.ya("Drive "+String.fromCharCode(65+b)+" unloaded",c),c||d||Qj(a,b))}function Xj(a,b,c,d){var e;for(e=0;e<a.ic.length;e++)if(a.ic[e][1]==c){d.restore(a.ic[e][2]);return}a.ic[e]=[b,c,[]]}function Vj(a,b,c){var d;for(d=0;d<a.ic.length;d++)if(a.ic[d][1]==b){a.ic[d][2]=c.save();break}}k.tn=function(a,b){b&4?this.Re&4||this.Re&8&&this.ja&&di(this.ja,6):this.gd();this.Re=b};k.gm=function(){return this.wa};
k.em=function(){var a=0;this.pb<this.$a&&(a=this.Sb[this.pb]);this.Re&8&&this.ja&&ei(this.ja,6);++this.pb>=this.$a&&(this.wa&=-81,this.pb=this.$a=0);return a};
k.sn=function(a,b){this.$a<this.Sb.length&&(this.Sb[this.$a++]=b);var c=this.Sb[0]&31;if(void 0!==Oj[c]&&this.$a>=Oj[c].ad){var d=!1;this.pb=0;var c=this.Ia(),e,f,h,g,m,n=c&31;switch(n){case 3:this.Ia(l.Ro);this.Ia(l.xo);this.Fb();break;case 4:f=this.Ia(l.Ve);this.Wa=f&3;e=this.xa[this.Wa];this.Fb();this.Rb((e.Sa&4278190080)>>>24,l.Uo);break;case 5:case 6:f=this.Ia(l.Ve);d=f>>2&1;this.Wa=f&3;e=this.xa[this.Wa];e.Ja=d;f=e.ib=this.Ia(l.gj);h=this.Ia(l.hj);g=e.Va=this.Ia(l.jj);m=this.Ia(l.eh);e.eb=128<<
m;e.td=this.Ia(l.po);this.Ia(l.nl);this.Ia(l.oo);6==n?this.zh(e):this.Ah(e);Yj(this,e,c,d,f,h,g,m);d=!0;break;case 7:f=this.Ia(l.Ve);this.Wa=f&3;e=this.xa[this.Wa];e.ib=e.rd=0;e.Sa=268435488;this.Fb();d=!0;break;case 8:e=this.xa[this.Wa];e.Ja=0;this.Fb();this.Rb(e.Wa|e.Ja<<2|e.Sa&255,l.pl);this.Rb(e.ib,l.Go);this.Wa=this.Wa+1&3;break;case 10:f=this.Ia(l.Ve);d=f>>2&1;this.Wa=f&3;e=this.xa[this.Wa];f=e.ib;h=e.Ja=d;g=e.Va=1;m=0;e.Sa=0;e.ta&&(e.Ka=e.ta.seek(e.ib,e.Ja,e.Va))?m=e.Ka.length:e.Sa=1088;Yj(this,
e,c,d,f,h,g,m);d=!0;break;case 13:f=this.Ia(l.Ve);d=f>>2&1;this.Wa=f&3;e=this.xa[this.Wa];f=e.ib;h=e.Ja=d;g=1;m=this.Ia(l.eh);e.eb=128<<m;e.td=this.Ia(l.Mo);this.Ia(l.nl);e.pj=this.Ia(l.ml);this.yj(e);Yj(this,e,c,d,f,h,g,m);d=!0;break;case 15:f=this.Ia(l.Ve),this.Wa=f&3,e=this.xa[this.Wa],e.Ja=f>>2&1,f=this.Ia(l.Do),e.ib+=f-e.rd,0>e.ib&&(e.ib=0),e.ib>=e.fb&&(e.ib=e.fb-1),e.rd=f,e.Sa=32,0==e.ib&&(e.Sa|=268435456),this.Fb(),d=!0}0<this.$a&&(this.wa|=80);this.Re&8&&(!e||e.Sa&8||!d||this.ja&&di(this.ja,
6))}};k.fm=function(){var a=this.Ld;this.Ld&=-129;return a};k.rn=function(a,b){this.Zk=b};function Yj(a,b,c,d,e,f,h,g){a.Fb();a.Rb(b.Wa|b.Ja<<2|b.Sa&255,l.pl);a.Rb((b.Sa&65280)>>>8,l.So);a.Rb((b.Sa&16711680)>>>16,l.To);var m=0;if(e!=b.ib||f!=b.Ja)m=h=1;c&128&&(f^=m,d||(m=0));a.Rb(e+m,l.gj);a.Rb(f,l.hj);a.Rb(h,l.jj);a.Rb(g,l.eh)}k.Ia=function(){var a=this.Sb[this.pb];this.pb++;return a};k.Fb=function(){this.pb=this.$a=0};k.Rb=function(a){this.Sb[this.$a++]=a};
k.sn=function(a,b){this.$a<this.Sb.length&&(this.Sb[this.$a++]=b);var c=this.Sb[0]&31;if(void 0!==Oj[c]&&this.$a>=Oj[c].ad){var d=!1;this.pb=0;var c=this.Ia(),e,f,h,g,m,n=c&31;switch(n){case 3:this.Ia(l.Oo);this.Ia(l.uo);this.Fb();break;case 4:f=this.Ia(l.Ve);this.Wa=f&3;e=this.xa[this.Wa];this.Fb();this.Rb((e.Sa&4278190080)>>>24,l.Ro);break;case 5:case 6:f=this.Ia(l.Ve);d=f>>2&1;this.Wa=f&3;e=this.xa[this.Wa];e.Ja=d;f=e.ib=this.Ia(l.gj);h=this.Ia(l.hj);g=e.Va=this.Ia(l.jj);m=this.Ia(l.eh);e.eb=128<<
m;e.td=this.Ia(l.po);this.Ia(l.nl);this.Ia(l.oo);6==n?this.zh(e):this.Ah(e);Yj(this,e,c,d,f,h,g,m);d=!0;break;case 7:f=this.Ia(l.Ve);this.Wa=f&3;e=this.xa[this.Wa];e.ib=e.rd=0;e.Sa=268435488;this.Fb();d=!0;break;case 8:e=this.xa[this.Wa];e.Ja=0;this.Fb();this.Rb(e.Wa|e.Ja<<2|e.Sa&255,l.pl);this.Rb(e.ib,l.Do);this.Wa=this.Wa+1&3;break;case 10:f=this.Ia(l.Ve);d=f>>2&1;this.Wa=f&3;e=this.xa[this.Wa];f=e.ib;h=e.Ja=d;g=e.Va=1;m=0;e.Sa=0;e.ta&&(e.Ka=e.ta.seek(e.ib,e.Ja,e.Va))?m=e.Ka.length:e.Sa=1088;Yj(this,
e,c,d,f,h,g,m);d=!0;break;case 13:f=this.Ia(l.Ve);d=f>>2&1;this.Wa=f&3;e=this.xa[this.Wa];f=e.ib;h=e.Ja=d;g=1;m=this.Ia(l.eh);e.eb=128<<m;e.td=this.Ia(l.Jo);this.Ia(l.nl);e.pj=this.Ia(l.ml);this.yj(e);Yj(this,e,c,d,f,h,g,m);d=!0;break;case 15:f=this.Ia(l.Ve),this.Wa=f&3,e=this.xa[this.Wa],e.Ja=f>>2&1,f=this.Ia(l.Ao),e.ib+=f-e.rd,0>e.ib&&(e.ib=0),e.ib>=e.fb&&(e.ib=e.fb-1),e.rd=f,e.Sa=32,0==e.ib&&(e.Sa|=268435456),this.Fb(),d=!0}0<this.$a&&(this.wa|=80);this.Re&8&&(!e||e.Sa&8||!d||this.ja&&di(this.ja,
6))}};k.fm=function(){var a=this.Ld;this.Ld&=-129;return a};k.rn=function(a,b){this.Zk=b};function Yj(a,b,c,d,e,f,h,g){a.Fb();a.Rb(b.Wa|b.Ja<<2|b.Sa&255,l.pl);a.Rb((b.Sa&65280)>>>8,l.Po);a.Rb((b.Sa&16711680)>>>16,l.Qo);var m=0;if(e!=b.ib||f!=b.Ja)m=h=1;c&128&&(f^=m,d||(m=0));a.Rb(e+m,l.gj);a.Rb(f,l.hj);a.Rb(h,l.jj);a.Rb(g,l.eh)}k.Ia=function(){var a=this.Sb[this.pb];this.pb++;return a};k.Fb=function(){this.pb=this.$a=0};k.Rb=function(a){this.Sb[this.$a++]=a};
k.xh=function(a,b,c){void 0===b||0>b?this.yc(a,c):c(-1,!1)};k.yh=function(a,b){return void 0!==b&&0<=b?this.Bc(a,b):-1};k.ul=function(a,b){return void 0!==b&&0<=b?this.dj(a,b):-1};k.zh=function(a){a.Sa=72;a.ta&&(a.Ka=null,a.Sa=0,this.ja&&(Uh(this.ja,2,this,"dmaRead",a),Qh(this.ja,2)))};k.Ah=function(a){a.Sa=72;a.ta&&(a.ta.He?a.Sa=576:(a.Ka=null,a.Sa=0,this.ja&&(Uh(this.ja,2,this,"dmaWrite",a),Qh(this.ja,2))))};
k.yj=function(a){a.Sa=72;a.ta&&(a.Ka=null,a.Sa=0,this.ja&&(a.be=0,a.jc=Array(4),a.cf=!0,a.hf=0,Uh(this.ja,2,this,"dmaFormat",a),Qh(this.ja,2),a.cf=!1))};k.yc=function(a,b){var c=-1;if(!a.Sa&&a.ta){do{if(a.Ka&&0<=(c=Mj(a.Ka,a.Ya++)))break;a.Ka=a.ta.seek(a.ib,a.Ja,a.Va);if(!a.Ka){a.Sa=1088;break}a.Ya=0;this.$e(a)}while(1)}b(c,!1)};
k.Bc=function(a,b){if(a.Sa||!a.ta)return-1;do{if(a.Ka&&a.ta.write(a.Ka,a.Ya++,b))break;a.Ka=a.ta.seek(a.ib,a.Ja,a.Va);if(!a.Ka){a.Sa=8256;b=-1;break}a.Ya=0;this.$e(a)}while(1);return b};k.$e=function(a){a.Va++;a.Va>=a.Cf+1&&(a.Va=1,a.Ja++,a.Ja>=a.Bf&&(a.Ja=0,a.ib++))};k.dj=function(a,b){if(a.Sa)return-1;a.jc[a.be++]=b;if(a.be==a.jc.length){a.ib=a.jc[0];a.Ja=a.jc[1];a.Va=a.jc[2];a.eb=128<<a.jc[3];for(var c=a.be=0;c<a.eb;c++)if(0>this.Bc(a,a.pj))return-1;a.hf++}a.hf>=a.td&&(b=-1);return b};
@ -608,7 +608,7 @@ k.en=function(a,b){this.Oa&&this.Oa.eb>=this.Oa.Xa&&(0>this.Bc(this.Oa,b)?(this.
k.cn=function(a,b){this.Tg=b};k.Tl=function(){return this.Qe};k.fn=function(a,b){this.Qe=b;this.wa=this.xa[this.Qe&16?1:0]?this.wa|64:this.wa&-65};k.Xl=function(){return this.wa};k.bn=function(a,b){this.Wi=b;this.ja&&ei(this.ja,14);hk(this)};k.gn=function(a,b){this.Vg&4&&!(b&4)&&(this.md=1);this.Vg=b};
function hk(a){var b=!1,c=a.Wi,d=a.Qe&16?1:0,e=a.Qe&15,f=a.Ug|(a.Tg&3)<<8,h=a.Wg,g=a.Md||256;a.Oa=null;a.md=0;a.wa=80;(d=a.xa[d])?(d.Od=f,d.Ja=e,d.Va=h,d.eb=g*d.Xa,c=144<=c?c:c&240,d.Ka=null,d.errorCode=0,a.Oa=d):c=-1;switch(c&240){case 32:a.yc(d,function(b){0<=b&&a.ja?(gk(a),a.wa=136):(a.wa=1,a.md=16)},!1);break;case 48:a.ja?(gk(a),a.wa=136):(a.wa=1,a.md=4);break;case 16:b=!0;break;case 64:b=!0;break;case 144:a.md=1;b=!0;break;case 145:d.gb=e+1,d.lb=g,b=!0}b&&gk(a)}
function gk(a){!a.ja||a.Vg&2||di(a.ja,14)}
function fk(a){a.pb=0;var b=a.Ia(),c=a.Ia(),d=c&32,e=d>>5,f=c&31,h=a.Ia(),g=a.Ia(),m=h<<2&768|g,n=h&63,q=a.Ia(),w=a.Ia(),t=a.xa[e];t&&(t.Od=m,t.Ja=f,t.Va=n,t.eb=q*t.Xa);switch(b){case 3:a.Fb(t?t.errorCode:4);a.Rb(c);a.Rb(h);a.Rb(g);a.Rb(0|d);b=-1;break;case 12:for(c=0;0<=(b=a.Ia());)t&&c<t.xe.length&&(t.xe[c++]=b);t&&ek(a,t);b=0;t||a.Je!=e||(a.Je=-1,b=2);a.Fb(b|d);b=-1;break;case 224:case 228:a.Fb(0|d),b=-1}if(0<=b)switch(void 0===t?b=-1:(t.errorCode=0,t.hl=0),b){case 0:a.Fb(0|d);break;case 1:t.ip=
function fk(a){a.pb=0;var b=a.Ia(),c=a.Ia(),d=c&32,e=d>>5,f=c&31,h=a.Ia(),g=a.Ia(),m=h<<2&768|g,n=h&63,q=a.Ia(),w=a.Ia(),t=a.xa[e];t&&(t.Od=m,t.Ja=f,t.Va=n,t.eb=q*t.Xa);switch(b){case 3:a.Fb(t?t.errorCode:4);a.Rb(c);a.Rb(h);a.Rb(g);a.Rb(0|d);b=-1;break;case 12:for(c=0;0<=(b=a.Ia());)t&&c<t.xe.length&&(t.xe[c++]=b);t&&ek(a,t);b=0;t||a.Je!=e||(a.Je=-1,b=2);a.Fb(b|d);b=-1;break;case 224:case 228:a.Fb(0|d),b=-1}if(0<=b)switch(void 0===t?b=-1:(t.errorCode=0,t.hl=0),b){case 0:a.Fb(0|d);break;case 1:t.fp=
w;a.Fb(0|d);break;case 5:a.Fb(0|d);break;case 8:a.zh(t,function(b){a.Fb(b|d)});break;case 10:a.Ah(t,function(b){a.Fb(b|d)});break;case 15:ik(a,t,function(b){a.Fb(b|d)});break;default:a.Fb(2|d)}}k.Ia=function(){var a=-1;this.pb<this.$a&&(a=this.Sb[this.pb++]);return a};k.Fb=function(a){this.pb=this.$a=0;void 0!==a&&this.Rb(a);this.ja&&di(this.ja,5);this.wa|=32};k.Rb=function(a){this.Sb[this.$a++]=a};k.xh=function(a,b,c){void 0===b||0>b?this.yc(a,c):c(-1,!1)};
k.yh=function(a,b){return void 0!==b&&0<=b?this.Bc(a,b):-1};k.vl=function(a,b){var c;void 0!==b&&0<=b?(c=b,a.Ya<a.ye.length?a.ye[a.Ya++]=c:(a.errorCode=20,c=-1)):c=-1;return c};k.wl=function(a,b){return void 0!==b&&0<=b?this.dj(a,b):-1};k.zh=function(a,b){a.errorCode=4;if(a.ta&&(a.Ka=null,this.ja)){a.errorCode=0;Uh(this.ja,3,this,"dmaRead",a);Qh(this.ja,3,function(c){c||0!=a.errorCode||(a.errorCode=4);b(a.errorCode?2:0)});return}b(a.errorCode?2:0)};
k.Ah=function(a,b){a.errorCode=4;if(a.ta&&(a.Ka=null,this.ja)){a.errorCode=0;Uh(this.ja,3,this,"dmaWrite",a);Qh(this.ja,3,function(c){c||(0==a.errorCode&&(a.errorCode=4),20==a.errorCode&&(a.errorCode=0));b(a.errorCode?2:0)});return}b(a.errorCode?2:0)};function ik(a,b,c){b.errorCode=4;b.ye&&b.ye.length==b.eb||(b.ye=Array(b.eb));b.Ya=0;a.ja?(b.errorCode=0,Uh(a.ja,3,a,"dmaWriteBuffer",b),Qh(a.ja,3,function(a){a||0!=b.errorCode||(b.errorCode=4);c(b.errorCode?2:0)})):c(b.errorCode?2:0)}