mirror of
https://git.sr.ht/~rabbits/uxn
synced 2025-12-30 13:47:14 +00:00
No description
| archive | ||
| assets | ||
| fonts | ||
| pictures | ||
| sounds | ||
| LICENSE | ||
| README.md | ||
Uxn
Learning
- Learn Uxntal in Y minutes - Language overview for when you're in a hurry.
- Uxn Guide by Compudanzas - Tutorial guide which covers the basics of Uxn programming.
- Uxn Video by Compudanzas - Video workshop which covers the basics of Uxn programming.
- macOS installation
- Windows installation
- Android installation - Through Termux.
- HaikuOS installation - Forum thread for the Haiku operating system.
- Learn-uxn - A web-based learning environment with a text editor and graphics.
- UxnREPL - A web-based learning with examples.
Documentation
- Uxntal - Uxntal language reference manual.
- Varvara - Technical documentation of the Varvara computer and a list of all its devices.
- Opcodes - List of Uxntal opcodes and their effects.
- Uxntal Cheatsheet - Opcode Cheatsheet.
- RosettaCode - Uxntal programming chrestomathy.
File Formats
- Sprite format -
.chrfile format description. - Font format -
.ufxfile format description. - Compression format -
.ulzfile format description.
Emulators
Desktop
- Recommended for Linux: Uxn2 - Cross-platform emulator, written in C(SDL2).
- Recommended for Windows: Uxn32 - Windows emulator, written in C.
- Recommended for Mac: Raven - Cross-platform emulator, written in Rust.
- Uxn38 - Emulator written in C with SDL1.
- Nux - Emulator written in Go.
- Uxn11 - Linux emulator, written in C.
- uxn9 - Native emulator for 9front. (no audio support)
- uxn5 - Javascript implementation.
- buxn - Multi platform emulator, written in C.
- ruxn - A Uxn library written in Rust, intended to make defining new Uxn-based systems easy.
- zuxn - A Uxn library, emulator and assembler written in Zig.
- UxnFb - Linux framebuffer emulator, written in C.
- uxnfloppy - Bootable emulator for BIOS, written in 16bit x86 assembly. (no keyboard/gamepad/audio/file support)
- UxnRPI - RaspberryPi framebuffer emulator, written in C. (no input support)
- UxnJulia - Cross-platform emulator and assembler, written in Julia.
- UxnLua - Cross-platform emulator, written in Lua(Love2d).
- uxn-rs - Emulator written in Rust.
Other systems
- Game Boy Advance - Complete.
- Nintendo 64 - Complete.
- Nintendo DS - Complete.
- Playdate - Complete.
- Nook eReader - Complete.
- Android - Complete.
- FPGA - Nearly Complete.
- RPi - Nearly Complete.
- Game Boy - Incomplete.
- DOS - Incomplete.
- Teletype - Incomplete.
- ESP32 - Incomplete.
- iOS - Incomplete.
- iOS - Incomplete.
- STM32duino - Incomplete.
- IBM PC - Incomplete.
- PlayStation Vita - Incomplete.
- PlayStation Portable - Incomplete.
- Atari ST - Incomplete.
- Pebble OS - Incomplete.
- Adafruit PyBadge - Incomplete.
- Logisim - Incomplete.
Web
- UxnWasm - WebAssembly implementation of the Uxn core.
- Webuxn - Lightweight port of the Uxn virtual machine to the web via WebAssembly.
Misc/Cores
- uxnbot - a REPL.
- uxn.py - Python implementation of the VM.
- Uxncli - System, console and file devices only.
- Uxnmin - Console only.
- auxn - Incomplete.
- buxn-dbg - Uxntal step debugger.
- uxnbot - IRC bot for assembling and running small Uxntal snippets.
Applications
Creative
- Left - Graphical text-editor with Uxntal syntax highlight.
- Nasu - Spritesheet editor.
- Noodle - Drawing tool.
- Turye - Font editor.
- Orca - Livecoding IDE.
- uxn-harp - Chordal musical toy.
Utilities
- Notepad - Notepad.
- Calendar - Calendar.
- Theme - Theme editor.
- Dexe - Graphical hex editor.
- CCCC - Graphical calculator.
- Nebu - Spreadsheet calculator.
- Starling - Spreadsheet application.
- Beetbug - Step debugger.
- Varaboy - Gameboy Emulator.
Games
- Oquonie - Puzzle adventure game.
- 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.
- Cat Cubes - Puzzle game about matching and clearing tiles from a board.
- Minesweeper - Minesweeper port for Varvara.
- XO - TicTacToe for Varvara.
- Fourtette - Tetris for Varvara.
- Shanghai - Mahjong Solitaire for Varvara.
- Pinkie Run - Pony-themed Endless Runner for Varvara.
- oneko-uxn - A version of “Neko”, the classic desktop pet cat, with several characters.
- Lights Out - Puzzle game for Varvara.
- Worm - Dune themed snake game for Varvara.
- Kodiak - Klondike solitaire with music and bears.
- Tile Garden - Idle game where you place tiles to make plants.
- Polycat - Platformer game.
Operating systems/REPLs
- UF - A traditional Forth system for Varvara.
- PotatoOS - A little desktop environment.
- CollapseOS - Forth-based operating system for Varvara.
- Uxnfth - Uxn-native forth.
- TalOS - A small Uxntal REPL and System Monitor/OS written in Uxntal.
Demos
- Bad Apple!! - An arrangement of the Bad Apple!! music video.
- tiles - A scrolling tile-map renderer.
- svitlyna - A "full-color" image viewer.
- Bunnymark - Render performance benchmark.
Libraries
- math32 - Unsigned 32-bit integers
- regex - Regex parsing and matching
- fix16 - Signed 16-bit fixed point numbers (8.8)
- alloc - Arena-based memory allocator
- arg - Command-line argument parsing
Terminal / Command-line
- femto - nano-like text editor
- grep - minimal grep-like tool(uses regex.tal)
- Xrxs - Experimental game server using the Plan 9 protocol 9p.
Development tools
Uxntal Assemblers
- Recommended: Drifblim - Uxntal Assembler, written in Uxntal.
- buxn-asm - Uxntal assembler with a type checker.
- Uxnasm-js - Uxntal assembler written in JavaScript.
- lunas - An Uxntal assembler written in Lua.
- Yaku - An Uxntal assembler and interpreter.
Uxntal Disassemblers
- Recommended: uxndis - Disassembler for rom and sym files.
- Pyuxntaldisasm - Very basic disassembler for Uxn ROMs.
- Uxn-disassembler - Disassembler writen in Uxntal
Uxntal Formatters/Optimizers
- Recommended: uxnfor - a formatter for tal files.
- Uxnbruteforce - Tool for optimizing little pieces of Uxntal code.
- Uxnlin - Linter for Uxntal.
Languages that target Uxn
- Finwë - A high-level, stack-based language that compiles to Uxn bytecode.
- Conch - Compiler for a C-like language with Lisp-like syntax to Uxn bytecode.
- Dotal - A small language designed to compile to the Uxn virtual machine.
- chibicc-uxn - A C compiler for Uxn, written in C.
- nito - A compiler from Uxntal to C, written in Raku.
- funktal - A small, statically typed, functional programming language that compiles to Uxntal.
- Uxncle - Compiler for a small subset of C to Uxn bytecode.
- B - Compiler for the B Programming Language implemented in Crust, has support for uxn target.
- niënor - Optimizing compiler for a Lisp dialect.
- SUPERFLY - Concatenative array language.
- Callisto - Low level compiled programming language with a uxn backend.
Uxntal language support
- Atom language package
- Emacs mode (alt 1 alt 2)
- Kakoune plugin
- Lite XL plugin
- Vim plugin
- Visual Studio Code extension
- Language server
- Kate syntax
- Sublime syntax
- Micro syntax
- Nano syntax (1 2 3)
Community
Contributing
Submit patches using git send-email to the ~rabbits/public-inbox mailing list.