[Porporo](https://wiki.xxiivv.com/site/porporo.html) is an experimental operating system specification for [Varvara](https://wiki.xxiivv.com/site/varvara.html), written in [Uxntal](https://wiki.xxiivv.com/site/uxntal.html) and ANSI C. For more details, see the [devlog](https://rabbits.srht.site/decadv/).
Since parts of Porporo are built with itself, we need to have a partial implementation of the varvara ecosystem(`src/uxncli`), and an assembler(`src/uxnasm`). Compiling porporo begins by building these two tools, then assembling the roms required by porporo(`menu.rom`, `wallpaper.rom`, `potato.rom`). These 3 roms then needs to be converted to C style arrays with `format-c.rom` rom. When this is done we can finally compile porporo.
The rom expects a file named `.wallpaper` in the [chr format](https://wiki.xxiivv.com/site/chr_format.html) that is large enough to fill the screen. The way I do it is by, first getting the screen size(let's say `1328x640`), creating a `wallpaper.tga` image at that size, converting it with [tgachr](https://git.sr.ht/~rabbits/uxn-utils/tree/main/item/cli/tgachr/tgachr.tal), generating a file named `wallpapera6x50.chr`, and finally renaming it to `.wallpaper`. Voila!
Submit patches using [`git send-email`](https://git-send-email.io/) to the [~rabbits/public-inbox mailing list](https://lists.sr.ht/~rabbits/public-inbox).