Since writeBitsMemory() must preserve unwritten bits, it can't use bit-wise operators (unless of course no bits above bit 31 are set, but it's not clear checking for that would be a win)
This commit is contained in:
parent
b8b774696b
commit
2ed076503f
2 changed files with 2 additions and 2 deletions
|
|
@ -76,7 +76,7 @@ function nb(a){for(var b=0,c=[],d=0;d<a.h;d++){var e=a.a[d];if(e.oa||e.Xa){c[b++
|
|||
k.T=function(a,b){if(!b)if(!a)this.reset();else if(!this.restore(a))return!1;return!0};k.N=function(a){return a?this.save():!0};k.reset=function(){};k.save=function(){return(new O(this)).data()};k.restore=function(){return!0};I(function(){for(var a=D(document,C,"device"),b=0;b<a.length;b++){var c,d=a[b];c=A(d);switch(c.type){case "default":c=new tb(c),B(c,d)}}});
|
||||
function T(a,b,c,d,e){this.id=ub+=2;this.X=b;this.ra=c;this.size=d||0;this.type=e||vb;this.m=e==wb;this.o=this.Oa;this.Z=this.Ba=this.Aa;this.a=this.Pa;this.ca=this.sa=this.Da;this.i=this.j=0;mb(this);this.oa=this.Xa=!1;if(this.size){a=this.c=Array(this.size);for(b=0;b<a.length;b++)a[b]=0;xb(this,yb)}else xb(this)}k=T.prototype;k.save=function(){return this.c};k.restore=function(a){return a&&this.size==a.length?(this.c=a,this.oa=!0):!1};function xb(a,b){b||(b=zb);Ab(a,b,void 0);Bb(a,b,void 0)}
|
||||
function Ab(a,b,c){c&&a.i||(a.Z=b[2]||a.Aa);if(c||void 0===c)a.o=b[0]||a.Oa,a.Ba=b[2]||a.Aa}function Bb(a,b,c){c&&a.j||(a.ca=!a.m&&b[3]||a.Da);if(c||void 0===c)a.a=b[1]||a.Pa,a.sa=b[3]||a.Da}function mb(a,b){a.i=a.j=0;b&&((a.i=b.i)&&Ab(a,Cb,!1),(a.j=b.j)&&Bb(a,Cb,!1))}k.Oa=function(){return 0};k.Pa=function(){};k.Aa=function(a,b){return this.Z(a,b)};k.Da=function(a,b,c){this.ca(a,b,c)};k.jb=function(a,b,c){c=this.c[c];return c=32>=a+b?c>>a&(1<<b)-1:Math.trunc(c/Math.pow(2,a))%Math.pow(2,b)};
|
||||
k.mb=function(a){return this.c[a]};k.vb=function(a,b,c,d){var e=this.c[d];if(32>=a+b)var f=(1<<b)-1<<a,e=e&~f|c<<a&f;else f=Math.pow(2,a),c%=Math.pow(2,b),a=e%Math.pow(2,a+b),e=e-a+c*f+a%f;this.c[d]!=e&&(this.c[d]=e,this.oa=!0)};k.xb=function(a,b){this.c[b]=a;this.oa=!0};k.ib=function(a,b,c,d){return this.o(a,b,c,d)};k.kb=function(a,b){return this.Ba(a,b)};k.ub=function(a,b,c,d,e){this.m||this.a(a,b,c,d,e)};k.wb=function(a,b,c){this.m||this.sa(a,b,c)};
|
||||
k.mb=function(a){return this.c[a]};k.vb=function(a,b,c,d){var e=this.c[d],f=Math.pow(2,a);c%=Math.pow(2,b);a=e%Math.pow(2,a+b);e=e-a+c*f+a%f;this.c[d]!=e&&(this.c[d]=e,this.oa=!0)};k.xb=function(a,b){this.c[b]=a;this.oa=!0};k.ib=function(a,b,c,d){return this.o(a,b,c,d)};k.kb=function(a,b){return this.Ba(a,b)};k.ub=function(a,b,c,d,e){this.m||this.a(a,b,c,d,e)};k.wb=function(a,b,c){this.m||this.sa(a,b,c)};
|
||||
var vb=0,wb=2,rb=["NONE","RAM","ROM"],ub=0,zb=[],yb=[T.prototype.jb,T.prototype.vb,T.prototype.mb,T.prototype.xb],Cb=[T.prototype.ib,T.prototype.ub,T.prototype.kb,T.prototype.wb];
|
||||
function U(a,b){u.call(this,"CPU",a);b=+a.cycles||b;var c=+a.multiplier||1;this.ua=0;this.xa=b;this.L=c;this.va=Math.round(this.xa/1E4)/100;this.H=this.va*this.L;this.wa=this.fa=this.M=this.la=0;this.b.u=this.b.Ca=!1;this.b.G=a.autoStart;"string"==typeof this.b.G&&(this.b.G="true"==this.b.G);this.b.na=!1;this.ja=this.K=0;this.ka=+a.csStart;this.da=+a.csInterval;this.ea=+a.csStop;this.l=[];this.Ja=this.pb.bind(this);this.B=this.h=this.v=this.A=this.g=this.ba=this.s=this.O=this.ya=this.F=0;this.ga=
|
||||
null;E(this)}r(U,u);k=U.prototype;k.U=function(a,b,c,d){this.m=a;this.j=b;this.o=d;this.ga=a.g;for(a=0;a<Db.length;a++)(b=this.i[Db[a]])&&this.m.S(null,Db[a],b);E(this)};k.reset=function(){};k.save=function(){return null};k.restore=function(){return!1};
|
||||
|
|
|
|||
Loading…
Reference in a new issue