0da1c5dcca
First commit of the 4.5 version (latest version available)
86 lines
4.8 KiB
HTML
86 lines
4.8 KiB
HTML
<html>
|
|
<title>MARS 4.5 help contents
|
|
</title>
|
|
<body>
|
|
<center>
|
|
<h3>MARS - Mips Assembly and Runtime Simulator</h3>
|
|
<h4>Release 4.5</h4>
|
|
<h4>August 2014</h4>
|
|
<h4>Using MARS through its Integrated Development Environment (IDE)</h4>
|
|
</center>
|
|
|
|
The IDE is invoked when MARS is run with no command arguments, e.g. <tt>java -jar mars.jar</tt>.
|
|
It may also be launched from a graphical interface by double-clicking the <tt>mars.jar</tt> icon
|
|
that represents this executable JAR file.
|
|
The IDE provides basic editing, assembling and execution capabilities. Hopefully it
|
|
is intuitive to use. Here are comments on some features.
|
|
<ul>
|
|
<li><b>Menus and Toolbar</b>: Most menu items have equivalent toolbar icons.
|
|
If the function of a toolbar icon is not obvious, just hover the mouse over it and
|
|
a tool tip will soon appear. Nearly all menu items also have keyboard shortcuts.
|
|
Any menu item not appropriate in a given situation is disabled.</li>
|
|
<li><b>Editor</b>: MARS includes two integrated text editors. The default editor, new
|
|
in Release 4.0, features syntax-aware color highlighting of most MIPS language elements
|
|
and popup instruction guides. The original, generic, text editor without these features
|
|
is still available and can be selected in the Editor Settings dialog. It supports a single
|
|
font which can be modified in the Editor Settings dialog.
|
|
The bottom border of either editor includes the cursor line
|
|
and column position and there is a checkbox to display line numbers.
|
|
They are displayed outside the editing area. If you use an external editor, MARS provides
|
|
a convenience setting that will automatically assemble a file as soon as it is opened. See
|
|
the Settings menu.
|
|
<li><b>Message Areas</b>: There are two tabbed message areas at the
|
|
bottom of the screen. The <i>Run I/O</i> tab is used at runtime for
|
|
displaying console output and entering console input as program execution progresses.
|
|
You have the option of entering console input into a pop-up dialog then echoes to the message area.
|
|
The <i>MARS Messages</i> tab is used for other messages such as assembly or
|
|
runtime errors and informational messages. You can click on assembly error messages to
|
|
select the corresponding line of code in the editor.
|
|
<li><b>MIPS Registers</b>: MIPS registers are displayed at all times, even
|
|
when you are editing and not running a program. While writing your program,
|
|
this serves as a useful reference for register names and their conventional
|
|
uses (hover mouse over the register name to see tool tips). There are three
|
|
register tabs: the Register File (integer registers $0 through $31 plus LO,
|
|
HI and the Program Counter), selected Coprocesor 0 registers (exceptions and
|
|
interrupts), and Coprocessor 1 floating point registers.
|
|
|
|
<li><b>Assembly</b>: Select <i>Assemble</i> from the <i>Run</i> menu or the
|
|
corresponding toolbar icon to assemble the file currently in the Edit tab.
|
|
Prior to Release 3.1, only one file could be assembled and run at a time.
|
|
Releases 3.1 and later provide a primitive Project capability. To use it, go to the
|
|
<i>Settings</i> menu and check <i>Assemble operation applies to all
|
|
files in current directory.</i> Subsequently, the assembler will assemble
|
|
the current file as the "main" program and also assemble all other assembly
|
|
files (*.asm; *.s)
|
|
in the same directory. The results are linked and if all these
|
|
operations were successful the program can be executed. Labels that are
|
|
declared global with the ".globl" directive may be referenced in any of the
|
|
other files in the project. There is also a setting that permits
|
|
automatic loading and assembly of a selected exception handler file. MARS uses
|
|
the MIPS32 starting address for exception handlers: 0x80000180.
|
|
|
|
|
|
<li><b>Execution</b>: Once a MIPS program successfully assembles, the
|
|
registers are initialized and three windows
|
|
in the Execute tab are filled: <i>Text Segment</i>, <i>Data Segment</i>,
|
|
and <i>Program Labels</i>. The major execution-time features are described below.
|
|
|
|
<li><b>Labels Window</b>: Display of the Labels window (symbol table) is
|
|
controlled through the Settings menu. When displayed, you can click on any label
|
|
or its associated address to center and highlight the contents of that address
|
|
in the Text Segment window or Data Segment window as appropriate.
|
|
</ul>
|
|
|
|
<p>The assembler and simulator are invoked from the IDE
|
|
when you select the <i>Assemble</i>, <i>Go</i>,
|
|
or <i>Step</i> operations from the <i>Run</i> menu or their corresponding
|
|
toolbar icons or keyboard shortcuts. MARS messages are displayed on the
|
|
<i>MARS Messages</i> tab of the message area at the bottom of the screen.
|
|
Runtime console input and output is handled in the <i>Run I/O</i> tab.
|
|
<p>
|
|
<hr>
|
|
<p>
|
|
This document is available for printing on the MARS home page
|
|
<tt><b>http://www.cs.missouristate.edu/MARS/</b></tt>.
|
|
</body>
|
|
</html> |