1. My Projects
    2. examples
      1. rainbow
        1. rainbow.s
      2. ansi
        1. ansi.s
      3. mandelbrot
        1. mandelbrot.s
      4. input
        1. input.s
      5. hello
        1. hello.s
      6. fibonacci
        1. fibonacci.s
    3. kernel
      1. rtc.s
      2. random.s
      3. virtio.s
      4. keyboard.s
      5. framebuffer.s
      6. const.s
      7. syscall.s
      8. trap.s
      9. memory.s
      10. console.s
      11. paging.s
      12. start.s
      13. kmain.s
      14. endian.s
      15. util.s
      16. stdlib.s
      17. irq.s
      18. fdt.s
      19. elf.s
      20. stack.s
    Console output. When you assemble something and stub your toe slightly, those errors will appear here.
    
    pc
    ra
    sp
    gp
    tp
    t0
    t1
    t2
    t3
    t4
    t5
    t6
    s0
    s1
    s2
    s3
    s4
    s5
    s6
    s7
    s8
    s9
    s10
    s11
    a0
    a1
    a2
    a3
    a4
    a5
    a6
    a7
    1. AddressCodeDisassemblyLineSource
    2. AddressValue (+0)Value (+4)Value (+8)Value (+12)Value (+16)Value (+20)Value (+24)Value (+28)Printed
    1. RISC-V Assembler and Workable, Rewritable System (RAWRS)

      Logo

      RAWRS is a learning tool designed to help teach architecture concepts through the writing of assembly language. The language used is RISC-V, an up-and-coming open RISC architecture based on MIPS. RAWRS itself is loosely modeled after its own namesake, MARS, which is an equivalent learning solution for MIPS assembly.

      RAWRS is built off of entirely free and open software and is designed to be easy to deploy to any modern environment as a static website. It uses emscripten to compile the free and open toolchain that RAWRS uses to assemble and inspect application binaries all within the web browser's native JavaScript engine.

      The simulator (or emulator if you must) that runs the RISC-V application and kernel is TinyEmu by Fabrice Bellard, and is itself permissively licensed and open. Without this, the modifications required to make it work in an educational environment would not have been possible. And in the same spirit, RAWRS is offered, along with the educational RISC-V kernel written alongside it, completely openly and free.

      Related Work

      This project is not to be confused with RARS by Benjamin Landers (another RISC-V project derived more directly by MARS) which can be found at https://github.com/TheThirdOne/rars. There is some effort to keep RAWRS in line with conventions found in this Java-based RARS.

      Source Code

      You can find the source code for RAWRS on GitLab.

      License

      The main web application and program content is licensed under the terms of the GNU AGPLv3.0 license.

      Development

      • RAWRS Programming and Design: wilkie, Luís Oliveira, jason, Austin Oldham, Nate Stump
      • TinyEmu RISC-V System Emulator: Fabrice Bellard, modifications by wilkie
      • GNU Binutils: various

      Localization

      • English: wilkie

      Artwork

      Documentation

      • General: wilkie
      • Tutorials: wilkie

      Open Source Software

      This program would not be possible if not for the existing and ongoing effort provided by the community at large within these independently developed and maintained projects.

NameSize