Explorar el Código

Fixed the .address property behaviour

master
Bryan Miller hace 5 años
padre
commit
4c9f047a7d
Se han modificado 1 ficheros con 9 adiciones y 11 borrados
  1. +9
    -11
      src/memory/mmc.js

+ 9
- 11
src/memory/mmc.js Ver fichero

@@ -62,17 +62,15 @@ class MMC extends IMem{

get address(){return this.__addr;}
set address(a){
if (a >= 0 && a < this.size){
this.__addr = a;
let offset = 0;
for (let s=0; s < this.__switches.length; s++){
if (a >= offset && a < offset + this.__switches[s].mem.size){
this.__sidx = s;
this.__switches[s].mem.address = a - offset;
break;
} else {
offset += this.__switches[s].mem.size;
}
this.__addr = Math.min(this.size - 1, Math.max(0, a));
let offset = 0;
for (let s=0; s < this.__switches.length; s++){
if (this.__addr >= offset && this.__addr < offset + this.__switches[s].mem.size){
this.__sidx = s;
this.__switches[s].mem.address = this.__addr - offset;
break;
} else {
offset += this.__switches[s].mem.size;
}
}
}

Cargando…
Cancelar
Guardar