spim man page on DragonFly

Man page or keyword search:  
man Server   44335 pages
apropos Keyword Search (all sections)
Output format
DragonFly logo
[printable version]

spim(1)								       spim(1)

NAME
       spim - A MIPS32 Simulator

SYNTAX
       spim   [-asm/-bare	 -exception/-noexception       -quiet/-noquiet
	    -mapped_io/-nomapped_io
       -delayed_branches      -delayed_loads
       -stext  size	  -sdata  size	     -sstack  size	 -sktext  size
	    -skdata size      -ldata size      -lstack size	 -lkdata size
       -file file <args> -execute file <args> ]

DESCRIPTION
       SPIM  S20 is a simulator that runs programs for the MIPS32 RISC comput‐
       ers. SPIM can read and immediately execute  files  containing  assembly
       language or MIPS executable files.  SPIM is a self-contained system for
       running these programs and contains a debugger and interface to	a  few
       operating system services.

       SPIM comes in two versions.  The plain version is called spim.  It runs
       on any type of terminal.	 It operates like most programs of this	 type:
       you  type  a  line  of text, hit the return key, and spim executes your
       command.	 The fancier version of SPIM is called xspim.  It uses the  X-
       window system, so you must have a bit-mapped display to run it.	xspim,
       however, is a much easier program to learn and use because its commands
       are  always  visible  on the screen and because it continually displays
       the machine's registers.

OPTIONS
       spim has many options:

       -asm	 Simulate the virtual MIPS machine provided by the  assembler.
		 This is the default.

       -bare	 Simulate  a  bare MIPS machine without pseudo-instructions or
		 the additional addressing modes provided  by  the  assembler.
		 Implies -quiet.

       -exception
		 Load  the  standard exception handler and startup code.  This
		 is the default.

       -noexception
		 Do not load the standard exception handler and startup	 code.
		 This exception handler handles exceptions.  When an exception
		 occurs, SPIM jumps to location 0x80000080, which must contain
		 code  to  service the exception.  In addition, this file con‐
		 tains startup code that invokes the  routine  main.   Without
		 the startup routine, SPIM begins execution at the instruction
		 labeled __start.

       -quiet	 Print a message  when	an  exception  occurs.	 This  is  the
		 default.

       -noquiet	 Do not print a message at exceptions.

       -mapped_io
		 Enable the memory-mapped IO facility.	Programs that use SPIM
		 syscalls to read from the terminal cannot  also  use  memory-
		 mapped IO.

       -nomapped_io
		 Disable the memory-mapped IO facility.

       -delayed_branches
		 Simulate  MIPS's  delayed  control transfers by executing the
		 instruction after a branch, jump, or call before transferring
		 control.   SPIM's  default  is to simulate non-delayed trans‐
		 fers, unless the -bare flag is set.

       -delayed_loads
		 Simulate MIPS's original, non-interlocked load	 instructions.
		 SPIM's	 default  is to simulate non-delayed loads, unless the
		 -bare flag is set.

       -stext size -sdata size -sstack size -sktext size -skdata size
		 Sets the initial size of memory segment seg to be size bytes.
		 The  memory segments are named: text, data, stack, ktext, and
		 kdata.	 The text segment contains instructions	 from  a  pro‐
		 gram.	 The data segment holds the program's data.  The stack
		 segment holds its runtime stack.  In addition	to  running  a
		 program,  SPIM	 also executes system code that handles inter‐
		 rupts and exceptions.	This code resides in a	separate  part
		 of  the  address  space called the kernel.  The ktext segment
		 holds this code's instructions	 and  kdata  holds  its	 data.
		 There	is  no	kstack	segment since the system code uses the
		 same stack as the program.  For example, the  pair  of	 argu‐
		 ments	 -sdata	 2000000  starts  the  user  data  segment  at
		 2,000,000 bytes.

       -ldata size -lstack size -lkdata size
		 Sets the limit on how large memory segment seg can grow to be
		 size  bytes.	The  memory  segments  that can grow are data,
		 stack, and kdata.

       -file file <args>
		 Load and execute the assembly code in the file with arguments
		 <args>.

       -execute file <args>
		 Load  and execute the MIPS executable (a.out) file with argu‐
		 ments <args>. Only works on systems using a MIPS processors.

BUGS
       Instruction opcodes cannot be used as labels.

SEE ALSO
       xspim(1)
       James R. Larus, ``SPIM S20: A MIPS  R2000  Simulator,''	included  with
       SPIM distribution.

AUTHOR
       James  R.  Larus,  Computer  Sciences Department, University of Wiscon‐
       sin-Madison.  Current address: James R Larus (larus@microsoft.com), Mi‐
       crosoft Research.

								       spim(1)
[top]

List of man pages available for DragonFly

Copyright (c) for man pages and the logo by the respective OS vendor.

For those who want to learn more, the polarhome community provides shell access and support.

[legal] [privacy] [GNU] [policy] [cookies] [netiquette] [sponsors] [FAQ]
Tweet
Polarhome, production since 1999.
Member of Polarhome portal.
Based on Fawad Halim's script.
....................................................................
Vote for polarhome
Free Shell Accounts :: the biggest list on the net