Go to file
neauoire 0446dcaaa3 (screen.c) Faster sprite drawing 2023-08-05 09:59:25 -07:00
etc Implemented total sprite flipping in bliting 2023-08-04 11:40:24 -07:00
src (screen.c) Faster sprite drawing 2023-08-05 09:59:25 -07:00
.build.yml Fixed issue with links to binaries 2023-06-08 11:17:47 -07:00
.clang-format Added Fn keys controls 2022-04-05 20:06:42 -07:00
.gitignore Init 2022-03-26 17:23:52 -07:00
LICENSE Init 2022-03-26 17:23:52 -07:00
README.md Fixed issue with links to binaries 2023-06-08 11:17:47 -07:00
build.sh Implemented total sprite flipping in bliting 2023-08-04 11:40:24 -07:00

README.md

Uxn11

An emulator for the Uxn stack-machine, written in ANSI C.

Building

Graphical

All you need is X11.

gcc -Os -DNDEBUG -g0 -s src/uxn.c src/devices/system.c src/devices/screen.c src/devices/controller.c src/devices/mouse.c src/devices/file.c src/devices/datetime.c src/uxn11.c -o bin/uxn11 -lX11

Terminal

If you wish to build the emulator without graphics mode:

gcc -Os -DNDEBUG -g0 -s src/uxn.c src/devices/system.c src/devices/file.c src/devices/datetime.c src/uxncli.c -o bin/uxncli

If do not wish to build it yourself, you can download linux binaries for uxnasm, uxncli and uxn11.

builds.sr.ht status

Usage

The first parameter is the rom file, the subsequent arguments will be accessible to the rom, via the Console vector.

bin/uxnemu bin/polycat.rom arg1 arg2

Devices

The file device is sandboxed, meaning that it should not be able to read or write outside of the working directory.

  • 00 system
  • 10 console
  • 20 screen
  • 30 audio(missing)
  • 70 midi(missing)
  • 80 controller
  • 90 mouse
  • a0 file(sandboxed)
  • c0 datetime

Emulator Controls

  • F2 print non-empty stacks
  • F4 load boot.rom, or reload rom

Buttons

  • LCTRL A
  • LALT B
  • LSHIFT SEL
  • HOME START

Need a hand?

The following resources are a good place to start:

Contributing

Submit patches using git send-email to the ~rabbits/public-inbox mailing list.