| case NESBank.ACCESSMODE_1K: | case NESBank.ACCESSMODE_1K: | ||||
| return ooff * 64; | return ooff * 64; | ||||
| case NESBank.ACCESSMODE_2T: | case NESBank.ACCESSMODE_2T: | ||||
| return (Math.floor(ooff / 16)*32) + (ooff % 16); | |||||
| let _off = (ooff >= 128) ? ooff - 128 : ooff; | |||||
| return ((ooff >= 128) ? 256 : 0) + ((Math.floor(_off / 16)*32) + (_off % 16)); | |||||
| } | } | ||||
| break; | break; | ||||
| case NESBank.ACCESSMODE_2T: | case NESBank.ACCESSMODE_2T: | ||||
| case NESBank.ACCESSMODE_1K: | case NESBank.ACCESSMODE_1K: | ||||
| return ooff * 32; | return ooff * 32; | ||||
| case NESBank.ACCESSMODE_1T: | case NESBank.ACCESSMODE_1T: | ||||
| let _off = (ooff >= 128) ? ooff - 128 : ooff; | |||||
| return ((ooff >= 128) ? 256 : 0) + ((Math.floor(_off / 16)*32) + (_off % 16)); | |||||
| let _off = (ooff >= 256) ? ooff - 256 : ooff; | |||||
| return ((ooff >= 256) ? 128 : 0) + ((Math.floor(_off / 32)*16) + (_off % 16)); | |||||
| } | } | ||||
| break; | break; | ||||
| } | } |