Skip to content
Cross-platform ComputerCraft emulator written in Urn
Branch: master
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Type Name Latest commit message Commit time
Failed to load latest commit information.


ComputerCraft emulator written in Urn.
Designed to be able to run on multiple Lua platforms (ComputerCraft, POSIX + Lua 5.1/5.2/5.3/JIT).

How to use

Get a boot file (bios.lua):
wget bios.lua
And then simply run ccbox.
You can exit a VM by running shutdown.
There are many different options available:

usage: ccbox [--help] [--boot BOOT-FILE] [--log LOG-FILE] [--command STARTUP-COMMAND] [--disable-net] [--enable-rs] [--enable-per] [--enable-disk] [--non-advanced] [VFS-MOUNTS...]

 VFS-MOUNTS         The virtual file system mounts.
  attr: attributes. w (write), t (tempfs), c (ccfs)
  Temp doesn't require a dir argument.
  mount: mount point (has to start with /)
  dir: host file system directory
  Can be relative to the current directory.
  Default: cw:/:. c:/rom:/rom
 --help, -h         Show this help message
 --boot, -b         The boot file. Default: ./bios.lua
 --log, -l          The log file.
 --command, -c      The startup command.
 --disable-net, -n  Disables networking (http, socket).
 --enable-rs, -R    Enables redstone passthrough.
 --enable-per, -P   Enables peripheral passthrough.
 --enable-disk, -D  Enables disk drive passthrough.
 --non-advanced     Run as a standard (non-advanced) computer.


Compiling is done with the Urn compiler:
cd src; urn main.lisp -o ccbox


It is recommended you build this program yourself (see Building), as this download can be outdated.
pastebin get PheuiSP1 ccbox.lua


This was originally my entry for CCJam 2017, but has since been updated.
You can find the original code for the CCJam 2017 in the ccjam-2017 tag.
This program was made with and tested for the ComputerCraft 1.80 Nightly builds, but could run on older versions too.

You can’t perform that action at this time.
You signed in with another tab or window. Reload to refresh your session. You signed out in another tab or window. Reload to refresh your session.