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
.
When starting the UI mode, the following keyboard keys controls the flow:
C
=> Continue emulationP
=> Pause emulationS
=> Step instruction