Cartesi Machine Playground

A RISC-V machine, configured here and running in this tab. Nothing to install, and the only thing the server does is hand over the images.

Images

Kept in this browser's storage, so they are added once.

linux.bin
Linux 6.5.13-ctsi-2, the kernel of emulator 0.21.0 · 17 MiB
rootfs-tools.ext2
Ubuntu 24.04 userland with the guest tools, from machine-guest-tools 0.18.0 · 350 MiB

Releases come through this app's server, which is what makes them readable here at all — GitHub serves release assets with no cross-origin headers. Anywhere else has to allow the read itself; a file already on this machine goes in with add a file.

The library is empty. A machine needs at least a kernel.

Machine

The root filesystem comes from the image library above. Extra drives appear to the guest as /dev/pmem1 and on, and init mounts each of them under /mnt.

NVRAM

Memory ranges with no filesystem on them, which the guest reaches as /dev/uio0 and on — running nvram with a label there says which.

Boot

The entrypoint runs after init. Left empty, an interactive machine gets a shell and any other halts with nothing to do.

Console

Advanced

Rarely needed, and exactly what the emulator calls them.

Configuration

Exactly what create() is called with.

{
  "config": {
    "ram": {
      "length": 134217728
    },
    "processor": {
      "registers": {
        "iunrep": 1
      }
    },
    "virtio": [
      {
        "type": "console"
      }
    ],
    "dtb": {
      "bootargs": "quiet earlycon=sbi console=hvc1 uio_pdrv_genirq.of_id=generic-uio init=/usr/sbin/cartesi-init",
      "init": "echo \"\n         .\n        / \\\\\n      /    \\\\\n\\\\---/---\\\\  /----\\\\\n \\\\       X       \\\\\n  \\\\----/  \\\\---/---\\\\\n       \\\\    / CARTESI\n        \\\\ /   MACHINE\n         '\n\"\nexport TERM=xterm-256color\nexport LANG=C.utf8\n",
      "entrypoint": "sh -i"
    }
  },
  "runtime": {
    "console": {
      "output_destination": "to_buffer",
      "output_flush_mode": "every_char",
      "input_source": "from_buffer",
      "tty_cols": 80,
      "tty_rows": 25
    }
  }
}
idle

no kernel image chosen