This dialog box allows the user to set the conditions under
which battles are run. Drop-down list boxes provide several pre-defined values
for each parameter, but any number may be typed in instead. Numbers may be specified
using decimal notation (the default) or hexadecimal (a dollar sign followed by
hex digits).

·
Core Size can be fixed, staying the same for each
round, or random, varying between maximum and minimum values.
o
Fixed: Core size can be set to any value from 16 to
134,218,000 (hex $8000000). Note that the core size may be limited by available
memory; each Core location requires 12 bytes of RAM.
o
Random: The first box becomes the maximum size, and
another box appears for the user to type in the minimum size. Note: Warriors
are compiled once for each matchup, using the maximum core size. Therefore,
warrior source code should not refer to the predefined variable CORESIZE when
the core size is set to vary randomly each round.
·
Parameters
o
Max Cycles: the number of instructions each warrior
executes before a battle is declared to be a draw. The maximum number is
$80000000.
o
Max Processes: the maximum number of live processes
each warrior can have. It can be set to any number from 1 to $80000000.
o
Max Length: the maximum number of compiled
instructions a warrior can have.
o
Min Distance: the minimum number of core locations
separating any two warriors when they are initially placed into Core.
o
Read Limit: the maximum distance over which one
instruction may read a value from another memory location. The limit may be
given as a fraction of the core size using the drop-down box, or a numerical
value may be typed in.
o
Write Limit: the maximum distance over which one
instruction may write a value to another memory location. The limit may be
given as a fraction of the core size using the drop-down box, or a numerical
value may be typed in.
o
P-space size: the size of the “personal” or “private”
memory cache for each warrior, accessible using the STP and LDP instruction
codes. The size may be given as a fraction of the core size using the drop-down
box, or a numerical value may be typed in.
·
Warrior Positions
o
At the beginning of each battle, one warrior starts
at location 0. The location of the second warrior may be random, fixed (for the
first round only) at a location typed into the text box at the bottom, or set
to permutate through all possible positions.
o
The seed used to set the Random number generator
(RNG) can be random, a checksum based on the compiled warrior codes of all warriors,
or a fixed number typed into the text box. It is set at the beginning of each
tournament.
·
The Warrior List shows the list of warriors that will
participate in the next tournament. The total number of warriors in the list is
shown to the right of the list box.
o
New: Brings up an empty Edit
Warrior window, where the source code for a new warrior may be typed in.
o
Add: Brings up a file browser, where the user may
select one or more warriors to add. A warrior list file may also be selected,
which will add all the warriors in the list.
o
Remove: Select one or more warriors in the list, then
click Remove to remove them from the list.
o
Remove All: Clears the warrior list.
o
Edit: Brings up the Edit
Warrior window with the selected warrior.
o
Standards: selects which Redcode language standards
will be used when compiling warriors.
o
Sort list: Sorts the warrior list alphabetically.
o
Save list: Saves the warrior list to a text file.
·
Initial Instruction
o
The instruction that fills empty Core at the
beginning of each battle can be set to DAT 0,0 or to any custom instruction. If
Random is selected, each empty location of Core is set to a random combination
of opcodes, modifiers, modes, and A and B values.
·
Tournament options
o
Melee: All warriors battle simultaneously. For this
tournament type, there is only a single matchup (combination of warriors).
o
Round Robin: Each warrior battles every other
warrior, one on one. There are N*(N-1)/2 matchups, where N is the number of
warriors in the warrior list.
o
Challenge: The warrior selected by the drop-down box
battles each of the other warriors, one on one. When a new warrior is chosen to
be the Challenger, it is moved to the top of the warrior list. There are N-1
matchups.
o
Benchmark: Each warrior in the warrior list battles
each warrior in the benchmark list. The benchmark may consist of one warrior or
a warrior list; selecting the Benchmark radio button brings up a file browser.
There are N*B matchups, where B is the number of benchmark warriors.
o
“Rounds per matchup” determines how many battles are
fought by each matchup.
o
To have each warrior battle itself during
tournaments, check the Self Fights check box.
o
Tip: Before starting a lengthy Round Robin or
Challenge tournament, select Melee and click OK to close the Settings dialog.
This will compile all warriors, and alert you if any of them fail to compile
successfully. If all warriors compile, you may change the tournament type back
to Round Robin or Challenge and then start the tournament.
·
Save Settings saves the current parameters (including
the settings in the Options dialog box) to a
configuration file. The warrior list is not saved. Settings may be saved either
to the default file, called default.cfg (parameters will be read from this file
the next time CoreWin is started), or to a user-specified file, which may be
loaded at any later time.
·
Load Settings loads all parameters from a
configuration file (either the default file or a user-specified file). If the
default file does not exist, hard-coded defaults will be used.
·
The OK button sets the Core parameters, cancels the
current battle, and sets up a new tournament.
·
The Cancel button keeps the old parameters and does
not disturb the current battle.