Curated list of awesome Uxn projects from the community.
The Uxn ecosystem is a personal computing playground, created to host small tools and games, programmable in its own unique assembly language.
- Varvara - Technical documentation of the Varvara computer and a list of all its devices.
- Uxntal - Uxntal language reference manual.
- Uxntal opcode manual - List of Uxntal opcodes and their effects.
- Sprite format -
.chr
file format description.
- Uxn Tutorial by Compudanzas - Beginner-friendly tutorial guide which covers the basics of Uxn programming.
- Uxn Tutorial by Compudanzas(video) - Beginner-friendly video workshop which covers the basics of Uxn programming.
- Learn Uxntal in Y minutes - Quick Uxntal guide.
- Uxn implementation guide - Notes on how to implement the Uxn/Varvara virtual machine specification.
- macOS installation
- Windows installation
- Android installation - Guide for running Uxn on the Android operating system through Termux.
-
Desktop
- Uxnemu(SDL2) - The original implementation of the Uxn emulator.
- Uxn32(win32) - Windows-native Uxn emulator.
- Uxncli(CLI) - Basic command-line interface version of Uxnemu.
- Uxn-lua - A port of the Uxn instruction set and Varvara virtual computer to Lua and the Love2D game engine.
- Libretro port - Implementation for the Libretro emulation layer.
- Webuxn - Lightweight port of the Uxn virtual machine to the web via WebAssembly.
- EssenceOS - An implementation for the Essence operating system.
- Varvara.jl - Assembler and emulator for Uxn ported to Julia.
- Zabava - Experimental implementation in Haskell.
-
Other systems
- Game Boy Advance - Complete.
- Nintendo DS - Complete.
- Playdate - Complete.
- DOS - Implemented: Core, Screen, Mouse, Controller.
- PlayStation Vita - Incomplete.
- Raspberry Pi Pico - Implemented: Core, Screen.
- Teletype - Incomplete.
- ESP32 - Incomplete.
- iOS - Incomplete.
- STM32 - Incomplete.
- STM32duino - Incomplete.
- IBM PC - Incomplete.
-
Misc
- Grid - Incomplete.
- Rockbox - Implemented: Core, Screen.
- Logisim - Incomplete.
- Adafruit PyBadge - Implemented: Core, Console, Screen, Controller.
-
Creative
-
Utilities
-
Games
- Niju - Hiragana and katakana learning game.
- Donsol - Card game about exploring a dungeon made of a standard 54 poker card set.
- Flappy - Implementation of a Flappy Bird-like game.
- Pong - Recreation of the classic Pong game.
- Snake - Classic Snake game implementation.
- Cat Cubes - Puzzle game about matching and clearing tiles from a board.
-
Networking
-
Operating systems/REPLs
- Collapse OS - Experimental Uxn port of Collapse OS.
- Uxnfth - Uxn-native forth.
-
Demos
- Bad-apple-uxn - Bad Apple!! video on a single Uxn ROM.
-
Libraries
- regex - Regex parsing in uxn
-
IDEs
- Learn-uxn - A web-based development environment with a text editor and up-to-date versions of Uxnasm and Uxnemu.
-
Assemblers, compilers & disassemblers
- Uxnasm - The original implementation of the Uxntal assembler in about 400 lines of ANSI C.
- Asma - Uxntal assembler written in Uxntal itself.
- Ruxnasm - Uxntal assembler focused on error reporting.
- Uxncle - Compiler for a small subset of C to Uxn bytecode.
- Pyuxncle - Python implementation of Uxncle.
- Conch - Compiler for a C-like language with Lisp-like syntax to Uxn bytecode.
- Uxn-ng - Uxntal assembler with bytecode annotating.
- Uxnbruteforce - Tool for optimizing little pieces of Uxntal code.
- Uxnlin - Linter for Uxntal.
- Uxnbot - IRC bot for assembling and running small Uxntal snippets.
- Pyuxntaldisasm - Very basic disassembler for Uxn ROMs.
- Uxnasm-js - Uxntal assembler written in JavaScript.
-
Uxntal language support
-
Testing
- Uxn-instruction-tests - Test suite for the Uxn CPU instruction set.
- Uxntal-test-suite - Test suite for Uxntal.
-
Benchmarking
- Bunnymark - Render performance benchmark.