glenda.party
term% ls -F
term% pwd
$home/manuals/unix_v8/6/mars
term% cat index.txt
MARS(6)                          Games Manual                          MARS(6)



NAME
       mars - memory array redcode simulator

SYNOPSIS
       mars [-dfhmp] [-cqs<value>] file1 file2 ...

DESCRIPTION
       Mars  is a simulator for the Redcode machine specified by Dr. Kee Dewd‐
       ney in the "Computer Recreations" column in the May 1984 issue of  Sci‐
       entific  American.  The command line contains any arguments followed by
       a list of object code file names.  The easiest way to create an  object
       file  is  to  use  the redcode(6) command to a assemble the object file
       from a redcode source file.

OBJECT FILES
       An object file contains three header lines indicating the name  of  the
       program,  the  length of the program, and the offset from the beginning
       of the starting location.  Here is a sample redcode  object  file,  for
       the Dwarf program:

            name dwarf
            length 4
            start 1
            00000007999
            20000517999
            10000027998
            41799800000

INSTRUCTION FORMAT
       The instruction format is an 11 digit decimal string, as follows:

            0    1    2-5  6    7-10
            +-------+-------+-------+-------+-------+
            |opcode |mode1 |arg1     |mode2    |arg2     |
            +-------+-------+-------+-------+-------+

OPTIONS
       Options  allow  for  tracing  execution, for graphically displaying the
       progress of each program, and for analyzing and dumping  memory  before
       and after execution.  For example, the following command:

            mars -s1234 -f -c20000 dwarf.obj gemini.obj imp.obj

       specifies  that  imp,  dwarf, and gemini are to be run together, with a
       fullscreen display for 20000 cycles using a random number seed of 1234.

       -cN    cycles option, determines the maximum number of cycles for  this
              run.  The default is 10000.

       -d     debug  option, causes the execution to be traced in excrutiating
              detail.

       -f     fullscreen option, causes the execution to be displayed  graphi‐
              cally on any terminal supported by curses(3).

       -h     holes option, causes a description of memory usage to be printed
              after execution terminates.

       -m     memory dump option, causes memory to be dumped before and  after
              execution terminates.

       -p     procedure  dump option, similar to -m option, except only memory
              near each program counter is dumped.

       -qN    quit option, indicates the minimum number of  programs  required
              to be alive.  For example, if -q3 is specified, execution termi‐
              nates as soon as there  are  fewer  than  three  programs  still
              alive.   -q1  specifies  that execution continues as long as any
              program is alive.  The default is to quit when there is but  one
              program still running.

       -sN    random  seed  option, specifies a random seed for this run.  The
              default is 0 (i.e.  a random seed based on the time).

SEE ALSO
       redcode(6)

BUGS
       None known.

HISTORY
       20-May-84 Michael Mauldin (mlm) at CMU
              Created.



                                    5/20/84                            MARS(6)