@thenick775/mgba-wasm v2.1.0
mGBA-wasm
This package is a bundled version of my mGBA fork compiled to webassembly.
This core currently powers gbajs3!
To instantiate the emulator using react:
import mGBA, { type mGBAEmulator } from '@thenick775/mgba-wasm';
import { useEffect, useState } from 'react';
export const useEmulator = (canvas: HTMLCanvasElement | null) => {
const [emulator, setEmulator] = useState<mGBAEmulator | null>(null);
useEffect(() => {
const initialize = async () => {
if (canvas) {
const Module = await mGBA({ canvas });
const mGBAVersion =
Module.version.projectName + ' ' + Module.version.projectVersion;
console.log(mGBAVersion);
await Module.FSInit();
setEmulator(Module);
}
};
initialize();
}, [canvas]);
return emulator;
};
This core uses threads, you must serve these files in a way that supports cross origin isolation:
Cross-Origin-Opener-Policy same-origin
Cross-Origin-Embedder-Policy require-corp
See the feature/wasm README for further details such as:
- available emulator interface methods
- building from source
- embedding and usage in vanilla javascript
4 months ago
4 months ago
4 months ago
4 months ago
4 months ago
4 months ago
4 months ago
4 months ago
4 months ago
5 months ago
4 months ago
5 months ago
4 months ago
5 months ago
5 months ago
5 months ago
6 months ago
7 months ago
7 months ago
9 months ago
9 months ago
9 months ago
10 months ago
10 months ago
10 months ago
10 months ago
10 months ago
10 months ago
10 months ago
10 months ago
10 months ago
10 months ago
10 months ago
10 months ago
10 months ago
10 months ago
10 months ago