A midweek review of Corewar
February 9, 1994
-------------------------------------------------------------------------------
I. The Standings:
# %W/ %L/ %T Name Author Score Age
1 46/ 37/ 17 SJ-4a J.Layland 154 108
2 37/ 26/ 37 Match Stick c w blue 149 86
3 46/ 44/ 10 Iron Gate 1.1 Wayne Sheppard 148 71
4 44/ 40/ 16 Blitzkrieg Mike Nonemacher 148 101
5 41/ 35/ 24 Winter Werewolf 3 W. Mintardjo 148 917
6 42/ 37/ 22 Christopher Steven Morrell 147 11
7 45/ 44/ 10 Medusa's v5.1 W. Mintardjo 146 111
8 34/ 27/ 39 NC decoy Wayne Sheppard 141 192
9 33/ 26/ 41 Killer instinct Anders Ivner 140 171
10 38/ 36/ 27 Genocide Mike Nonemacher 140 3
11 30/ 20/ 50 Cannonade P.Kline 140 180
12 28/ 17/ 54 test t6 P.Kline 140 1
13 41/ 44/ 14 test-tw Fredrik Ohrstrom 139 75
14 37/ 38/ 25 Clown v8.1 P.E.M & E.C 136 190
15 30/ 24/ 46 Imprimis 7 P.Kline 136 839
16 27/ 19/ 54 ttti nandor sieben 136 187
17 36/ 36/ 28 Double V1.1 P.E.M & E.C 135 8
18 27/ 19/ 54 Walk Between the Raindrop Mike Nonemacher 134 44
19 34/ 37/ 30 Keystone t13 P.Kline 131 446
20 25/ 22/ 53 test Mike Nonemacher 128 2
21 2/ 98/ 0 looking P.Kline 7 0
-------------------------------------------------------------------------------
II. The Basics:
-Core War Archives, including many helpful articles, warrior source
code, and reliable emulators, are available via anonymous FTP
at soda.berkeley.edu in pub/corewar.
-FAQ for this newsgroup is available via anonymous FTP at
rtfm.mit.edu as pub/usenet/news.answers/games/corewar-faq.z
-------------------------------------------------------------------------------
III. The Scoop:
This week's standings show J. Layland's remarkable SJ-4a program on top
of the Hill. Layland has combined a 3-line bomber and b-scanner into
a very strong competitor. That and a 2-pass spl/dat core clear are
putting the heat on some excellent warriors.
S. Morrell has challenged us with a new vampire (the only one on KotH to my
knowledge). "Throw your best anti-vamp against it" he says :-) Thought
we killed those guys off for good, but no, they just wait for a full moon
and rise up again.
Then there is the mysterious Match Stick which when last published was
a paper designed to overtake other paper as well as imps and stones.
Somewhere in the last weeks Match Stick took a big jump toward the top
of KotH and has stayed in the top 5 or so ever since. Any suggestions for
the rest of us, CW?
-------------------------------------------------------------------------------
IV. The Outlook:
4 35/ 28/ 37 Match Stick c w blue 141 1
5 39/ 34/ 27 Double V1.1 P.E.M & E.C 143 1
6 39/ 38/ 23 Christopher Steven Morrell 139 1
6 40/ 37/ 22 Six Counts of Genocide v2 Mike Nonemacher 144 1
7 38/ 39/ 24 Genocide Mike Nonemacher 136 1
9 27/ 20/ 53 Walk Between the Raindrop Mike Nonemacher 134 1
12 38/ 41/ 21 My wife is pregnant! Steven Morrell 136 1
-------------------------------------------------------------------------------
V. The Quick Look:
19 14/ 39/ 47 Chaos v2! Gil Richard 89 1
20 17/ 45/ 38 Multibom Gil Richard 90 1
20 23/ 59/ 18 Smartbomb 4.1 Devin Kilminster 87 1
21 0/ 45/ 55 wipe-me Richard 55 0
21 5/ 61/ 34 ImpBuster Gil Richard 50 0
21 5/ 80/ 15 Smartbomber Gil Richard 29 0
21 7/ 88/ 5 The Full-Auto Hopsplat Gu Gil Richard 26 0
21 8/ 75/ 17 Clamp Gil Richard 40 0
21 12/ 81/ 7 Tank Mark Tuempfel 43 0
21 13/ 73/ 14 A Dwarf Gil Richard 53 0
21 13/ 85/ 2 xxx AMP 42 0
21 13/ 86/ 1 NO3 AMP 40 0
21 14/ 78/ 9 cascade 1 Steve Gunnell 49 0
21 29/ 33/ 38 Yop La Boum v2.2 P.E.M & E.C 124 0
21 30/ 52/ 18 Looks Like Lines to Me Steven Morrell 107 0
-------------------------------------------------------------------------------
VI. The Hint:
More and more fighters are going to a 2-pass spl/dat core-clear,
filling the entire core with spl-zero then wiping it with dat's.
Of the warriors on KotH: SJ-4a, Winter Werewolf 3, and Blitzkrieg all
claim to be using a double core-clear (tho' maybe that's what S. Morrell
means by "my sister-in-law is having twins" :-). And these are proving
to be some very tough hombres.
Here is one way to set up a spl/dat core-clear:
db dat <c1-ptr2-1,#0 ; <- core-clear dat bomb, also imp-gate
dat #0
dat #0
ptr1 dat #c1 ; <- move from this pointer
c1 spl 0,<-ptr2 ; <- core-clear spl bomb, also imp-gate
c2 mov @ptr1,<ptr2 ; <- does all the moves
c3 jmp -1 ;
ptr2 dat <db-5 ; <- move to this pointer
end c1
Notice that c2 is doing all the moves, based on two pointers. The first
pass is as shown, moving c1 through core, until it overwrites ptr2.
Then our code looks like this:
db dat <c1-ptr2-1,#0 ;
dat #0
dat #0
ptr1 dat #c1 ;
c1 spl 0,<-ptr2 ; spl 0,-3
c2 mov @ptr1,<ptr2 ; mov @-2,<2
c3 jmp -1 ; jmp -1
ptr2 spl 0,<c1 ; spl 0,-3
The next move decrements ptr2 and overwrites ptr1:
db dat <c1-ptr2-1,#0 ;
dat #0
dat #0
ptr1 spl 0,<-3 ; spl 0,-3
c1 spl 0,<-ptr2 ; spl 0,-3
c2 mov @ptr1,<ptr2 ; mov @-2,<2
c3 jmp -1 ; jmp -1
ptr2 spl 0,<c1 ; spl 0,-4
>From here the program moves the dat-bomb at db through core until it
overlays c2, turning the spl-0 and dat < into an imp-gate:
db dat <c1-ptr2-1,#0 ;
dat #0
dat #0
ptr1 spl 0,<-3 ;
c1 spl 0,<-3 ; <- imp-gate
c2 dat <-4,#0 ; <- imp-gate
c3 dat <-4,#0
ptr2 dat <-4,#-2
As always this works best if parts of the above code can serve double duty
during the previous phase(s) of your program. In particular, ptr2 can be
any instruction, not necessarily 'dat'. And there's room for some code
between ptr1 and c1.
The spl-dat core-clear is very effective against replicators, and the
resulting gate deters the standard imp-spiral. There is also an insidious :-)
affect on Cannonade-style gate-busting spirals. The 2-pass clear seems
to gum up the works on putting the gate-passing code beyond the gate. Yuck!
-------------------------------------------------------------------------------
VII. The End:
Paul Kline
pk6811s@acad.drake.edu