Varvara Multiplexer, written in Tal/ANSI C(SDL2)
Go to file
neauoire 6bf8b7b3ac Mouse out on locking 2023-12-15 11:09:54 -08:00
etc (log) Record type 2023-12-08 19:51:14 -08:00
src Mouse out on locking 2023-12-15 11:09:54 -08:00
.clang-format let us begin 2023-11-23 19:33:22 -08:00
.gitignore (log) Fixed issue with text wrapping 2023-12-02 20:39:58 -08:00
LICENSE let us begin 2023-11-23 19:33:22 -08:00
README.md Clamped action selection 2023-12-15 10:04:52 -08:00
catclock.tal Guard agains no dest 2023-12-07 17:23:16 -08:00
cibo10x10.icn Special communication is all done on 18 with different types 2023-12-07 16:23:57 -08:00
makefile Starting status bar 2023-12-13 20:14:51 -08:00

README.md

Porporo

Porporo is an experimental operating system specification for Varvara, written in TAL and ANSI C. This is a work in progress, for more details follow the development during december.

Build

To build the Uxn emulator, you must install SDL2 for your distro. If you are using a package manager:

sudo pacman -Sy sdl2             # Arch
sudo apt install libsdl2-dev     # Ubuntu
sudo xbps-install SDL2-devel     # Void Linux
brew install sdl2                # OS X

To build Porporo and the required roms:

make run

Controls

  • F1, lock varvara.
  • F2, center varvara.
  • F4, exit varvara.
  • F5, soft-reboot varvara.
  • d, draw mode.
  • m, move mode.

Menu.rom

  • tab, see all files.
  • esc, exit.
  • mouse1, or enter, run file.
  • mouse2m or shift+enter, send filename.

Wallpaper

The wallpaper rom expects a file named .wallpaper in the chr format 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, generating a file named wallpapera6x50.chr, and finally renaming it to .wallpaper. Voila!

uxncli ~/roms/tgachr.rom wallpaper.tga
mv wallpapera6x50.chr .wallpaper

Messages

Porporo listens special console messages types:

  • 0xff run command
  • 0xfe set action type

Potato

Potato is the menubar rom that holds some of the state of porporo in its zero-page:

  • 0x00* action vector
  • 0x02 action value