
                  PC-version of Bill Shubert's
                   King of the Hill Core War


. compiled using Turbo C 1.5, small memory model; exec size 20353 bytes
(lzexe-compressed). Runs in 76K memory (!); tested under DESQView and
Windows. 500 to 1000 instructions/sec on my 386SX/20MHz PC-clone.

. reclaimed storage from the Redcode parser and reduced storage size
of core addresses from 10 to 5 bytes to fit everything into a 64K data
segment.

. substituted the X-Windows display with a simple color-textmode display
(similar to CoreWar Pro) using direct-video writes for speed.

. interpreter can be interrupted to show the current score, refresh the
display (if in display mode) or exit. No debugger (yet?)

Direct all bug reports to me, as I'm sure that Bill's original source was
bug-free :-)

Enjoy, Stefan (stst@vuse.vanderbilt.edu)
Feb 10 1992


------ Bill's readme included with the source -------------------------------


OK, heres the sources.

   Change it all you want.  But remember, if you happen to look through 'em, if
you keep thinking "My god, this is awful stuff", remember I wrote it by
adding a line or two every time I had to compile a program during work, etc.
so it was completely hacked together a little bit at a time and I did NO
work on improving it or cleaning it up afterwards.

   Also, it is almost completely geared to King of the Hill-style tournaments.
It has three modes:

% corewar foo.rc

assembles foo.rc and prints out most of the mail message my demon returns.

% corewar -rounds 10 foo.rc blat.rc
10 5 5
%

assembles them both, lets 'em fight, and returns the results like as you see.
In this case, foo won 10 times, blat won 5 times, and there were 5 ties.

   The third, most-fun mode, is X mode.  To use it, just leave out the
"-rounds 10" switch.  Try:

% corewar foo.rc blat.rc

and presto!  You see your fight GRAPHICALLY!  This is one of the world's 5
worst X interfaces (the other four including xman and xcalc) but I'm working
on it.  The code for the X interface is even worse than the rest.

   There are lots-o-options to set play.  Try "corewar -help" for a
list of them.  The standard hill is run with no special switches; the
experimental hill uses "-all_modes -spl_time".

   If the X display goes to fast, using "-max_speed 100" will give you a
maximum speed of 100 cycles per second.  Nice if you're lucky enough to have
a fancy RISC workstation.  Unnecessary for people like me on old 68000 boxes.

   I don't really expect people to use this a whole lot for debugging because
of the half-implementated graphical interface.  But it IS 100% King of the
Hill compatible (in fact, it IS King of the Hill) so you can play with the
experimental hill, etc. if you want.
   Feel free to mail me bug reports.  Suggestions are nice, but I have too
much to do already so don't expect me to implement them.
                                -Bill (wms@iwarp.intel.com)
