Skip to content

RISC-V system emulator

License

Notifications You must be signed in to change notification settings

sysprog21/riscv-emu

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

46 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

RISCV-EMU

This is a community build of TinyEMU, targeting in GNU/Linux, macOS, and MS-Windows support.

Features

  • 32/64/128-bit RISC-V emulation.
  • VirtIO console, network, block device, input and 9P filesystem.
  • Framebuffer emulation through SDL.
  • Support for loading ELF images.
  • Support for loading initrd images or compressed initramfs archives.
  • Remote HTTP block device and filesystem.
  • Small code, easy to modify, no external dependencies.

Usage

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.

Installing

If you're compiling from source, you'll need:

Make sure to disable CONFIG_INT128 for 32-bit hosts.

Credits

TinyEMU was created by Fabrice Bellard, and Fernando Lemos improved its macOS support.

License

TinyEMU is released under the MIT license unless otherwise specified in specific files.

The SLIRP library has its own license (two-clause BSD license).

Releases

No releases published

Packages

No packages published

Languages

  • C 98.2%
  • JavaScript 1.2%
  • Other 0.6%