nes-emu
Version:
A NES emulator
24 lines (22 loc) • 741 B
JavaScript
;
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.default = void 0;
var _registers = require("../../registers");
var _constants = require("../constants");
/** Controls the length counter value of the Noise channel. */
class NoiseLCL extends _registers.WriteOnlyInMemoryRegister {
constructor() {
super();
this.addReadOnlyField("lengthCounterLoad", 3, 5);
}
/** Updates the length counter, and volume envelope's start flag. */
writeAt(__, byte) {
this.setValue(byte);
const channel = this.context.apu.channels.noise;
channel.lengthCounter.counter = _constants.lengthTable[this.lengthCounterLoad];
channel.volumeEnvelope.startFlag = true;
}
}
exports.default = NoiseLCL;