Chip8 is the rite of passage for many emulator devs due to its simplicity, it can be implemented on virtually every 1 cent microcontroller out there.
It should've had a more dedicated vibrant community if it weren't the many incompabilities among the different emulators implementations out there, all due to people using cowgod's chip-8 tecnical reference as the single source of truth[0], which itself is based on David Winter's original implementation which contained a few inaccuracies on some instructions behavior from the original COSMAC VIP interpreter.
I love these tiny VM's, thanks to emulation I'm there since two decades.
On a Chip8 interpreter written in AWK and a bit of help of coreutils (to mimick getchar in C to pick a single char; if you can do it under AWK without resorting to GNU od or read, kudos):
https://git.luxferre.top/dale-8a/log.html
OpenBSD and the rest of BSD users: you need to install 'coreutils' from ports, open 'dale8a.wk' and 'tgl.awk' and rename 'od -' to 'ggod -' .
Proof that it works:
Very cool. Reminds me of the Pico8.
I love these types of vms that have deliberately limited specs. Really makes you sink your teeth into solving problems creatively with minimal resources.
Is it still being maintained? There used to be a game jam, Octojam, that was stopped years ago[0]. Seems mostly out of a lack of interest? Would be cool if it revived.
It inspired me to start zig8[1], my own CHIP-8 emulator. It's not ready for prime time yet but it's getting there. When it's ready I hope it will have a visual debugger and feel good: fast, better shaders, better sound, good defaults, etc.
CHIP-8 is a neat system. If you're interested in emulation it's a great place to start in my humble opinion. It's simple enough that you can finish it before deciding whether you like writing emulators.
Hopefully interest in CHIP-8 would pick up again, it's a neat bit of history and a cool little system.
[0] https://beyondloom.com/blog/octojam.html
[1] https://github.com/agentultra/zig8