Skip to content
RISC-V instruction set simulator built for education
Kotlin HTML JavaScript CSS
Branch: master
Clone or download
Pull request Compare This branch is 31 commits ahead of kvakil:master.
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Type Name Latest commit message Commit time
Failed to load latest commit information.
gradle/wrapper Improve documentation Jul 22, 2017
qunit Update to disable DCE for now Jul 19, 2017
src Fix style (lint) issues. Apr 9, 2019
.gitattributes Add codemirror files Jul 31, 2017
.gitignore Add venus.glue.Inputter. Apr 1, 2019
.travis.yml Change Travis CI deployment name Oct 23, 2017 Update CONTRIBUTING to describe Gitflow Aug 21, 2017
Gruntfile.js Remove old grunt tasks Jul 31, 2017
LICENSE Initial commit Jul 8, 2017
build.gradle Bump version to v0.1.0 Aug 21, 2017
gradlew Begin gradle + QUnit testing Jul 8, 2017
package.json Bump version to v0.1.0 Aug 21, 2017
settings.gradle Begin gradle + QUnit testing Jul 8, 2017


venus is a RISC-V instruction set simulator built for education. This repository is a fork of kvakil/venus. The fork contains some additional minor features that were found to be useful when implementing a compiler for the ChocoPy language. This fork is therefore called Venus164 (named after the course CS164 at UC Berkeley). The additions in this fork are all standard assembler features that are supported by the official RISC-V GNU-based toolchain.

Using venus164

venus164 is available online.

Features (from the original)

  • RV32IM
  • Single-step debugging with undo feature
  • Breakpoint debugging
  • View machine code and original instructions side-by-side
  • Several ecalls: including print and sbrk
  • Memory visualization

Features Added for Venus164

Building the Web version

Build the backend:

$ ./gradlew build

Build the frontend+backend bundle:

$ grunt dist

The website should be built in the out directory.

Building the JAR

Checkout the jvm branch and run

$ gradle clean jar

Releasing a new version to the Venus164 Maven repository

Checkout the maven-repository branch and run



User Guide

MIT License

You can’t perform that action at this time.