- C 94.9%
- Makefile 5.1%
|
|
||
|---|---|---|
| doc | network: init v3 | |
| etc | network: init v3 | |
| src | network: init v3 | |
| .build.yml | Progress on CI | |
| .clang-format | Added formatter | |
| .gitignore | Init | |
| LICENSE | Added README | |
| makefile | network: init v3 | |
| README.md | Progress on CI | |
Uxn2
A graphical emulator for the Varvara Computer, written in C99(SDL2).
Building
You must have SDL2 installed.
cc -I/usr/include/SDL2 -DNDEBUG -O2 -g0 -s -lSDL2 src/uxn2.c -o bin/uxn2
For your convenience a Makefile is provided.
make run
You can run make install to build and install the files. By default, files are installed into ~/.local but this can be overridden using PREFIX:
# installs files into /opt/uxn/bin
$ make PREFIX=/opt/uxn install
Plan 9
If you're on plan 9.
cd src/
cc -p -I/sys/include/npe -I /sys/include/npe/SDL2/ uxn2.c
6l -o uxn2 uxn2.6
If do not wish to build it yourself, you can download linux binaries.
Usage
The first parameter is the rom file, the subsequent arguments will be accessible to the rom, via the Console vector.
bin/uxn2 bin/example.rom arg1 arg2
Assembler
This repository comes with a copy of the compiled Drifblim assembler.
cat etc/utils/drifblim.rom.txt | bin/uxn2 etc/utils/xh.rom > bin/drifblim.rom
bin/uxn2 bin/drifblim.rom etc/tests/opctest.tal bin/opctest.rom
Devices
The file device is sandboxed, meaning that it should not be able to read or write outside of the working directory.
00system10console20screen40audio50audio60audio70audio80controller90mousea0file(a)b0file(b)c0datetime
Emulator Controls
F1toggle zoomF2toggle debuggerF4rebootF5reboot(soft)
Buttons
LCTRLALALTBLSHIFTSELHOMESTART
SDL2
To build this emulator, you must install SDL2 for your distro. If you are using a package manager:
sudo pacman -Sy sdl2 # Arch
sudo apt install libsdl2-dev # Ubuntu
sudo xbps-install SDL2-devel # Void Linux
brew install sdl2 # OS X
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.