1.1 KiB
1.1 KiB
Kestrel
Kestrel is:
- an implementation of the Uxn virtual machine as a library in OCaml
- an implementation of the Varvara ecosystem using said library, supporting the devices needed for command-line programs.
Building
Kestrel requires OCaml 5.3 or upper, as it uses the newly introduced effects syntax.
There are no requirements aside from the OCaml standard library, so it can be
built simply using dune.
$ dune build
It then can be run using dune exec -- kestrel.
$ dune exec -- kestrel file.rom
The uxnmin program, which is similar to upstream's in functionality, can be
built without dune:
$ ocamlopt exe/uxnmin.ml -o uxnmin
Bootstrapping
Since Kestrel supports the needed Varvara devices for running the Drifblim
assembler, it can be used to bootstrap the ecosystem. Bundled in the repository
are copies of the Drifloon hex dump, the source code for Drifblim, and dzoe's
xh.rom.
A bootstrap script is provided that builds the assembler and some test ROMs.