raw-wasm
jaktnesmonster
raw-wasm | jaktnesmonster | |
---|---|---|
3 | 1 | |
418 | 76 | |
- | - | |
5.6 | 3.1 | |
6 months ago | 11 months ago | |
WebAssembly | CMake | |
MIT License | MIT License |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
raw-wasm
- Web assembly book?
-
Smolnes: A NES Emulator In
Big fan of this author's work.
They have a Gameboy emulator written in C, which can be compiled to WASM and run in the browser.
https://github.com/binji/binjgb
I learned a lot from the code.
Also I love this project with a bunch of demos in hand-written WebAssembly Text (WAT) format, which is like low-level Lisp that works only with raw memory, numbers, and minimal syntax.
https://github.com/binji/raw-wasm
Then I discovered the same author is quite active in the WebAssembly ecosystem, including specs and tooling. Fascinating stuff!
https://github.com/WebAssembly/spec
https://github.com/WebAssembly/wabt
- Raw WebAssembly Demos
jaktnesmonster
-
Smolnes: A NES Emulator In
A great resource for learning how to write an NES emulator is the Jakt NES monster video series [1] which covers writing the entire emulator where JT shows how to map specs of each instruction to code. The source code uses Jakt's modern syntax making it very readable [2].
[1] https://www.youtube.com/playlist?list=PLP2yfE2-FXdQBRpnZbcOb...
[2] https://github.com/jntrnr/jaktnesmonster
What are some alternatives?
binaryen - Optimizer and compiler/toolchain library for WebAssembly
binjnes - NES emulator implemented in C, that also runs in the browser
xxhash-wasm - A WebAssembly implementation of xxHash
smolnes - NES emulator in <5000 bytes of C
wasm2lua - wasm2lua: converting WASM into Lua
pokegb - A gameboy emulator that only plays Pokemon Blue, in ~50 lines of c++.
cpl-webassembly - Small WebAssembly exercise session for the KU Leuven course Comparative Progamming Languages
binjgb - Gameboy emulator implemented in C, that also runs in the browser
w2c2 - Translates WebAssembly modules to portable C
spec - WebAssembly specification, reference interpreter, and test suite.