Go to file
neauoire c990a2a407 Removed a few indirections 2022-04-05 10:30:17 -07:00
src Removed a few indirections 2022-04-05 10:30:17 -07:00
.clang-format Init 2022-03-26 17:23:52 -07:00
.gitignore Init 2022-03-26 17:23:52 -07:00
LICENSE Init 2022-03-26 17:23:52 -07:00
README.md Stacks are mapped in ram 2022-03-30 10:37:47 -07:00
build.sh Removed console as Device 2022-04-05 09:29:06 -07:00

README.md

Uxn

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

Uxn11/System

This emulator's system device supports changing a stack's location to a page of memory. The default memory mapping is as follows:

  • 0000-ffff, as RAM.
  • 10000-100ff, as working stack.
  • 10100-101ff, as return stack.

To use the last page of ram(0xff00) to host the working stack:

#ff .System/wst DEO

The stack mapping is 254 bytes of data, a byte for the pointer and a byte for an error code.

Graphical

All you need is X11.

gcc 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 -D_POSIX_C_SOURCE=199309L -DNDEBUG -Os -g0 -s -o bin/uxn11 -lX11

Terminal

If you wish to build the emulator without graphics mode:

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

Devices

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

Contributing

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