binjgb
embedded-wasm-apps
binjgb | embedded-wasm-apps | |
---|---|---|
6 | 3 | |
553 | 151 | |
0.5% | 1.3% | |
3.4 | 7.7 | |
7 months ago | 5 months ago | |
C | C | |
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.
binjgb
-
McDonald's Just Dropped a Brand New Game Boy Game in 2023
This is using my gameboy emulator, binjgb[0], on the website! (well one of my gameboy emulators, heh [1][2]) It's been used as the emulator for GB Studio for a little while now, but I don't know how often people embed it in their websites, so it's really cool to see.
[0] https://github.com/binji/binjgb
-
I added a "rewind mode" to my emulator (gem)
Nice work, looks great! I wrote a blog post about the way I did mine a few years back: https://binji.github.io/posts/binjgb-rewind/. You can play with the web version at https://binji.github.io/binjgb/. Reading it back, I was pretty concerned about keeping the size down, but also on reducing dependencies, so I spent a lot of time trying to have a fancy circular buffer.
-
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
- Ask HN: What's the best source code you've read?
-
Infinite Mac: An Instant-Booting Quadra in the Browser
Recently I fell into a wormhole, or rather time sink, playing with a Gameboy emulator that runs in the browser.
https://github.com/binji/binjgb
There's something so satisfying about a virtual machine that fits in a ~106K WASM file, that can play hundreds of classic games like Teris and Super Mario Bros (via ROM collections on Internet Archive). I don't usually play games, but this emulator is so cute and fun, I keep coming back to waste time on it.
Actually, PICO-8 was the last time I felt this kind of child-like joy about a computer.
I get a similar feeling from this Infinite Mac project.
https://github.com/mihaip/infinite-mac
It's so pleasing to see a running Macintosh in the browser. That interface feels like an old friend. The underlying VM, BasiliskII, is a little less than 1MB WASM file. Amazing!
From the entertaining article, I learned about "retrocomputing". OK, so that's what I'm into, haha.
-
Hello World - gameboy music cartridge
Want to create Your own music cartridge (no problem :) You can use our lsdpack-kit constructor. Multiple rom support. But keep in mind that this is still in development.Custom styled HTML emulator based on binjgb could be found here.
embedded-wasm-apps
-
Wasm2Mpy: Compiling WASM to MicroPython so it can run in Raspberry
For esp32 I'd recommend https://github.com/wasm3/embedded-wasm-apps
It obviously depends on your needs/goals.
P.S. I'm also the author of wasm3
- Run native, statically-compiled apps on any embedded platform, using WebAssembly
- Running native TypeScript, TinyGo, Rust, Zig apps on any Arduino device using WebAssembly
What are some alternatives?
jitboy - A Game Boy emulator with dynamic recompilation (JIT)
wac - WebAssembly interpreter in C
SkyEmu - Game Boy Advance, Game Boy, Game Boy Color, and DS Emulator
aWsm - WebAssembly ahead-of-time compiler and runtime. Focuses on generating fast code, simplicity, and portability.
lsdpack-kit
wasm-micro-runtime - WebAssembly Micro Runtime (WAMR)
8086tiny - Official repository for 8086tiny: a tiny PC emulator/virtual machine
raylib - A simple and easy-to-use library to enjoy videogames programming
vrEmuLcd - Character LCD emulator library (C99 engine, web front-end).
esp-wasmachine - The Machine which can run WASM applications.
helloworld - Custom binjgb Game Boy emulator with music rom
w2c2 - Translates WebAssembly modules to portable C