69cc92496d | ||
---|---|---|
etc | ||
src | ||
.build.yml | ||
.clang-format | ||
.gitignore | ||
LICENSE | ||
README.md | ||
makefile |
README.md
Uxn11
An emulator for the Uxn stack-machine, written in ANSI C. The emulator contains a few linux specific utilities in the Console device to allow for it to interface with the unix systems.
Building
Graphical
All you need is X11.
gcc -Os -DNDEBUG -g0 -s src/uxn.c src/devices/system.c src/devices/console.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/console.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.
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
system10
console(+)20
screen80
controller90
mousea0
filec0
datetime
Emulator Controls
F2
toggle on-screen debuggerF4
load boot.rom, or reload rom
Buttons
LCTRL
ALALT
BLSHIFT
SELHOME
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.