I've been working on a project called webMARS, a browser-based version of the MARS MIPS simulator used in many computer architecture courses.
The original MARS tool is a Java desktop application. My goal was to bring a similar experience to the browser so students can write, assemble and run MIPS programs without installing anything.
The interface tries to stay close to the original MARS layout (editor, registers, console, tools), but the implementation is web-based and still evolving.
I'm mainly looking for feedback from people who:
- teach computer architecture - have used MARS/SPIM before - work with assembly or CPU simulators
Questions I'm particularly interested in:
- What features from MARS would you consider essential? - Are there other tools you'd expect in a teaching-oriented MIPS IDE? - Does the UI feel usable compared to the original desktop version? - What would make this genuinely useful in a classroom setting?
Any feedback, testing, bug reports or suggestions are very welcome.
Unfortunately, running Java code in a browser requires emulating a Java virtual machine using JavaScript/WebAssembly (in this case, I used cheerpJ), which will run Mars4_5.jar. There are several layers that limit the performance of MARS MIPS in the browser.
Even so, it's possible to test ALL the functionalities of MARS in small projects.
I've been working on a project called webMARS, a browser-based version of the MARS MIPS simulator used in many computer architecture courses.
The original MARS tool is a Java desktop application. My goal was to bring a similar experience to the browser so students can write, assemble and run MIPS programs without installing anything.
You can try it here: https://webmars.nfiles.top/
Repository: https://github.com/codigoavulso/webMARS
The interface tries to stay close to the original MARS layout (editor, registers, console, tools), but the implementation is web-based and still evolving.
I'm mainly looking for feedback from people who:
- teach computer architecture - have used MARS/SPIM before - work with assembly or CPU simulators
Questions I'm particularly interested in:
- What features from MARS would you consider essential? - Are there other tools you'd expect in a teaching-oriented MIPS IDE? - Does the UI feel usable compared to the original desktop version? - What would make this genuinely useful in a classroom setting?
Any feedback, testing, bug reports or suggestions are very welcome.
[email protected]