Skip to content

racerxdl/riscv-emulator

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

5 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

RISC-V Emulator

A toy Golang RISC-V emulator that can play DOOM

For now it uses smunaut bootloader and riscv_doom from the ICE40 project.

But since there is no M extensions on this emulator, the CFLAGS in makefiles should be changed to use the non-M version

CFLAGS=CFLAGS=-Wall -march=rv32i -mabi=ilp32 (...)

The emulator is made to be used headless synchronously or assyncronously and easy to make new peripherials for it. I still need to do some documentation but you can see the doom example at cmd/ui.

DOOM

When starting the UI mode, the following keyboard keys controls the flow:

  • C => Continue emulation
  • P => Pause emulation
  • S => Step instruction