sync sound registers to sound thread

This commit is contained in:
2022-03-07 09:35:11 +01:00
parent 2033f9a172
commit 780caf965a
4 changed files with 61 additions and 5 deletions

View File

@@ -1,9 +1,14 @@
let U8 = (...a) => new Uint8Array(...a);
class APU extends AudioWorkletProcessor {
constructor() {
super();
this.sampleIndex = 0;
this.port.onmessage = (ev) => {
this.load(ev.data[0], ev.data[1]);
if(this.memory) {
U8(this.memory.buffer, 80, 32).set(U8(ev.data));
} else {
this.load(ev.data[0], ev.data[1]);
}
};
}
@@ -38,6 +43,8 @@ class APU extends AudioWorkletProcessor {
let instance = await instantiate(data);
this.memory = memory;
this.snd = instance.exports.snd;
this.port.postMessage(2);