MicroW8
MicroW8 is a WebAssembly based fantasy console inspired by the likes of TIC-80, WASM-4 and PICO-8.
At the time of writing it currently is the most powerful fantasy console out there in terms of performance, code density, graphics and audio capabilities.
The initial motivation behind MicroW8 was to explore whether there was a way to make WebAssembly viable for size-coding. (Size coding being the art of creating tiny (often <= 256 bytes) graphical effects and games.) The available examples so far are all in this space. The author made sure that all design decisions make sense from the point of view of bigger projects as well.
Setting Up
MicroW8 is pretty lightweight and easy to setup. Just download the latest version of MicroW8 for you favorite platform at: https://exoticorn.github.io/microw8/
After which you can open up your favorite editor and either open an existing example or create your own program. The MicroW8 supports the following languages: CurlyWas, WASM (wat), C, Rust and Zig.
Then open up your console and type the following:
uw8 run -w -p -l 9 myintro.cwa -o myintro.uw8
This will compile, pack and start your intro in the microW8 environment and will watch the original sourcefile for any changes, so that upon saving the latest changes in your favorite editor, it will automatically compile, pack and relaunch your intro.
Video Display
The MicroW8 has a resolution of 320x240 pixels with 256 colors, accessable via framebuffer (located at memory address 120) or via primitive functions like setPixel, line, circle, rectangle.
The palette consists of 12 hues of 16 shades each, followed by a shiftable version of the sweetie16 palette in 1,2,4,8,16 and 32 color variants in the last 64 color indices.
For full documentation on the graphics capabilities, check out https://exoticorn.github.io/microw8/docs/#graphics
Sound
The MicroW8 support sound via a custom soundchip (registers located at location 80 in memory) or via a dedicated soundcall for bytebeat. Expect Sound capabilities somewhere in between the AY/YM chipset and a SID chip.
For full documentation on the graphics capabilities, check out https://exoticorn.github.io/microw8/docs/#sound