This is a modified version of Fabrice Bellard's TinyEMU.
- 32/64/128-bit RISC-V emulation.
- VirtIO console, network, block device, input and 9P filesystem.
- Framebuffer emulation through SDL.
- Remote HTTP block device and filesystem.
- Small code, easy to modify, no external dependencies.
Changes from Fabrice Bellard's 2019-02-10 release:
- macOS and iOS support.
- Support for loading ELF images.
- Support for loading initrd images or compressed initramfs archives.
- Framebuffer support through SDL 2 instead of 1.2.
Use the VM images available from Fabrice Bellard's jslinux (no need to download them):
$ temu https://bellard.org/jslinux/buildroot-riscv64.cfg
Welcome to JS/Linux (riscv64)
Use 'vflogin username' to connect to your account.
You can create a new account at https://vfsync.org/signup .
Use 'export_file filename' to export a file to your computer.
Imported files are written to the home directory.
[root@localhost ~]# uname -a
Linux localhost 4.15.0-00049-ga3b1e7a-dirty #11 Thu Nov 8 20:30:26 CET 2018 riscv64 GNU/Linux
[root@localhost ~]#
Use C-a x
to exit the emulator.
You can also use TinyEMU with local configuration and disks. You can find more information in Fabrice Bellard's documentation for TinyEMU.
The easiest way to install TinyEMU is through Homebrew. There is a formula for TinyEMU in my Homebrew tap.
If you're compiling from source, you'll need:
Make sure to disable CONFIG_INT128
for 32-bit hosts.
TinyEMU was created by Fabrice Bellard. This port is maintained by Fernando Tarlá Cardoso Lemos.
Unless otherwise specified in individual files, TinyEMU is available under the MIT license.
The SLIRP library has its own license (two-clause BSD license).