# RISC-V 32-bit CPU - RV32I Since there is a target in LLVM for rv32i, this CPU is able to run any C or Rust compiled program. ## How to program the RISC-V 32bit CPU with one of the provided programs *Only Linux is supported and you need to have cargo, make and other build tools installed with support for the riscv32i-unknown-none-elf target.* 1. Go to a directory of a program. 2. Run `make` - it will put the output to `/tmp/text.bin` and `/tmp/rodata.bin`. 3. Select `LOAD .TEXT` in game. 4. Run the console command `loadram /tmp/text.bin` 5. Select `LOAD .RODATA` in game (unselect `LOAD .TEXT`). 6. Run the console command `loadram /tmp/rodata.bin` 7. Hit `RESET` ## Running - Toggle the yellow lever to run the cpu continously or hit the button below it to step instructions. - The gray lever activates stepping instructions using the Enter key (you must look at it) ## Debugging - You can set a breakpoint on the left and the CPU will pause when the program counter reaches the target address