

   GLOSSARY
   --------

     
 A-LOCATION       The cell address referenced by the contents of operand A.

 A-VALUE          The immediate value of operand A.

 ADDRESS          The number between 0 and 31999 which identifies a unique
                  cell in the MARS memory.

 ADDRESSING MODE  The way in which an operand of an instruction is treated;
                  ie. whether it is treated as a reference to a cell, or an
                  immediate value.

 ASSEMBLER        -> See LOCATION

 B-LOCATION       The cell address referenced by the contents of operand B.

 B-VALUE          The immediate value of operand B.

 BOMB             A general term for 'mov'ing an invalid instruction into a
                  place in memory with the intention of causing the other
                  side to execute it, and therefore crash. (ie.
                  'mov #0,@bombpt' in program 'DWARF').

 CELL             (=LOCATION) The fundemental unit of MARS memory which holds
                  either one MARS instruction or a data value (Dat ..).
              
 COMMENT          The part at the end of a REDCODE statement (line of code),
                  identified by a *, ! or > which is ignored by the compiler,
                  but can give helpful information about the program.
             
 COMPILER         (=ASSEMBLER) The part of Corewars which will convert a
                  REDCODE source text file into actual MARS instructions, as 
                  understood by the MARS interpreter.

 CORE             The memory system in use in some of the first computers,
                  and which in Corewars refers to the central memory in which
                  the programs battle.

 DIRECTIVE        A symbol recognised by the compiler which indicates a
                  special action is to performed, ie. a comment or addressing
                  mode is going to be used.

 FIELD            A part of an instruction, ie. opcode or operand.
          
 IMMEDIATE        An addressing mode, identified by a '#', where the data
                  used by the instruction is the value of the operand itself.

 IMP              Name of one of the shortest programs ever written in RED-
                  CODE; 'mov 0,1' which forms a part of many larger programs.

 INDIRECT         An addressing mode, identified by a '@', where the data
                  used by the instruction comes from the cell pointed to by
                  the cell pointed to by the operand.
         
 LABEL            A textual name used in assembler which refers to one spec-
                  ific cell, which can be used instead of a cell number for
                  simplicity, and is translated into an offset whenever used.
                  When declaring a label, a '.' precedes the text symbol,
                  which is made of a combination of alphabetic and numeric
                  characters, except for the first letter which must be
                  alphabetic, and the maximum length is 11 characters.

 LOCATION         -> See CELL

 MARS             'Memory Array Redcode Simulator' - the imaginary computer
                  system which runs the REDCODE instruction set.

 MEMORY           (=CORE) The central area of the simulated MARS computer
                  which consists of a vast array of 32000 cells, in which the
                  two sides are stored and manipulate data.

 OPCODE           The part of a location which identifies the particular
                  operation to be performed (ie mov, add, sub etc.).

 OPERAND          The numeric part of a cell which is used by the instruction
                  in that cell in a defined way, eg. as a cell pointer or
                  immediate value for comparison or transfer.

 POST-DECREMENTAL INDIRECT   An addressing mode, identified by a '<', where
                  the data used by the instruction comes from the cell
                  pointed to by the cell pointed to by the operand (like the
                  indirect mode), except every time the data is read or
                  written, the cell pointer (contents of cell pointed to by
                  the operand) is decremented by one.

 REDCODE          The name for the instruction set used by the MARS computer,
                  which consists of about ten simple instructions, and is
                  all position-independent (relocatable), containing, there-
                  fore, no absolute references.
        
 SINGLE STEP      The process of running the MARS simulator one instruction
                  at a time, requiring the user's intervention to step for-
                  ward to the next.

 SOURCE CODE      This is a language which cannot be directly executed by
                  the hardware of a computer (or simulation of hardware as is
                  the case with MARS), but needs conversion into a more basic
                  form which is understood by the hardware.
                  
 SPLIT            A line of execution, of which there can be 64 maximum on
                  either side, which will continue executing the next seq-
                  uential instruction every time unless instructed otherwise,
                  and

 TIMEOUT          When the number of executions has reached the user defined
                  limit, without a result, and the game is considered a
                  draw.

 TOURNAMENT       A system where a fixed number of games is played concurr-
                  ently, and the results pooled to give a more realistic
                  idea of the two different programs' relative merit.