From: Beppe Bezzi Subject: Re: Round 5 rules Date: 1996/11/01 Message-ID: #1/1 newsgroups: rec.games.corewar Franz wrote: >> to tell what part of your warrior will be used in each round but, because >> I'm an evil man >:->, I'll remove them and make a check for MAXLENGHT <= 40, >> in practice you have forty lines of code to split in all environments. >> EQU don't count as lines obviously. The -c 79999 and 80001 are to allow you >> discriminate the four rounds. > >Hmmm ... call me stupid .... but I don't really get this ... doesn't pmars >take the rofs out? so you could call pmars with pmars -l 40 ? ... or does >it mean that the whole warrior even with the different enviroments has to >fit in 40 lines? ... ok .... or do I still not get it ... If you use: for SOME_CONDITION [40 lines of code] rof for A_DIFFERENT_CONDITION [40 lines of code] rof and you compile, pmars will show a 40 lines warrior if one of the above conditions is true, while removing the for/rof lines your warrior will be 80 lines long. Your warrior has to fit in 40 lines considering ALL different parts that have to work or less according to the environment. >Is that 30 in the overall scores in all four enviroments? > Yes. Partial scores will be added, and the sum considered to see if you have won, lost or tied. John K. Wilkinson wrote >Beppe... hmmm... I'm just wondering if I've got this down. The only thing >you're going to do before checking if the warrior is less than 40 in length >is to comment out any line that starts with "for" or "rof"? You are going >to leave everything else exactly the same? No other restrictions on the >warrior, except that it compile for each round? > Commenting out for/rof with a text editor is the simpler think I worked out to check if the warrior fits in 40 lines adding all single parts. If you do something like: for CONDITION1 [some code] rof for CONDITION2 [some code] rof for 10 ^^^^ [some code] rof the third block will NOT be commented out. I don't want to spend my time searching the exact wording (BTW in a foreign language) to disallow that, but I'm sure all you have well understood what I mean: maximum 40 lines of code overall, to be used or not in various environments at your pleasure using the for/rof blocks From: jklewis@ren.us.itd.umich.edu (John K. Lewis) Subject: Re: Baby Hill Date: 1996/11/01 Message-ID: <55dmps$isr@lastactionhero.rs.itd.umich.edu>#1/1 references: <32796419.7BB17A25@azstarnet.com> newsgroups: rec.games.corewar Franz (franz@azstarnet.com) wrote: : The experimental hill ain't no good ... lets put up this interesting : hill so lets agree on these specs and go ahead with it ... I am interested in a Baby Hill. That's two or three votes for. How many do you need tuc? -- < john k. lewis > < jklewis@umich.edu > < 77325 > < sig.virus 1.5 > From: Franz Subject: Tiny Hill Date: 1996/11/01 Message-ID: #1/1 newsgroups: rec.games.corewar come on lets agree on this ... I just gotta try it out... Franz From: Anton Marsden Subject: Re: Speed of simulators Date: 1996/11/01 Message-ID: #1/1 references: <3275E243.5F15@cam.ac.uk> newsgroups: rec.games.corewar On Tue, 29 Oct 1996, Philip Kendall wrote: > Just a quickie: > Has anyone run benchmarks on the simulators to see which is the fastest; > also (approximately) how much quicker is pMARS when compiled without the > debugger? The debugger shouldn't slow down the simulator much. It is possible to code it so that it doesn't slow down the simulator at all (using an interrupt handler - DOS). I'm thinking of writing a simulator for the 8086/80286 that is as fast as possible - I have a 286 laptop (along with a 486) and PMARS runs so slow on it that it's not worth using at all. To give yourself an idea of the speeds possible, get mercury2.zip from the ftp archives - it only handles '88 code and requires a 386. Maybe you could do some benchmark testing :-) From: 'Fumi' Fumitaka Hayashi Subject: Re: liquid health Date: 1996/11/01 Message-ID: #1/1 references: <199610301031.EAA03764@mail.utexas.edu> newsgroups: rec.games.corewar On 30 Oct 1996 jwilkinson@mail.utexas.edu wrote: > >for complete nutritional information per ounce. Mention this mailing > >and for a limited time receive FREE shipping and handling on your first > >order! > > Liquid Health is all very well and good... but I'm in the market for > Liquid Death..! Know where I can get some? :/ > Strangely enough, Liquideath is the name of the band me and my high school friends played in... > > +----------------------------------------------------------------------------+ I Fumitaka Hayashi I I I I Dept. of Immunology I I University of Washington I I check out my much improved web page: I I http://weber.u.washington.edu/~hayashi/index.html I +----------------------------------------------------------------------------+ From: joshua Subject: Re: Pizza hill question Date: 1996/11/01 Message-ID: <55c6o5$o7d@zoom2.telepath.com>#1/1 references: <199610282008.OAA18800@mail.utexas.edu> <558gon$k68@charnel.ecst.csuchico.edu> newsgroups: rec.games.corewar well, *I* still like the tiny hill idea... but if you want a new hill, my suggestion would be bigger (say 80k core instead of 8k), but with the same instruction limit. this would limit the effectiveness of Qscans...it seems like every warrior has to have either qscan, qboot, or pspace these days...and it gets old. down with pspace! harleyQ2 From: joshua Subject: Re: Pizza hill question Date: 1996/11/01 Message-ID: <55c6rn$o99@zoom2.telepath.com>#1/1 references: <199610282008.OAA18800@mail.utexas.edu> <558gon$k68@charnel.ecst.csuchico.edu> newsgroups: rec.games.corewar well, *I* still like the tiny hill idea... but if you want a new hill, my suggestion would be bigger (say 80k core instead of 8k), but with the same instruction limit. this would limit the effectiveness of Qscans...it seems like every warrior has to have either qscan, qboot, or pspace these days...and it gets old. down with pspace! harleyQ2 From: stefan.strack@mcmail.vanderbilt.edu Subject: Re[2]: Speed of simulators Date: 1996/11/02 Message-ID: <9610028469.AA846976550@in2.mcmail.vanderbilt.edu>#1/1 newsgroups: rec.games.corewar Franz wrote: >> > Just a quickie: >> > Has anyone run benchmarks on the simulators to see which is the fastest; >> > also (approximately) how much quicker is pMARS when compiled without the >> > debugger? >> >> The debugger shouldn't slow down the simulator much. It is possible to >> code it so that it doesn't slow down the simulator at all (using an >> interrupt handler - DOS). pMARS without the debugger (SERVER binary) is only 2% faster. If you look in sim.c, there's a single conditional that tests for a break condition -- an insignificant overhead. The UNIX version of pMARS indeed uses cdb() as an interrupt handler. >> [..] >yes pMARS isn't the best on speed ... you could write a VERY decent and >fast simulator in C My, my, I feel like I have to come to Albert Ma's defense here; you're undoubtedly hurting his feelings. Albert, who wrote both speed-demon Mercury2 and the pMARS simulator core, spend countless hours pouring over compiler output, optimizing the sim.c inner loop, while still maintaining portability. If you look closely, you'll even find some DOS specific hacks that are translated straight from Mercury2 (search for "DOS16"). >I have hacked pmars once to be about 10% faster (BUT VERY UNSTABLE!) .. >and I lost the source somewhere ... if i find it i'll pass it along ... :-) :-) :-) >or one more idea .. instead of putting actuall instructions into the >core try putting pointers to functions in there .. and you would have a >function for each instruction, modifier, address mode combination .... >that would be pretty large but would be FAST .. you would just call the >core location as a function ... NO testing ... 19 instructions * 7 modifiers * 8 address modes * 2 = 8512 functions! Keep in mind that speed also depends on code size: an inner loop of this bulk cannot be cached effectively. The part of sim.c that can still be tweaked for speed are the A/B address decoders. To implement the A-indirect modes I simply added a few more leafs to the if/else tree. This can be recoded into a big switch/case statement, saving a couple of conditionals and redundant assignments. I might get to it tomorrow. >Franz -Stefan From: Franz Subject: Re: Re[2]: Speed of simulators Date: 1996/11/02 Message-ID: newsgroups: rec.games.corewar > >> > Just a quickie: > >> > Has anyone run benchmarks on the simulators to see which is the fastest; > >> > also (approximately) how much quicker is pMARS when compiled without the > >> > debugger? > >> > >> The debugger shouldn't slow down the simulator much. It is possible to > >> code it so that it doesn't slow down the simulator at all (using an > >> interrupt handler - DOS). > > pMARS without the debugger (SERVER binary) is only 2% faster. If you look in > sim.c, there's a single conditional that tests for a break condition -- an > insignificant overhead. The UNIX version of pMARS indeed uses cdb() as an > interrupt handler. > > >> [..] > >yes pMARS isn't the best on speed ... you could write a VERY decent and > >fast simulator in C > > My, my, I feel like I have to come to Albert Ma's defense here; you're > undoubtedly hurting his feelings. Albert, who wrote both speed-demon Mercury2 > and the pMARS simulator core, spend countless hours pouring over compiler > output, optimizing the sim.c inner loop, while still maintaining portability. > If you look closely, you'll even find some DOS specific hacks that are > translated straight from Mercury2 (search for "DOS16"). yes I know it's a very good and fast code now, all i'm saying is with a bit more overhead (memory and program length) and sacrificed portability i think it could be made faster, I'm too lazy anyway:) who needs it to be portable :) > >I have hacked pmars once to be about 10% faster (BUT VERY UNSTABLE!) .. > >and I lost the source somewhere ... if i find it i'll pass it along ... > > :-) :-) :-) ok well maybe not 10% :) .... i did it with the old source it was '94 but no extended stuff yet .. can't remember the version ... back then i really sucked at coding redcode, well i still suck at that, just not as much ... I wrote about 3 or 4 mars simiulators (only one usable) and only one that hhad enough speed ... i sometimes gen an urge to make something but stop after a few hours ... right now I want to do an unbeatable gomoku engine .. i got the algorythm down but i just don't have the patience to write it :) ... my current gomoku program seriously sucks, though i spent so much time on it already ( I rewrote the algorythm a lot of times) the new algorythm really is unbeatable but has no offensive steps it's a defensive strategy which is really unbeatable unless someone know it better, a person knowing the strategy can beat anybody i'm talking about computers ... I will definately try to hack that before making another feeble mars (pMARS) attempt :) ... but last i worked on that was a few months ago ... man am i lazy ... :) > >or one more idea .. instead of putting actuall instructions into the > >core try putting pointers to functions in there .. and you would have a > >function for each instruction, modifier, address mode combination .... > >that would be pretty large but would be FAST .. you would just call the > >core location as a function ... NO testing ... > > 19 instructions * 7 modifiers * 8 address modes * 2 = 8512 functions! > Keep in mind that speed also depends on code size: an inner loop of this > bulk cannot be cached effectively. oops .. oh well it was just an idea, but tehre is a lot of stuff that don't need separate functions, like spl.i 1 and spl.b 1 ... does exactly the same thing ... but now that i think about it .. it IS a lot of functions .... > The part of sim.c that can still be tweaked for speed are the A/B address > decoders. To implement the A-indirect modes I simply added a few more leafs > to the if/else tree. This can be recoded into a big switch/case statement, > saving a couple of conditionals and redundant assignments. I might get to it > tomorrow. hehehehe ... I don't think I will get to anything next couple of months I have a project now and just got another project and with school ... hmmm ... too much stuff ... and i still wanna make my arcade game multiplayer this year, which i don't think i'll get to anyway ... hmmm on another note ... I now have to use code i did half a year ago and man i'm lost ... it's about an inch thick printout of the source and tehre are almost no comments ... gonna be hell to understand what i was doing ... well a whilke ago i looked at a program listing i did when i was in fifth grade or so (I had a ZX-Spectrum, kewl computer by the way .. get xzx80 for X) ... man that was sloppy programming ... but it was in basic too ... i did a kewl game on it too ... was called gillete man (in english it would be better to call it razor man ... but back then it sounded english enough to me :) ... and we didn't have a printer back then so i used to write the source out on paper if i wantet a "printed" version ... :) ...ahhh .. the good old times ... This completely uselses response that wasted your time for so long was brought to you exclusively by: Franz From: Beppe Bezzi Subject: Re: Pizza hill question Date: 1996/11/02 Message-ID: #1/1 newsgroups: rec.games.corewar At 09.58 01/11/96 -0500, you wrote: >well, *I* still like the tiny hill idea... > >but if you want a new hill, my suggestion would be bigger (say 80k core >instead of 8k), but with the same instruction limit. this would limit >the effectiveness of Qscans...it seems like every warrior has to have >either qscan, qboot, or pspace these days...and it gets old. Existing big hill is 55440 core with max lenght 200, qscans aren't that effective here > >down with pspace! >harleyQ2 > > -Beppe From: Scott Manley Subject: Re: Speed of simulators Date: 1996/11/02 Message-ID: <9611021258.AA07218@alpha3.arm.ac.uk>#1/1 newsgroups: rec.games.corewar > or one more idea .. instead of putting actuall instructions into the > core try putting pointers to functions in there .. and you would have a > function for each instruction, modifier, address mode combination .... > that would be pretty large but would be FAST .. you would just call the > core location as a function ... NO testing ... Tht's a Damn good Idea, and I'm sorry to say I aborted such an attempt a year ago when I started using Alpha's to run Pmars, yes it's true I gave into the 'forget efficiency just get a faster machine trap'. -- Scott Manley (aka Szyzyg) /------ _@/ Mail -----\ ___ _ _ __ __ _ | Armagh Observatory | / __| __ ___| |_| |_ | \/ |__ _ _ _ | |___ _ _ | Armagh | \__ \/ _/ _ \ _| _| | |\/| / _` | ' \| / -_) || | | Northern Ireland | |___/\__\___/\__|\__| |_| |_\__,_|_||_|_\___|\_, | | BT61 9DG. | http://star.arm.ac.uk/~spm/welcome.html |__/ \=====================/ From: sbolting@nemonet.com (Stephen Boltinghouse) Subject: Just try this, it will work Date: 1996/11/02 Message-ID: <139.654193326831@news.nemonet.com> newsgroups: alt.soft-sys.corel.misc,rec.games.corewar,soc.culture.cornish,alt.peace.corps,alt.politics.correct,alt.irc.corroboree,alt.games.cosmic-wimpout,soc.culture.costa-rica,alt.smokers.cough,alt.revolution.counter,alt.music.counting-crows,rec.music.country.old-time,rec.music.country.western,alt.religion.course-miracle,talk.religion.course-miracle,york.pols.course.3590,york.english.course.eng319006a,york.history.course.hist3930a,york.modes-of-reasoning.course.modr1714,york.philosophy.course.modr1714 Take five minutes to read this and it WILL change your life. The Internet has grown tremendously. It doubles in size every 4 months. think about it. You see those 'Make.Money.Fast' posts more and more. That's ... because it WORKS ! So I thought, all those new users might make it work. And I decided to try it out, a few months ago. Besides, whats $5.00, I spend more than that in the morning on my way to work on coffee and cigs for the day. So I sent in my money and posted. Everyone was calling it a scam, but there are SO many new users from AOL, Netcom, etc. they will join in and make it work for you. Well, two weeks later, I began recieving bucks in the mail! I couldn't believe it! Not just a little, I mean big bucks! At first only a few hundred dollars, then a week later, a couple of thousand, then BOOM. By the end of the fourth week, I had recieved nearly $47,000.00. It came from all over the world. And every bit of it perfectly legal and on the up and up. I've been able to pay off all my bills and still had enough left over for a nice vacation for me and my family. Not only does it work for me, it works for other folks as well. Markus Valppu says he made $57,883 in four weeks. Dave Manning claims he made $53,664 in the same amount of time. Dan Shepstone says it was only $17,000 for him. Do I know these folks? No, but when I read how they say they did it, it made sense to me. Enough sense that I'm taking a similar chance with $5 of my own bucks. Not a big chance, I admit--but one with incredible potential, because $5 is all anyone ever invests in this system. Period. That's all Markus, Dave, or Dan invested, yet their $5 netted them tens of thousands of dollars each, in a safe, legal, completely legitimate way. Here's how it works in 3 easy steps: STEP 1. Invest your $5 by writing your name and address on five seperate pieces of paper along with the words: "PLEASE ADD ME TO YOUR MAILING LIST." (In this way, you're not just sending a dollar to someone; you're paying for a legitimate service.) Fold a $1 bill, money order, or bank note inside each paper, and mail them by standard U. S. Mail to the following five addresses: 1- Fern Suarez Mallorca 112 Hato Rey, P.R., USA, 00917 2- Philippe 2104 De Mexico Chomedey, Laval Quebec, Canada H7M 3C6 3- Natalie Jansen Lancveldlaan 18 5671 CN Nuenen Holland 4- Chad Collier 2785 Cold Springs Rd. #49 Placerville, CA 95667 5- Steve Boltinghouse 1009 Bird St. Hannibal, MO 63401 STEP 2. Now remove the top name from the list, and move the other names up.This way, #5 becomes #4 and so on. Put your name in as the fifth one on the list. STEP 3. Post the article to at least 250 newsgroups. There are at least 19000 newsgroups at any given moment in time. Try posting to as many newsgroups as you can. Remember the more groups you post to, the more people will see your article and send you cash! STEP 4. You are now in business for yourself, and should start seeing returns within 7 to 14 days! Remember, the Internet is new and huge. There is no way you can lose. Now here is how and why this system works: Out of every block of 250 posts I made, I got back 5 responses. Yes, thats right,only 5. You make $5.00 in cash, not checks or money orders, but real cash with your name at #5. Each additional person who sent you $1.00 now also makes 250 additional postings with your name at #4, 1000 postings. On average then, 50 people will send you $1.00 with your name at #4,....$50.00 in your pocket! Now these 50 new people will make 250 postings each with your name at #3 or 10,000 postings. Average return, 500 people= $500. They make 250 postings each with your name at #2= 100,000 postings=5000 returns at $1.00 each=$5,000.00 in cash! Finally, 5,000 people make 250 postings each with your name at #1 and you get a return of $60,000 before your name drops off the list.And that's only if everyone down the line makes only 250 postings each! Your total income for this one cycle is $55,000. From time to time when you see your name is no longer on the list, you take the latest posting you can find and start all over again. The end result depends on you. You must follow through and repost this article everywhere you can think of. The more postings you make, the more cash ends up in your mailbox. It's too easy and too cheap to pass up!!! So thats it. Pretty simple sounding stuff, huh? But believe me, it works. There are millions of people surfing the net every day, all day, all over the world. And 100,000 new people get on the net every day. You know that, you've seen the stories in the paper. So, my friend, read and follow the simple instructions and play fair. Thats the key, and thats all there is to it. Print this out right now so you can refer back to this article easily. Try to keep an eye on all the postings you made to make sure everyone is playing fairly. You know where your name should be. If you're really not sure or still think this can't be for real, then don't do it. But please print this article and pass it along to someone you know who really needs the bucks, and see what happens. REMEMBER....HONESTY IS THE BEST POLICY.YOU DON'T NEED TO CHEAT THE BASIC IDEA TO MAKE THE BUCKS! GOOD LUCK TO ALL, AND PLEASE PLAY FAIR AND YOU WILL WIN AND MAKE SOME REAL INSTANT FREE CASH! *** By the way, if you try to deceive people by posting the messages with your name in the list and not sending the bucks to the people already included, you will not get much. I know someone who did this and only got about $150 (and that's after two months). Then he sent the 5 bills, people added him to their lists, and in 4-5 weeks he had over $10,000! TRY IT AND YOU'LL BE HAPPY!!! :o) !!!!!!!!!! From: Franz Subject: Re: Speed of simulators Date: 1996/11/02 Message-ID: <327B97D7.61AA647@azstarnet.com>#1/1 references: <3275E243.5F15@cam.ac.uk> <32796639.66774D49@azstarnet.com> <55fs2p$a58@news.asu.edu> newsgroups: rec.games.corewar > It would be huge, and you'd need a program to write the program. huge BUT FAST! :) Franz From: sieben@imap1.asu.edu Subject: Re: Speed of simulators Date: 1996/11/02 Message-ID: <55fs2p$a58@news.asu.edu>#1/1 references: <3275E243.5F15@cam.ac.uk> <32796639.66774D49@azstarnet.com> newsgroups: rec.games.corewar : you can just rewrite sim.c of pMARS .. some parts would be good in : assembly But not portable any more. : or one more idea .. instead of putting actuall instructions into the : core try putting pointers to functions in there .. and you would have a : function for each instruction, modifier, address mode combination .... : that would be pretty large but would be FAST .. you would just call the : core location as a function ... NO testing ... It would be huge, and you'd need a program to write the program. Nandor. From: Justin Kao <102741.2022@CompuServe.COM> Subject: Re: Baby Hill Date: 1996/11/02 Message-ID: <961102042044_102741.2022_GHT98-2@CompuServe.COM>#1/1 newsgroups: rec.games.corewar >The experimental hill ain't no good ... lets put up this interesting >hill so lets agree on these specs and go ahead with it ... Or it could be at Stormking, which isn't very active... Justin From: Justin Kao <102741.2022@CompuServe.COM> Subject: Re: Pizza (Bad compile) Date: 1996/11/02 Message-ID: <961102042043_102741.2022_GHT98-1@CompuServe.COM>#1/1 newsgroups: rec.games.corewar >a perfectly good warrior but how about pizza telling you in the mail the >warrior name since if i send a bunch of tests and one comes back as a >bad compile i gotta go though all of it and wait for all my tests to Something like that would be good for Pizza to do. I often get one of those messages and I have no idea what is was that caused it, esp. since there is nothing identifying which mail had the error. Justin From: Matt Lewinski <98mlewinski@kamsc.k12.mi.us> Subject: Re: Baby Hill Date: 1996/11/02 Message-ID: <327A9E8F.45ED@kamsc.k12.mi.us>#1/1 newsgroups: rec.games.corewar Franz wrote: > > So how about that baby hill ... I already made a warrior so I'm itching > to test it against others :) it's teh baby sweep i think it should work > great in small cores ... I know how you feel. I'm Waiting as well. > I'm not sure what the specs were but i bet they were allright i think > they were > > size 800 > max length 20 > max proccesses 800 > distance 20 > cycles 8000 That's right. Just as it used to be. -- -------------------------------------------------------------------- Matt Lewinski 98mlewinski@kamsc.k12.mi.us Kalamazoo Area mlewinsk@newton.kamsc.k12.mi.us Math & Science Center http://www.kamsc.k12.mi.us/sp98/mlewinsk From: Franz Subject: Re: Tiny Hill Date: 1996/11/03 Message-ID: <327D60A0.221F23E9@azstarnet.com>#1/1 references: newsgroups: rec.games.corewar Franz wrote: > > come on lets agree on this ... I just gotta try it out... > > Franz man got about 5 warriors for the tiny hill now ... (my current warriors for tiny(baby) specs) ... also the hill could run even a lot more then 200 battles to be more precise since 200 battles takes a few seconds on my machine ... First I thought it will be hard to code something under 20 but right now it seems just the right size to fit a normal sized warrior ... and really no place for qscan/pspace :) ... so you can just cut it off change the constants and it will run ... I am wondering what is the best strategy for such a small space ... so I got em all. Tiberius seems to be doing very well against my others but coreclear/scan and coresweep are also good strategies ... also i don't think there will be many imps since you have to fit bomber and the imp in 20 spaces .... imp alone does not do good ... but fitted with a small bomber does not do as bad ... but i have not worked on that idea too much ... and only 3 point imps binary launch so the place for the bomber wasn't much ... what might be a good strategy is quick bombing since you have pretty good chance you will hit something .... i think average size on the tiny hill will be around 20 instructions long so you have pretty good chance of hitting it ... quickscanning isn't feasible as bombing itself will be faster and you would have to fit qscan in around 15 instruction to allow for a small warrior. I thought maybe do a few scans and start the coreclear where it finds something ... it couldn't scan many locations though ... Franz From: Franz Subject: Re: Re[2]: Speed of simulators Date: 1996/11/03 Message-ID: #1/1 references: <9610028469.AA846976550@in2.mcmail.vanderbilt.edu> newsgroups: rec.games.corewar > But some instructions are equivalent, eg. add.f, add.i. I worked out that > there are ~78 unique opcode-modifier pairs. Also, you can use the same > function for different addressing modes, eg. < falls through to @ -> $ -> > # which gives 4 functions - using address mode A only ( > and } will need > separate functions). New formula: 78 "instructions" * 4 addressing modes > * 8 addressing modes. If you don't bother putting addressing mode B in the > jump table (or switch statement) you should be able to keep near jumps (less > clocks). To decode addressing mode B a secondary table can be used... but > will use CALL instead of JMP (except in special cases). There are lots of > little optimisations possible... well jump table would be different from a switch statement ... a jump table (as i think) would be a table of addresses of the functions so you would execute a pointer for example in core you would have stored 35 for combination #35, also i would make this use global varibales for passing to these functions since i think that would be much faster then passing variables pointers ... the jump tables would be the not exactly too portable stuff ... but thjat depends how it would be implemented ... should be able to do it transparently in C ... > Using an additional bit to indicate addressing mode B's type - > {,<,},> or #,$,@,* you can save a few cycles in zero/one operand > instructions (DAT,SPL,JMP,NOP). > > Another thing to try: store absolute addresses (not relative) in the > core. This way, getting to the required value is faster... but > instructions like ADD will take longer... JMP/SPL will be super fast. > Most instructions except the arithmetic operations won't need to decode > the absolute address. hmm this would save a lot of arithmetic but copying instructions would be hard .. at least if i'm getting what you mean ... I think the biggest speed increase is to eliminate tests since they take a lot of proccessor time ... i don't think arithmetic operations take that much ... ubt i think there would be ways of eliminating some of them ... though i think implementing some of these things would make pMARS less portable and definately much harder to debug/upgrade > --- > > Hope you understood some of that - I was babbling a bit :-) yes nobody too knows what i'm babbling about ... and most of it i don't even get myself :) Franz From: fallonjb@arc.net (Josh Fallon) Subject: Porting A RedCode Simulator to Win NT/95 Date: 1996/11/03 Message-ID: <55in0h$pd2@server2.ols.net>#1/1 newsgroups: rec.games.corewar Hi, I am in the process of writing a redcode simulator to run under Windows 95,NT. Its working nicely so far, and runs all the commands correctly, but when I started writing the parser, and thought someone must have done this before... So, if anyone has any code for parsing redcode files and would n't mind sending it to me, I would appreciate it. I will post the finished program on ftp sites or email it to whoever wants it. Anyway, thanks. Blue Skies!!! --Josh From: Franz Subject: Re: Porting A RedCode Simulator to Win NT/95 Date: 1996/11/03 Message-ID: <327CFCDE.4A45EB13@azstarnet.com>#1/1 references: <55in0h$pd2@server2.ols.net> newsgroups: rec.games.corewar > I am in the process of writing a redcode simulator to run under > Windows 95,NT. Its working nicely so far, and runs all the commands > correctly, but when I started writing the parser, and thought someone > must have done this before... So, if anyone has any code for parsing > redcode files and would n't mind sending it to me, I would appreciate > it. I will post the finished program on ftp sites or email it to > whoever wants it. Anyway, thanks. well look at pmars source, as long as your software would be free i don't think they would mind, if you woudl charge for it then i think they would ... :) ... and i could scrap that project because my WinNT version of pMARS still has no display ... if it's free and you don't mind sending the source to me i'd help ya ... what compiler u usin? Franz From: Tom Franklin Subject: Re: Just try this, it will work Date: 1996/11/03 Message-ID: <327CD4BF.3E42@ridgecrest.ca.us> references: <139.654193326831@news.nemonet.com> newsgroups: alt.soft-sys.corel.misc,rec.games.corewar,soc.culture.cornish,alt.peace.corps,alt.politics.correct,alt.irc.corroboree,alt.games.cosmic-wimpout,soc.culture.costa-rica,alt.smokers.cough,alt.revolution.counter,alt.music.counting-crows,rec.music.country.old-time,rec.music.country.western,alt.religion.course-miracle,talk.religion.course-miracle,york.pols.course.3590,york.english.course.eng319006a,york.history.course.hist3930a,york.modes-of-reasoning.course.modr1714,york.philosophy.course.modr1714 You better not mess with Uncle Sam and use his mail to run this scam you sneaky crooks, both her's and his'n will find your butts in federal prison If you think you will not be in trouble, check this out: United States Postal Inspection Service at http://www.usps.gov/websites/depart/inspect/chainlet.htm Stephen Boltinghouse wrote: > > Take five minutes to read this and it WILL change your life. SNIP This Boltinghouse person must be hiding because e-mail to his e-mail address comes back because he is unknown. Is it possible he knows he is trying to do something illegal? > > The Internet has grown tremendously. It doubles in size every 4 months. > think about it. You see those 'Make.Money.Fast' posts more and more. > That's ... because it WORKS ! So I thought, all those new users might > make it work. And I decided to try it out, a few months ago. Besides, > whats $5.00, I spend more than that in the morning on my way to work on > coffee and cigs for the day. So I sent in my money and posted. > Everyone was calling it a scam, but there are SO many new users from > AOL, Netcom, etc. they will join in and make it work for you. > > Well, two weeks later, I began recieving bucks in the mail! I couldn't > believe it! Not just a little, I mean big bucks! At first only a few > hundred dollars, then a week later, a couple of thousand, then BOOM. By > the end of the fourth week, I had recieved nearly $47,000.00. It came > from all over the world. And every bit of it perfectly legal and on the > up and up. I've been able to pay off all my bills and still had enough > left over for a nice vacation for me and my family. > > Not only does it work for me, it works for other folks as well. Markus > Valppu says he made $57,883 in four weeks. Dave Manning claims he made > $53,664 in the same amount of time. Dan Shepstone says it was only > $17,000 for him. Do I know these folks? No, but when I read how they > say they did it, it made sense to me. Enough sense that I'm taking a > similar chance with $5 of my own bucks. Not a big chance, I admit--but > one with incredible potential, because $5 is all anyone ever invests in > this system. Period. That's all Markus, Dave, or Dan invested, yet > their $5 netted them tens of thousands of dollars each, in a safe, > legal, completely legitimate way. Here's how it works in 3 easy steps: > > STEP 1. > > Invest your $5 by writing your name and address on five seperate pieces > of paper along with the words: "PLEASE ADD ME TO YOUR MAILING LIST." (In > this way, you're not just sending a dollar to someone; you're paying for > a legitimate service.) Fold a $1 bill, money order, or bank note inside > each paper, and mail them by standard U. S. Mail to the following five > addresses: > > 1- Fern Suarez > Mallorca 112 > Hato Rey, P.R., USA, 00917 > > 2- Philippe > 2104 De Mexico > Chomedey, Laval > Quebec, Canada > H7M 3C6 > > 3- Natalie Jansen > Lancveldlaan 18 > 5671 CN Nuenen > Holland > > 4- Chad Collier > 2785 Cold Springs Rd. #49 > Placerville, CA 95667 > > 5- Steve Boltinghouse > 1009 Bird St. > Hannibal, MO 63401 > > STEP 2. > > Now remove the top name from the list, and move the > other names up.This way, #5 becomes #4 and so on. > Put your name in as the fifth one on the list. > > STEP 3. > > Post the article to at least 250 newsgroups. There are at > least 19000 newsgroups at any given moment in time. > Try posting to as many newsgroups as you can. Remember > the more groups you post to, the more people will see your > article and send you cash! > > STEP 4. > > You are now in business for yourself, and should start seeing > returns within 7 to 14 days! Remember, the Internet is new > and huge. There is no way you can lose. > > Now here is how and why this system works: > > Out of every block of 250 posts I made, I got back 5 responses. > Yes, thats right,only 5. You make $5.00 in cash, not checks or > money orders, but real cash with your name at #5. > > Each additional person who sent you $1.00 now also makes 250 > additional postings with your name at #4, 1000 postings. On > average then, 50 people will send you $1.00 with your name at > #4,....$50.00 in your pocket! > > Now these 50 new people will make 250 postings each with your > name at #3 or 10,000 postings. Average return, 500 people= $500. > They make 250 postings each with your name at #2= 100,000 > postings=5000 returns at $1.00 each=$5,000.00 in cash! > > Finally, 5,000 people make 250 postings each with your name at > #1 and you get a return of $60,000 before your name drops off > the list.And that's only if everyone down the line makes only 250 > postings each! Your total income for this one cycle is $55,000. > > From time to time when you see your name is no longer on the list, > you take the latest posting you can find and start all over again. > > The end result depends on you. You must follow through > and repost this article everywhere you can think of. > The more postings you make, the more cash ends up in > your mailbox. It's too easy and too cheap to pass up!!! > > So thats it. Pretty simple sounding stuff, huh? But believe me, it > works. There are millions of people surfing the net every day, all > day, all over the world. And 100,000 new people get on the net > every day. You know that, you've seen the stories in the paper. > So, my friend, read and follow the simple instructions and play > fair. Thats the key, and thats all there is to it. Print this out > right now so you can refer back to this article easily. Try to keep > an eye on all the postings you made to make sure everyone is > playing fairly. You know where your name should be. > > If you're really not sure or still think this can't be > for real, then don't do it. But please print this article and pass it > along to someone you know who really needs the bucks, and see > what happens. > > REMEMBER....HONESTY IS THE BEST POLICY.YOU DON'T > NEED TO CHEAT THE BASIC IDEA TO MAKE THE BUCKS! > GOOD LUCK TO ALL, AND PLEASE PLAY FAIR AND YOU WILL > WIN AND MAKE SOME REAL INSTANT FREE CASH! > > *** By the way, if you try to deceive people by posting the messages > with your name in the list and not sending the bucks to the people > already included, you will not get much. I know someone who did this > and only got about $150 (and that's after two months). Then he sent > the 5 bills, people added him to their lists, and in 4-5 weeks he had > over $10,000! > > TRY IT AND YOU'LL BE HAPPY!!! :o) !!!!!!!!!! From: SKI Koth Server Subject: SKI-ICWS: Status - Standard 11/04/96 Date: 1996/11/04 Message-ID: <199611040500.AAA11759@odin.stormking.com>#1/1 newsgroups: rec.games.corewar Weekly Status on 11/04/96 ****** NOTICE ****** We have changed our name to koth.org ****** NOTICE ****** See up to the second scores and the latest Core War information at : http://www.koth.org/ *FAQ* http://www.koth.org/corewar-faq.html Current Status of the StormKing Industries Standard KotH CoreWar Hill : Last battle concluded at : Wed Oct 30 09:23:24 EST 1996 # %W/ %L/ %T Name Author Score Age 1 39/ 35/ 27 Tangle Trap David Moore 143 25 2 33/ 24/ 43 Yop La Boum v2.1 P.E.M & E.C. 141 83 3 27/ 12/ 61 Test I Ian Oversby 141 8 4 40/ 40/ 20 Gisela 609 Andrzej Maciejczak 140 21 5 27/ 15/ 58 Evoltmp 88 John K W 140 2 6 26/ 13/ 61 ttti nandor sieben 140 133 7 38/ 39/ 23 Stasis David Moore 137 59 8 38/ 39/ 23 PacMan v5 David Moore 137 51 9 26/ 17/ 57 Simple '88 Ian Oversby 135 38 10 26/ 18/ 55 CAPS KEY IS STUCK AGAIN Steven Morrell 134 149 11 23/ 13/ 64 Rosebud 88 Beppe 134 14 12 39/ 44/ 17 Iron Gate Wayne Sheppard 134 277 13 26/ 19/ 55 K-test P.E.M 133 55 14 18/ 5/ 77 Evolve '88 John K Wilkinson 131 39 15 36/ 42/ 23 Gisela 3G6 Andrzej Maciejczak 129 46 16 26/ 24/ 50 Test Wayne Sheppard 129 172 17 22/ 16/ 62 Cannonade P.Kline 128 183 18 19/ 11/ 70 Imperfic II John Wilkinson 128 69 19 35/ 42/ 23 Beholder's Eye V1.7 W. Mintardjo 127 227 20 22/ 32/ 46 Zippo Lighter Franz 113 1 21 3/ 92/ 5 : hob : Mikolaj Szeptycki 14 0 From: SKI Koth Server Subject: SKI-ICWS: Status - ICWS Experimental 94 11/04/96 Date: 1996/11/04 Message-ID: <199611040500.AAA22549@asgard.ttsg.com>#1/1 newsgroups: rec.games.corewar Weekly Status on 11/04/96 ****** NOTICE ****** We have changed our name to koth.org ****** NOTICE ****** See up to the second scores and the latest Core War information at : http://www.koth.org/~koth *FAQ* http://www.koth.org/~koth/corewar-faq.html Current Status of the StormKing Industries ICWS Experimental 94 CoreWar Hill: Last battle concluded at : Fri Oct 4 15:53:33 EDT 1996 # %W/ %L/ %T Name Author Score Age 1 34/ 4/ 61 Evol Cap 4 X John Wilkinson 164 29 2 46/ 36/ 18 Illusion-94/55 Randy Graham 157 11 3 35/ 14/ 51 Rosebud Beppe 156 8 4 41/ 26/ 33 Falcon v0.3 X Ian Oversby 156 2 5 47/ 40/ 13 Tsunami v0.1 Ian Oversby 155 7 6 47/ 40/ 13 Memories Beppe Bezzi 154 36 7 42/ 34/ 24 BigBoy Robert Macrae 151 54 8 40/ 33/ 28 Lithium X 8 John K Wilkinson 147 20 9 43/ 39/ 19 Frontwards v2 Steven Morrell 146 59 10 41/ 36/ 23 Derision M R Bremer 145 46 11 42/ 41/ 17 Stepping Stone 94x Kurt Franke 143 15 12 44/ 47/ 9 S.E.T.I. 4-X JKW 141 30 13 43/ 44/ 13 Pagan John K W 141 14 14 38/ 43/ 19 Fire Master Xv1 JS Pulido 133 51 15 34/ 37/ 29 Tornado 2.0 x Beppe Bezzi 132 53 16 30/ 28/ 43 Variation M-1 Jay Han 132 9 17 28/ 26/ 46 Hector 2 Kurt Franke 131 49 18 29/ 28/ 43 Aleph 1 Jay Han 131 19 19 36/ 49/ 15 Watcher-h Kurt Franke 123 48 20 36/ 57/ 6 dodger component M R Bremer 116 1 21 13/ 76/ 10 Xerox Franz 50 0 From: SKI Koth Server Subject: SKI-ICWS: Status - ICWS Experimental 94 11/04/96 Date: 1996/11/04 Message-ID: <199611040500.AAA11784@odin.stormking.com>#1/1 newsgroups: rec.games.corewar Weekly Status on 11/04/96 ****** NOTICE ****** We have changed our name to koth.org ****** NOTICE ****** See up to the second scores and the latest Core War information at : http://www.koth.org/~koth *FAQ* http://www.koth.org/~koth/corewar-faq.html Current Status of the StormKing Industries ICWS Experimental 94 CoreWar Hill: Last battle concluded at : Fri Oct 25 14:59:40 EDT 1996 # %W/ %L/ %T Name Author Score Age 1 32/ 5/ 63 Evol Cap 4 X John Wilkinson 160 31 2 44/ 35/ 22 Dr. Gate X Franz 152 2 3 32/ 15/ 53 Rosebud Beppe 149 10 4 45/ 42/ 13 Memories Beppe Bezzi 147 38 5 36/ 28/ 36 Falcon v0.3 X Ian Oversby 144 4 6 39/ 34/ 26 Dr. Recover Franz 144 1 7 43/ 44/ 14 Tsunami v0.1 Ian Oversby 142 9 8 39/ 36/ 26 BigBoy Robert Macrae 141 56 9 40/ 42/ 19 Illusion-94/55 Randy Graham 138 13 10 36/ 35/ 30 Lithium X 8 John K Wilkinson 136 22 11 39/ 43/ 18 Stepping Stone 94x Kurt Franke 135 17 12 39/ 44/ 17 Frontwards v2 Steven Morrell 134 61 13 35/ 38/ 27 Derision M R Bremer 132 48 14 39/ 47/ 14 Pagan John K W 132 16 15 27/ 25/ 48 Hector 2 Kurt Franke 130 51 16 36/ 44/ 20 Fire Master Xv1 JS Pulido 129 53 17 28/ 29/ 43 Variation M-1 Jay Han 128 11 18 39/ 51/ 9 S.E.T.I. 4-X JKW 127 32 19 40/ 54/ 6 dodger component M R Bremer 127 3 20 32/ 38/ 30 Tornado 2.0 x Beppe Bezzi 126 55 21 26/ 30/ 44 Aleph 1 Jay Han 122 21 From: SKI Koth Server Subject: SKI-ICWS: Status - MultiWarrior 94 11/04/96 Date: 1996/11/04 Message-ID: <199611040500.AAA22538@asgard.ttsg.com>#1/1 newsgroups: rec.games.corewar Weekly Status on 11/04/96 ****** NOTICE ****** We have changed our name to koth.org ****** NOTICE ****** See up to the second scores and the latest Core War information at : http://www.koth.org/~koth *FAQ* http://www.koth.org/~koth/corewar-faq.html Current Status of the StormKing Industries Multiwarrior 94 CoreWar Hill: Last battle concluded at : Tue Oct 22 10:23:06 EDT 1996 # Name Author Score Age 1 Super Evol Cap John Wilkinson 5360 21 2 Evol Cap -- John Wilkinson 5320 23 3 IMPossible! Maurizio Vittuari 5303 3 4 Die Hard P.Kline 5288 44 5 sisyphus Kafka 5288 22 6 IMPossible! Maurizio Vittuari 5284 11 7 Son of Imp Steven Morrell 5190 57 8 Auld Man Ian Oversby 5143 2 9 TESTI Maurizio Vittuari 5142 32 10 Dunno-1@4 Cadellin 4956 1 11 Stupid Little Program Pedro 4004 0 From: SKI Koth Server Subject: SKI-ICWS: Status - Multiwarrior Experimental 94 11/04/96 Date: 1996/11/04 Message-ID: <199611040500.AAA22545@asgard.ttsg.com>#1/1 newsgroups: rec.games.corewar Weekly Status on 11/04/96 ****** NOTICE ****** We have changed our name to koth.org ****** NOTICE ****** See up to the second scores and the latest Core War information at : http://www.koth.org/~koth *FAQ* http://www.koth.org/~koth/corewar-faq.html Current Status of the StormKing Industries MultiWarrior Experimental 94 CoreWar Hill: Last battle concluded at : Mon Oct 21 05:32:53 EDT 1996 # Name Author Score Age 1 Evolve X John Wilkinson 5064 13 2 Paper8 G. Eadon 5064 39 3 U-lat Zul Nadzri 5064 4 4 Test2 George Eadon 5064 33 5 tRASH Franz 5064 2 6 Victim 16 Pedro 5064 3 7 Stamp Franz 5064 7 8 Paperone Beppe Bezzi 5064 58 9 jaded M R Bremer 5064 44 10 TimeScapeX (0.1) J. Pohjalainen 5042 73 11 Newest test Pedro 5042 12 12 Wax Zul Nadzri 5042 1 13 Papyrus 4 Justin Kao 5042 11 14 Fork v0.2-9p/51b Christoph C. Birk 5042 15 15 This is Test1 Kurt Franke 5042 38 16 Stamp II Franz 5042 6 17 Leviathan2 harleyQ2 4998 25 18 NoName Pedro 4998 9 19 Shwing! T. H. Davies 4998 69 20 Saat V2.01 S. Schroeder 4888 27 21 IMP Factory Franz 4888 0 From: SKI Koth Server Subject: SKI-ICWS: Status - Standard 11/04/96 Date: 1996/11/04 Message-ID: <199611040500.AAA22518@asgard.ttsg.com>#1/1 newsgroups: rec.games.corewar Weekly Status on 11/04/96 ****** NOTICE ****** We have changed our name to koth.org ****** NOTICE ****** See up to the second scores and the latest Core War information at : http://www.koth.org/ *FAQ* http://www.koth.org/corewar-faq.html Current Status of the StormKing Industries Standard KotH CoreWar Hill : Last battle concluded at : Wed Oct 23 20:14:45 EDT 1996 # %W/ %L/ %T Name Author Score Age 1 36/ 23/ 41 Yop La Boum v2.1 P.E.M & E.C. 149 80 2 40/ 34/ 25 Tangle Trap David Moore 146 22 3 26/ 12/ 62 Test I Ian Oversby 140 5 4 39/ 39/ 22 Gisela 609 Andrzej Maciejczak 139 18 5 39/ 39/ 22 PacMan v5 David Moore 138 48 6 40/ 43/ 16 Iron Gate Wayne Sheppard 138 274 7 39/ 39/ 22 Stasis David Moore 138 56 8 25/ 13/ 62 ttti nandor sieben 136 130 9 27/ 20/ 53 CAPS KEY IS STUCK AGAIN Steven Morrell 133 146 10 25/ 18/ 57 Simple '88 Ian Oversby 132 35 11 25/ 20/ 55 K-test P.E.M 130 52 12 21/ 13/ 66 Rosebud 88 Beppe 130 11 13 36/ 42/ 22 Gisela 3G6 Andrzej Maciejczak 129 43 14 35/ 41/ 23 Beholder's Eye V1.7 W. Mintardjo 129 224 15 25/ 21/ 55 test 29 test 128 8 16 16/ 5/ 79 Evolve '88 John K Wilkinson 127 36 17 25/ 25/ 49 Test Wayne Sheppard 125 169 18 20/ 16/ 63 Cannonade P.Kline 124 180 19 17/ 11/ 71 Imperfic II John Wilkinson 124 66 20 25/ 50/ 26 Test #6 Anonymous 99 1 21 5/ 62/ 33 Both-88 Shane DeSeranno 48 0 From: SKI Koth Server Subject: SKI-ICWS: Status - ICWS Tournament 11/04/96 Date: 1996/11/04 Message-ID: <199611040500.AAA11766@odin.stormking.com>#1/1 newsgroups: rec.games.corewar Weekly Status on 11/04/96 ****** NOTICE ****** We have changed our name to koth.org ****** NOTICE ****** See up to the second scores and the latest Core War information at : http://www.koth.org/~koth *FAQ* http://www.koth.org/~koth/corewar-faq.html Current Status of the StormKing Industries Annual ICWS Tournament CoreWar Hill: Last battle concluded at : Mon Oct 28 14:22:53 EST 1996 # %W/ %L/ %T Name Author Score Age 1 38/ 16/ 46 Cannonade Paul Kline 161 100 2 49/ 37/ 14 Miss Carefree Derek Ross 161 32 3 51/ 42/ 7 Agony T Stefan Strack 159 101 4 45/ 39/ 16 Old Tire Swing Randy Graham 150 57 5 43/ 37/ 20 Giskard v0.5 Ken Mitton 149 73 6 38/ 29/ 33 Pommes-Ketchup V1.35 S. Schroeder 148 13 7 33/ 19/ 48 Turkey Beppe Bezzi 146 16 8 30/ 16/ 54 Nothing Special G. Eadon 143 15 9 42/ 44/ 14 Miss Carry Derek Ross 141 64 10 41/ 45/ 14 test88 P.Kline 138 19 11 41/ 45/ 14 Slaver v1.1i Christoph C. Birk 137 61 12 40/ 46/ 15 Gisela 6928 Andrzej Maciejczak 134 4 13 40/ 47/ 13 Gisela 6927 Andrzej Maciejczak 133 5 14 36/ 39/ 26 Beauty 1000 v 0.0 Pedro 133 7 15 40/ 47/ 13 Gisela 6029 Andrzej Maciejczak 133 1 16 39/ 49/ 12 Traper3_t Waldemar Bartolik 128 10 17 38/ 48/ 14 DoubleStone v0.7 Christoph C. Birk 127 43 18 34/ 43/ 23 Yop La Boum v2.1 P.E.M & E.C. 124 30 19 26/ 28/ 46 One Fat Lady Robert Macrae 123 17 20 39/ 57/ 4 xtc stefan roettger 120 105 21 3/ 0/ 1 Gisela 6028 Andrzej Maciejczak 11 2 From: SKI Koth Server Subject: SKI-ICWS: Status - Multiwarrior Experimental 94 11/04/96 Date: 1996/11/04 Message-ID: <199611040500.AAA11778@odin.stormking.com>#1/1 newsgroups: rec.games.corewar Weekly Status on 11/04/96 ****** NOTICE ****** We have changed our name to koth.org ****** NOTICE ****** See up to the second scores and the latest Core War information at : http://www.koth.org/~koth *FAQ* http://www.koth.org/~koth/corewar-faq.html Current Status of the StormKing Industries MultiWarrior Experimental 94 CoreWar Hill: Last battle concluded at : Mon Oct 28 06:20:54 EST 1996 # Name Author Score Age 1 Evolve X John Wilkinson 5496 15 2 Test2 George Eadon 5496 35 3 jaded M R Bremer 5496 46 4 TimeScapeX (0.1) J. Pohjalainen 5496 75 5 Newest test Pedro 5496 14 6 Fork v0.2-9p/51b Christoph C. Birk 5496 17 7 This is Test1 Kurt Franke 5496 40 8 U-Lat II Zul Nadzri 5496 2 9 U-lat Zul Nadzri 5496 6 10 Paperone Beppe Bezzi 5496 60 11 Stamp Franz 5496 9 12 Paper8 G. Eadon 5496 41 13 Victim 16 Pedro 5496 5 14 Papyrus 4 Justin Kao 5496 13 15 U-lat II Zul Nadzri 5473 1 16 Wax Zul Nadzri 5451 3 17 tRASH Franz 5450 4 18 Stamp II Franz 5427 8 19 Saat V2.01 S. Schroeder 5404 29 20 NoName Pedro 5403 11 21 damn! how to kill my warr Zul Nadzri 224 0 From: Anton Marsden Subject: Core Warrior 49 Date: 1996/11/04 Message-ID: newsgroups: rec.games.corewar .xX$$x. .x$$$$$$$x. d$$$$$$$$$$$ ,$$$$$$$P' `P' , . $$$$$$P' ' .d b $$$$$P b ,$$x ,$$x ,$$x ,$$b $$. Y$$$$' `$. $$$$$$. $$$$$$ $$P~d$. d$$$b d d$$$ `$$$$ ,$$ $$$$$$$b $$$P `$ $$$b.$$b `Y$$$d$d$$$' . . a . a a .aa . a `$$$ ,$$$,$$' `$$$ $$$' ' $$P$XX$' `$$$$$$$$$ .dP' `$'$ `$'$ , $''$ `$'$ `Y$b ,d$$$P `$b,d$P' `$$. `$$. , `$$P $$$' Y $. $ $ $ Y..P $ `$$$$$$$' $$$P' `$$b `$$$P `P `$' `Y'k. $. $. $. $$' $. Issue 49 4 November, 1996 ______________________________________________________________________________ Core Warrior is a weekly newsletter promoting the game of corewar. Emphasis is placed on the most active hills--currently the '94 draft hill and the beginner hill. Coverage will follow where ever the action is. If you have no clue what I'm talking about then check out these five-star internet locals for more information: FAQs are available by anonymous FTP from rtfm.mit.edu as pub/usenet/news.answers/games/corewar-faq.Z FTP site is: ftp.csua.berkeley.edu /pub/corewar Web pages are at: (Please note new Stormking's address) http://www.koth.org/ ;Stormking http://www.ecst.csuchico.edu/~pizza/koth ;Pizza http://pauillac.inria.fr/~doligez/corewar/ ;Planar Newbies should check the stormking page for the FAQ, language specification, guides, and tutorials. Post questions to rec.games.corewar. All new players are infinitely welcome! If ftp.csua.berkeley.edu is unreachable, you can download pMARS at: Terry's web page--http://www.infi.net/~wtnewton/corewar/ Planar ftp site--ftp://ftp.inria.fr/INRIA/Projects/para/doligez/cw/pmars Fechter ftp site--ftp://members.aol.com/ofechner/corewar A collection of Bezzi's hints in the first issues is available at: ftp://ftp.volftp.vol.it/pub/pc/msdos/games/solutions/bbhints.zip NEW: Beppe Bezzi web page - http://www.aspide.it/freeweb/Bezzi ______________________________________________________________________________ Greetings. The optimisation of PMARS is currently being discussed in the newsgroup at the moment. Perhaps we will see a new version soon (even if unofficial). Round 5 of the tournament is this week. Good luck to all involved. The top 4 players go through to the semi-finals. --Anton Marsden ______________________________________________________________________________ Current Status of the Internet Pizza Server ICWS '94 Draft Hill: Hill Specs: coresize: 8000 max. processes: 8000 duration: after 80,000 cycles, a tie is declared. max. entry length: 100 minimum distance: 100 rounds fought: 200 instruction set: ICWS '94 Draft The current ICWS '94 Draft hill: # %W / %L / %T Name Author Score Age 1 39.7/ 22.2/ 38.1 unrequited love kafka 157.3 217 2 30.8/ 13.5/ 55.7 Return Of The Jedimp John K W 148.2 119 3 36.9/ 26.1/ 37.1 Gigolo Core Warrior staff 147.6 173 4 32.1/ 16.9/ 51.0 Trident^2 John K W 147.3 49 5 43.0/ 40.0/ 17.0 The Machine Anton Marsden 146.0 25 6 39.6/ 33.6/ 26.8 Tiberius 3.1 Franz 145.6 36 7 39.2/ 35.5/ 25.2 CC Paper 2 Franz 142.9 8 8 39.3/ 39.5/ 21.2 Damage Incorporated Anton Marsden 139.2 160 9 42.8/ 47.6/ 9.6 Memories Beppe 138.0 33 10 38.8/ 40.2/ 21.1 Instant Wolf 3.4 Edgar 137.3 180 11 29.9/ 22.5/ 47.7 Impish v0.2 Ian Oversby 137.3 158 12 40.9/ 44.5/ 14.6 Blur 2 Anton Marsden 137.3 296 13 31.0/ 25.3/ 43.7 Rosebud Beppe 136.6 970 14 38.9/ 42.3/ 18.8 Probe Anton Marsden 135.5 297 15 33.9/ 34.1/ 31.9 Nine Seven Six M R bremer 133.7 9 16 37.9/ 43.2/ 18.9 Silver Talon 1.2 Edgar 132.7 6 17 39.0/ 45.7/ 15.3 AK-47 Franz 132.4 11 18 40.7/ 49.4/ 9.9 Q^2 Miro Anders Ivner 131.9 347 19 38.3/ 45.3/ 16.4 Dr. Gate Q Franz 131.2 2 20 32.9/ 34.9/ 32.2 Falcon v0.3 Ian Oversby 131.0 202 21 32.8/ 35.0/ 32.1 Simple v0.4b Ian Oversby 130.6 248 22 39.0/ 48.0/ 13.0 Golden Gate 3 Franz 129.9 5 23 37.3/ 45.1/ 17.6 Goldfinch P.Kline 129.6 238 24 37.1/ 45.0/ 17.9 Silver Talon 1.1 Edgar 129.2 10 25 35.3/ 42.3/ 22.4 cryptos bjoern guenzel 128.3 1 Weekly age: 15 this week ( 13 last issue, 29 the week before ) New warriors: 8 Turnover/age rate 53% Average age: 152 ( 173 last issue, 142 the week before ) Average score: 138 ( 136 last issue, 138 the week before ) The top 25 warriors are represented by 12 independent authors: Franz with 5; Marsden with 4; Oversby and Edgar have 3; and Beppe and JKW have two. King Report: The Machine was KOTH for the majority of the week, but when Bodge fell off the Hill it suffered and from then on unrequited love has been the dominant warrior. Again the imp/stones are in control. ______________________________________________________________________________ 94 - What's New # %W / %L / %T Name Author Score Age 14 38.8/ 44.9/ 16.3 AK-47 Franz 132.8 1 22 36.7/ 44.1/ 19.3 Silver Talon 1.1 Edgar 129.3 1 11 33.6/ 31.5/ 34.9 Nine Seven Six M R bremer 135.6 1 15 34.8/ 37.2/ 28.0 CC Paper 2 Franz 132.4 1 9 39.9/ 41.3/ 18.8 Silver Talon 1.2 Edgar 138.5 1 17 40.6/ 46.3/ 13.1 Golden Gate 3 Franz 134.9 1 19 38.5/ 45.7/ 15.8 Dr. Gate Q Franz 131.4 1 25 35.3/ 42.3/ 22.4 cryptos bjoern guenzel 128.3 1 Franz has been busy this week with 4 new/updated warriors. Bremer is finally back on the Hill :-) May his warrior live long and prosper. The most significant new entry is probably Silver Talon, which is also doing very well on the beginner Hill. ______________________________________________________________________________ 94 - What's No More # %W / %L / %T Name Author Score Age 26 36.3/ 45.4/ 18.3 Dr. Gate Q Franz 127.2 17 26 31.1/ 36.6/ 32.3 CC Paper 3.3 Franz 125.7 107 26 34.5/ 43.1/ 22.4 Instant Wolf Edgar 125.8 90 26 22.0/ 16.7/ 61.3 ompega Steven Morrell 127.3 406 26 34.4/ 40.4/ 25.2 Frogz Franz 128.3 172 26 38.4/ 49.4/ 12.3 Bodge 1 Robert Macrae 127.4 85 26 33.4/ 41.7/ 24.9 MI6 Philip Kendall 125.0 4 26 36.6/ 46.0/ 17.4 HAL 9000 Justin Kao 127.2 17 Morrell's only Hill warrior was kicked off this week as was Macrae's. Perhaps we will see them back in force soon. ______________________________________________________________________________ 94 - What's Old # %W / %L / %T Name Author Score Age 13 31.0/ 25.3/ 43.7 Rosebud Beppe 136.6 970 18 40.7/ 49.4/ 9.9 Q^2 Miro Anders Ivner 131.9 347 14 38.9/ 42.3/ 18.8 Probe Anton Marsden 135.5 297 12 40.9/ 44.5/ 14.6 Blur 2 Anton Marsden 137.3 296 21 32.8/ 35.0/ 32.1 Simple v0.4b Ian Oversby 130.6 248 23 37.3/ 45.1/ 17.6 Goldfinch P.Kline 129.6 238 1 39.7/ 22.2/ 38.1 unrequited love kafka 157.3 217 20 32.9/ 34.9/ 32.2 Falcon v0.3 Ian Oversby 131.0 202 Falcon v0.3 is the new entry, ompega leaves us. ______________________________________________________________________________ HALL OF FAME * means the warrior is still active. Pos Name Author Age Strategy 1 Thermite II Robert Macrae 2262 Qscan -> bomber 2 Impfinity v4g1 Planar 1993 Stone/ imp 3 Jack in the box Beppe Bezzi 1620 P-warrior 4 Tornado 3.0 Beppe Bezzi 1567 Bomber 5 Torch t18 P.Kline 1539 Bomber 6 Chameleon Myer R Bremer 1437 P-warrior 7 Frontwards v2 Steven Morrell 1420 One shot scanner 8 Evol Cap 6.6 John Wilkinson 1299 Imp / stone 9 quiz Schitzo 1262 Scanner/ bomber 10 T.N.T. Maurizio Vittuari 1204 Bomber 11 Grilled Octopus v0.5 David Boeren 1154 P-warrior 12 Hazy Shade II John Wilkinson 1102 P-warrior 13 Stepping Stone Kurt Franke 1049 Qscan -> Vampire 14 Rosebud Beppe Bezzi 970 * Stone/ imp 15 Iron Gate 1.5 Wayne Sheppard 926 CMP scanner 16 T.N.T. pro Maurizio Vittuari 925 Bomber 17 Agony II Stefan Strack 912 CMP scanner 18 Barrage Anton Marsden 876 Qscan -> replicator 19 Blue Funk Steven Morrell 869 Stone/ imp 20 Flurry Anton Marsden 835 Qscan -> pwarrior 21 Thermite 1.0 Robert Macrae 802 Qscan -> bomber 22 Blue Funk 3 Steven Morrell 766 Stone/ imp 23 Night Train Karl Lewin 755 Replicator 24 Mirage 1.5 Anton Marsden 736 Scanner/ bomber 25 Blizzard Anton Marsden 713 Qscan -> replicator No positional changes. ______________________________________________________________________________ Current Status of the Internet Pizza Server Beginner's Hill: Hill Specs: coresize: 8000 max. processes: 8000 duration: after 80,000 cycles, a tie is declared. max. entry length: 100 minimum distance: 100 maximum age: At age 100, warriors are retired. rounds fought: 200 instruction set: ICWS '94 Draft Last challenge: Mon Oct 28 14:21:53 PST 1996 # %W / %L / %T Name Author Score Age 1 52.2/ 28.7/ 19.1 Silver Talon 1.1 Edgar 175.7 17 2 45.8/ 29.9/ 24.4 Microsoft Office '96 Justin Kao 161.6 13 3 43.0/ 30.7/ 26.3 HAL 9000 Justin Kao 155.3 29 4 45.4/ 37.0/ 17.6 Flamberge 101 Matt Lewinski 153.7 88 5 32.3/ 20.9/ 46.8 Dust 0.7 Justin Kao 143.7 84 6 30.8/ 18.7/ 50.5 The Lost Snail Edgar 142.9 16 7 38.4/ 36.3/ 25.4 MI6 Philip Kendall 140.5 10 8 40.2/ 40.3/ 19.6 Vivid Radiation 1.0 Matt Lewinski 140.0 20 9 30.2/ 21.6/ 48.1 Hammermill 4.0 Matt Lewinski 138.8 23 10 39.2/ 39.7/ 21.1 mayhem.q harleyQ2 138.8 87 11 35.2/ 33.0/ 31.8 Sandstorm Q/0.6c Ilmari Karonen 137.5 8 12 30.9/ 29.0/ 40.2 Scanitator 2.1 Christian Schmidt 132.8 3 13 31.3/ 30.4/ 38.2 Enough is enough Ilmari Karonen 132.2 81 14 36.0/ 39.9/ 24.1 Daemon of Zteentch Christian Schmidt 132.1 41 15 28.8/ 25.7/ 45.5 Plaster 1.0 Anonymous 131.8 11 16 28.9/ 27.7/ 43.3 Apocalypse Matt Lewinski 130.1 2 17 28.1/ 28.8/ 43.1 Throttle 2.0 Matt Lewinski 127.4 15 18 17.0/ 13.9/ 69.1 test 33 John K W 120.1 80 19 22.0/ 25.7/ 52.3 Vogon Poetry 0.2 Justin Kao 118.3 44 20 20.0/ 22.8/ 57.2 Papyrus 21 Justin Kao 117.2 12 21 28.9/ 43.7/ 27.4 Absolute Zero Matt Lewinski 114.1 4 22 24.7/ 39.0/ 36.2 Sarcasm 2.0 Matt Lewinski 110.5 37 23 7.2/ 4.2/ 88.7 Beast of Nurgle Christian Schmidt 110.2 42 24 15.8/ 24.7/ 59.5 Event Horizon 0.1 Justin Kao 106.9 1 25 15.8/ 26.4/ 57.7 Knight of Khoron Christian Schmidt 105.2 9 Top 25 Averages: 30.7/ 28.7/ 40.5 132.7 31 Silver Talon has a huge lead over the rest of the field. ______________________________________________________________________________ The Hint Random Ramblings This week I couldn't think of anything specific to discuss so you will have to settle for a few mini-hints I could throw together. Just a note: for those of you who want to write a hint, send it to one of us and we will probably put it in an issue. It's difficult for us to come up with something different every week, but we do the best we can with the time available. Here is an article that Paul Kline sent to the newsgroup a while ago. I think it's worth putting in CW for future reference. ------------------------------ >From Impfinity: bomb&i dat <2667, <5334 stone&i spl #stone&i+bstep&i+magic&i, {-650 mov.i bomb&i, }stone&i add.f #bstep&i-1, stone&i <---- cool j&i djn.f stone&i, wGate ; take a look sne.x *wGate ,@wGate ; ignore single decrements djn.f wScan ,<-2001 [Editor's Note: this code will also penetrate through the last instruction of a warrior, but to do otherwise means using a lot more code.] --------- Want to kill Return of the Jedimp? John's warriors are very durable, and I'm only scoring 45% wins against the latest :-). When I get this thing working I'll let you know. It is NOT based on Harmony, uses no magic numbers and has no core-clear. It is a new way of thinking about the spiral problem. Paul Kline pk6811s@acad.drake.edu ------------------------------ Things I haven't tried but may be worth investigating: - "core clears" > 100% c may be possible using MOV >gate,>gate but can they be made to do something useful, eg. mutate into a "normal" clear? - qscan -> pspace routine -> warrior may perform better against qscans. - qscan -> non-booting warrior is also an option - one-shots are not as effective as they once were. But make sure the main warrior is before the qscan... if the warrior is a bomber it will also confuse one-shots. Here is Damage Incorporated without qscan, just to make this issue less empty :-) It's just Torch T18 with a d-clear. ;redcode-94 ;name Damage Incorporated ;author Anton Marsden ;strategy Bomber ;assert CORESIZE==8000 step equ 54 count equ 2000 gate EQU (sp-7) sp spl #-1-step,#-step ; spl half of the incendiary in sub #step+step,1 msm mov sm,*tgt+(step*count)-17228 msp mov sp,@msm ; bomb alternately with spl & mov tgt jmz.b in,#0 ; bombed with spl to start clear clr mov wipe,>gate cp djn.f clr,>gate wipe dat <2667,wipe-gate+2 ; not sure if <2667 is used in the Hill dat 0,0 ; version sm mov step+1,>step+1 ; mov half of the incendiary end sp ______________________________________________________________________________ Questions? Concerns? Comments? Complaints? Mail them to people who care. authors: Beppe Bezzi or Myer Bremer or Anton Marsden [this address will change soon] From: Anton Marsden Subject: Re: Re[2]: Speed of simulators Date: 1996/11/04 Message-ID: #1/1 references: <9610028469.AA846976550@in2.mcmail.vanderbilt.edu> newsgroups: rec.games.corewar On 2 Nov 1996 stefan.strack@mcmail.vanderbilt.edu wrote: > 19 instructions * 7 modifiers * 8 address modes * 2 = 8512 functions! > Keep in mind that speed also depends on code size: an inner loop of this > bulk cannot be cached effectively. Shouldn't that be 19*7*8*8? > The part of sim.c that can still be tweaked for speed are the A/B address > decoders. To implement the A-indirect modes I simply added a few more leafs > to the if/else tree. This can be recoded into a big switch/case statement, > saving a couple of conditionals and redundant assignments. I might get to it > tomorrow. But some instructions are equivalent, eg. add.f, add.i. I worked out that there are ~78 unique opcode-modifier pairs. Also, you can use the same function for different addressing modes, eg. < falls through to @ -> $ -> # which gives 4 functions - using address mode A only ( > and } will need separate functions). New formula: 78 "instructions" * 4 addressing modes * 8 addressing modes. If you don't bother putting addressing mode B in the jump table (or switch statement) you should be able to keep near jumps (less clocks). To decode addressing mode B a secondary table can be used... but will use CALL instead of JMP (except in special cases). There are lots of little optimisations possible... Using an additional bit to indicate addressing mode B's type - {,<,},> or #,$,@,* you can save a few cycles in zero/one operand instructions (DAT,SPL,JMP,NOP). Another thing to try: store absolute addresses (not relative) in the core. This way, getting to the required value is faster... but instructions like ADD will take longer... JMP/SPL will be super fast. Most instructions except the arithmetic operations won't need to decode the absolute address. --- Hope you understood some of that - I was babbling a bit :-) From: stefan.strack@mcmail.vanderbilt.edu Subject: Re[6]: Speed of simulators Date: 1996/11/04 Message-ID: <9610048471.AA847175703@in2.mcmail.vanderbilt.edu>#1/1 newsgroups: rec.games.corewar Anton Marsden wrote: >I agree. But I'm more interested in making the simulator fast on slower >systems without caches, eg. 286. Your solution is best for "normal" >systems though. sim.c is close to optimally coded. If you want to squeeze out a few milliseconds, your best bet is to have your compiler emit assembler (gcc -s sim.c) and start hand-optimizing. -Stefan From: Franz Subject: Re: Re[2]: Speed of simulators Date: 1996/11/04 Message-ID: #1/1 newsgroups: rec.games.corewar > Franz, read the source first before you get too much into this :-). > Sure looks like an opcode/modifier jump table to me. I was meaning a function jumptable ... but it doesn't work too well ... I never actually got too far into optimizations with C so most my stuff is more along the lines of this looks faster ... doesn't switch/case use tests to determine which case label to jump to ... ??? ... i had a table of values [20][7] which pointed to functions executing the code ... so i would just execute it without any testing ... or going thourgh the table just do jumptable[opcode][modifier](); Franz From: Franz Subject: Opcode counts Date: 1996/11/04 Message-ID: <327ECE74.16BFD7C2@azstarnet.com>#1/1 newsgroups: rec.games.corewar These are the opcode usage counts I got in a multiwarrior battle of 30 rounds of all the advanced/beginner benchmark warriors plus my tiberius 3.1 ... this at least gives some idea of what is used most ... If anyone is interested in the sim.c that counts the instructions i'll send it to him ... it's kind of an interesting statistics ... could be used as a profiling tool ... 21131038 MOV.I 7762674 SPL.B 2920558 DAT.F 1904234 SPL.A 718253 JMP.B 149711 SPL.F 128582 DJN.B 72824 DJN.F 66249 ADD.F 41954 SUB.F 23132 ADD.AB 20481 STP.B 19949 MOV.AB 15534 STP.AB 15401 ADD.A 14450 CMP.I 10070 DAT.I 8330 SNE.I 8017 JMZ.B 7145 JMZ.A 6761 SEQ.I 6368 JMN.B 6211 JMZ.F 5110 SLT.AB 4608 SUB.AB 4194 SEQ.F 2646 JMN.F 2211 JMN.A 1473 JMP.F 1258 MOV.F 1222 SNE.F 959 ADD.BA 895 STP.BA 709 SLT.A 683 SNE.AB 439 LDP.AB 437 MOV.X 408 MOV.B 239 NOP.F 129 SUB.BA 81 MOD.A 79 STP.F 75 MOD.AB 43 LDP.A 42 ADD.B as I stated above as a profiling tool here are some stats for some warriors when run by themselves, 80000 cycles Timescape: 37173 MOV.I 18112 SPL.B 16615 DAT.F 8100 JMP.B hmm it spends about the same time dying as it does splitting .. that's interesting Impfinity: 35180 MOV.I 18953 SPL.B 17693 DAT.F 4758 ADD.F 3414 DJN.F 2 JMP.B Memories: 23017 MOV.I 20662 JMP.B 18282 SPL.B 7874 ADD.A 4014 SUB.F 2031 SNE.F 2031 SEQ.F 2002 JMN.F 58 SLT.AB 29 JMN.B Tornado: 27377 MOV.I 25779 SPL.B 25778 DAT.F 533 DJN.B 533 ADD.F Tiberius: 39541 MOV.I 15642 SPL.B 15205 DAT.F 9582 JMP.B 30 SEQ.I compare the SPL/DAT ratio for timescape and tiberius ... the sim.c doesn't sort the results so i use sort -r on the program output to get this :) yes I'm lazy, but it did take only about 5 minutes to write it ... I spent already half an hour playing around and testing warriors :) ... i dunno why i find this fascinating ....:) Franz From: Franz Subject: Re: Baby Hill Date: 1996/11/04 Message-ID: <327EA9AF.588DDD0C@azstarnet.com>#1/1 references: <32796419.7BB17A25@azstarnet.com> <55lsap$kug@charnel.ecst.csuchico.edu> newsgroups: rec.games.corewar > Ok, how about if I do it this way: If nobody complains and says "NO!", > the "baby" hill will replace the current x-hill on pizza thursday morning. > > Experimental "Baby" Hill Specs: (Accessed with ";redcode-x", available at > Pizza) > hillsize: 25 warriors > rounds fought: 200 > coresize: 800 > max. processes: 800 > duration: after 8000 cycles, a tie is declared. > max. entry length: 20 > minimum distance: 20 > instruction set: ICWS '94 Draft YES!!! Franz From: Franz Subject: Re: Speed of simulators Date: 1996/11/04 Message-ID: #1/1 references: <01IBFXIM3LAQ002KOB@ACAD.DRAKE.EDU> newsgroups: rec.games.corewar > One attack on speed is to isolate the most executed instructions and > optimize those. Probably MOV..ADD..DJN.. and SPL, but pmars could > be used to run a large number of battles between many opponents and > create a usage table for all combinations of instruction, mode, and > modifier. > > Follow that study up with an approach to function-call everything, > with non-optimized instructions handled in a function that looks > pretty much like the old code. I have just tried the function jumptable thing and it does not seem to be as great as i thought ... it was a quick hack and for the mov instructions made the thing slower little bit .... for spl it was slightly faster .... it was a bad hack though and i think if done properly should be faster ... as for the usage that would be good ... spl is too far down in the switch statement ... and that's a very used instruction ... I'll try putting it up at the top and see if that helps ... it should! ... but the best thing would be running mts on all the benchmark(advanced)/hall of fame warriors and looking which are the most used and then sorting the switch statement that way ... this should i think add a LOT ... also i think the switch statement should include only opcodes and the modifier should be in a separate switch, so that the computer won't have to go through all the opcode/modifier combinations but climb down a tree instead ....these should be simple extentions ... if my head hurts again from drinking too much beer i'll get to that so right now it looks like i have wasted an afternoon not proving anything (well not an after noon about an hour, I actually didn't put all the instructions in the jumptable so whenever one of the other ones was executed it slowed the whole thing down .... the instruction modifier jumptable is very feasible with a table 20 x 7 ... I kept the A/B evaluation as it was ... hmmm ... well might do some more hacking on it but i don't think it will be too soon ... also my hack has something wrong with it since the scores differ sligtly even with the -f argument .... Franz From: Anton Marsden Subject: Re: Re[4]: Speed of simulators Date: 1996/11/04 Message-ID: #1/1 newsgroups: rec.games.corewar On Mon, 4 Nov 1996 stefan.strack@mcmail.vanderbilt.edu wrote: > Essentially, what you're proposing is to combine all three jump tables into one > huge table, e.g.: > switch(INDEX(IR.opcode, IR.A_mode, IR.B_mode)) > case INSTR(MOV, mA, IMMEDIATE, IMMEDIATE): > ..;break; > case INSTR(MOV, mA, IMMEDIATE, DIRECT): > ..;break; > } I was thinking more along the lines of: switch(INDEX(IR.opcode, IR.A_mode)) { case INSTR(MOV,mA,IMMEDIATE): ... switch(INDEXB(IR.B_mode)) { case INSTRB(IMMEDIATE): break; case INSTRB(DIRECT): break; } break; ... } But this is definitely a waste of space if the inner switch is used in every instruction. Using ASM an indirect call can be used to get the B-operand and then return to the main procedure and process the operand. Using this method, I think I could code the simulator in <64K in ASM (without parser). > All you have saved _at best_ are the two assembly jumps of the missing jump > tables, and those are so fast you probably wouldn't be able to measure an > improvement. In fact, the larger code will on most architectures result > in more cache misses and _decrease_ performance over all. I agree. But I'm more interested in making the simulator fast on slower systems without caches, eg. 286. Your solution is best for "normal" systems though. From: bayshore@slip.net Subject: Free Stuff!! Date: 1996/11/04 Message-ID: <199611041826.KAA29921@MediaCity.com>#1/1 newsgroups: rec.games.corewar Because your profile indicates you are a visionary, you have been selected to participate in a marketing study where you will receive FREE products at ABSOLUTLY NO COST TO YOU. ********************************************************************* If you do NOT want to receive FREE PRODUCT SAMPLES, discounts and other benefits only available to CLUB MAIL (tm) members, hit reply and put the word anywhere in the response, and we will never email you again. BUT if you would like FREE PRODUCT SAMPLES, discounts, and other benefits, absolutely FREE with no strings attached, hit reply and include anywhere in the response. Then, you will be enrolled in CLUB MAIL, "the place to get FREE STUFF and more" (SM) There is NO CHARGE and NO OBLIGATION, you just have to want to get the best stuff for less, even FREE. HOW IT WORKS: We have many manufactures of consumer merchandise ready and willing to send it to you just for the asking. CLUB MAIL is a new service connecting preferred consumers with top distributors and manufactures. These companies are willing to go all out to get your attention. Even, give away valuable products, with no strings attached!! These companies know that the best form of advertising is word -of- mouth. They are confident in their products and service. They know once you do business with them, you will want to tell your friends and neighbors. But, in order for any of this to happen, they need you! When you email us back a anywhere in the reply, we will add your name to a select group. You will then get emails from us, about once per week, with information about FREE PRODUCTS and SERVICES, and SPECIAL DISCOUNTS available ONLY THROUGH CLUB MAIL!! SO WHY NOT EMAIL US BACK A "MORE" right now, and await the next great offer from CLUB MAIL! Sincerely, David Schulhof Head Coach, CLUB MAIL ********************************************************************* P.S. The more you respond, the more FREE products you will receive. We have many leading manufactures that would like to have you try their products, and are willing to give them to you, just to get your feedback. SIGN UP FOR "CLUB MAIL" now. EMAIL us back a "MORE" P.S.S. We have valuable products for FREE that we can send you information on right away. But we must first have your response with as in MORE FREE STUFF on file. So don't miss out, email us back right away!! From: PK6811S@ACAD.DRAKE.EDU Subject: Re: Speed of simulators Date: 1996/11/04 Message-ID: <01IBFXIM3LAQ002KOB@ACAD.DRAKE.EDU>#1/1 newsgroups: rec.games.corewar Just got back from a trip and am catching up on this discussion. I made a couple of hacks to MacPmars to speed it up while in display mode. MacPmars redraws any location that has an activity, like execute..die.. write..increment..etc. It is fairly simple to remember what was last drawn for every location and check before any draw to see if the same icon is already there. Works very well for many battles, drawing is way slower than instruction execution. One attack on speed is to isolate the most executed instructions and optimize those. Probably MOV..ADD..DJN.. and SPL, but pmars could be used to run a large number of battles between many opponents and create a usage table for all combinations of instruction, mode, and modifier. Follow that study up with an approach to function-call everything, with non-optimized instructions handled in a function that looks pretty much like the old code. Paul Kline pk6811s@acad.drake.edu From: stefan.strack@mcmail.vanderbilt.edu Subject: Re[4]: Speed of simulators Date: 1996/11/04 Message-ID: <9610048471.AA847135726@in2.mcmail.vanderbilt.edu>#1/1 newsgroups: rec.games.corewar amarsden@comp.vuw.ac.nz wrote: >But some instructions are equivalent, eg. add.f, add.i. I worked out that >there are ~78 unique opcode-modifier pairs. Also, you can use the same >function for different addressing modes, eg. < falls through to @ -> $ -> ># which gives 4 functions - using address mode A only ( > and } will need >separate functions). New formula: 78 "instructions" * 4 addressing modes >* 8 addressing modes. If you don't bother putting addressing mode B in the >jump table (or switch statement) you should be able to keep near jumps (less >clocks). To decode addressing mode B a secondary table can be used... but >will use CALL instead of JMP (except in special cases). There are lots of >little optimisations possible... A/B operand decoding is independent of the instruction/modifier combination. Therefore, it is a waste of space to duplicate operand decoding in every instruction/modifier handling "function". sim.c already uses a big jump table (switch/case statement) to decode instruction/modifiers. I have now replaced the if/else A/B operand decoders with switch/case statements as well, so there are no conditionals used at all, improving speed by slightly more than 10%. The general structure of the inner simulator loop is: /* decode A operand */ switch (IR.A_mode) { case IMMEDIATE: ..; break; case DIRECT: ..; break; } /* decode B operand */ switch (IR.B_mode) { case IMMEDIATE: ..; break; case DIRECT: ..; break; } /* execute! */ switch(IR.opcode) { case OP(MOV, mA): ..;break; case OP(MOV, mF): ..;break; } Essentially, what you're proposing is to combine all three jump tables into one huge table, e.g.: switch(INDEX(IR.opcode, IR.A_mode, IR.B_mode)) case INSTR(MOV, mA, IMMEDIATE, IMMEDIATE): ..;break; case INSTR(MOV, mA, IMMEDIATE, DIRECT): ..;break; } All you have saved _at best_ are the two assembly jumps of the missing jump tables, and those are so fast you probably wouldn't be able to measure an improvement. In fact, the larger code will on most architectures result in more cache misses and _decrease_ performance over all. -Stefan From: sd@ecst.csuchico.edu (Miles Tagoe) Subject: Re: Baby Hill Date: 1996/11/04 Message-ID: <55lsap$kug@charnel.ecst.csuchico.edu>#1/1 references: <32796419.7BB17A25@azstarnet.com> newsgroups: rec.games.corewar In article <32796419.7BB17A25@azstarnet.com>, Franz wrote: >So how about that baby hill ... >The experimental hill ain't no good ... lets put up this interesting >hill so lets agree on these specs and go ahead with it ... Ok, how about if I do it this way: If nobody complains and says "NO!", the "baby" hill will replace the current x-hill on pizza thursday morning. Experimental "Baby" Hill Specs: (Accessed with ";redcode-x", available at Pizza) hillsize: 25 warriors rounds fought: 200 coresize: 800 max. processes: 800 duration: after 8000 cycles, a tie is declared. max. entry length: 20 minimum distance: 20 instruction set: ICWS '94 Draft Thos -- ~~~~~~~~~~~~~~~~~~~~~~~~~~~~\/~~\ /~~~\/\ / \ \ / /~\ /~~~~~YY~~~\\ /~~ Thomas "Thos" Davies V \/\ /\ V / V |\/\/| V\ / sd@ecst.csuchico.edu V \ / | / | V Internet Pizza Server \/ | /\ | Member C.W.M. Corewar King of the Hill information |/oo\| CAVE ON Since 1987 http://www.ecst.csuchico.edu/~pizza/koth/ |/\| From: Jens Bradt Subject: Core War Future Date: 1996/11/04 Message-ID: <327EA290.3668@tmfs.mpgfk.tu-dresden.de>#1/1 newsgroups: rec.games.corewar Hi all! I played Core War for a while, but soon i found it boring. In my opinion, the problem is, that warriors have to be very small, to be durable against stones and scissors. Some warriors have large boot-codes, but the actual warrior has to be small. This limits strategies and "intelligence" of warriors. So, in my opinion, every changes which are made in Core War have to prefer large warriors against small ones. Here is an idea: The adress space could be smaller than the core size. I.g. for a core size of 8000, the available adress space is only +-800. This diables stones to bomb the whole core without moving. One could even define different adress spaces for read and write processes. This change would disadvatage stones and scissors, but it won't effect papers and imps. Therefor it could be combined with a limitation of processes, and protection against imps is possible through imp-gates. Maybe, some new strategies would appear through this. Rainer Unsinn From: Franz Subject: Re: Speed of simulators Date: 1996/11/04 Message-ID: <327E24FC.7BF4C3CC@azstarnet.com>#1/1 references: <9611021258.AA07218@alpha3.arm.ac.uk> <01bbca4b$1cd80e20$0a6335ce@jidar> newsgroups: rec.games.corewar jidar wrote: > > > > > Tht's a Damn good Idea, and I'm sorry to say I aborted such an attempt a > year > > ago when I started using Alpha's to run Pmars, yes it's true I gave into > the > > 'forget efficiency just get a faster machine trap'. > > > Heh, yeah but, how could you resist? Id surely buy an alpha if I could... > Anyways, try to implement the benchmark idea, I want to have a look at > those. yeah but now I can't resist trying to make pmars faster ... I'm implementing a sort of a jumptable only for every opcode modifier combination .... no I wasn't kidding I really don't have time for this .. but this is too tempting ... and shouldn't take long :) Franz From: "jidar" Subject: Re: Speed of simulators Date: 1996/11/04 Message-ID: <01bbca4b$1cd80e20$0a6335ce@jidar>#1/1 references: <9611021258.AA07218@alpha3.arm.ac.uk> newsgroups: rec.games.corewar > > Tht's a Damn good Idea, and I'm sorry to say I aborted such an attempt a year > ago when I started using Alpha's to run Pmars, yes it's true I gave into the > 'forget efficiency just get a faster machine trap'. > Heh, yeah but, how could you resist? Id surely buy an alpha if I could... Anyways, try to implement the benchmark idea, I want to have a look at those. From: SKI Koth Server Subject: SKI-ICWS: Status - ICWS Tournament 11/04/96 Date: 1996/11/04 Message-ID: <199611040500.AAA22525@asgard.ttsg.com>#1/1 newsgroups: rec.games.corewar Weekly Status on 11/04/96 ****** NOTICE ****** We have changed our name to koth.org ****** NOTICE ****** See up to the second scores and the latest Core War information at : http://www.koth.org/~koth *FAQ* http://www.koth.org/~koth/corewar-faq.html Current Status of the StormKing Industries Annual ICWS Tournament CoreWar Hill: Last battle concluded at : Fri Oct 4 15:59:55 EDT 1996 # %W/ %L/ %T Name Author Score Age 1 51/ 34/ 14 Miss Carefree Derek Ross 168 29 2 41/ 16/ 43 Cannonade Paul Kline 167 97 3 51/ 41/ 7 Agony T Stefan Strack 161 98 4 47/ 37/ 16 Old Tire Swing Randy Graham 156 54 5 45/ 35/ 20 Giskard v0.5 Ken Mitton 156 70 6 44/ 41/ 14 Miss Carry Derek Ross 147 61 7 33/ 19/ 48 Turkey Beppe Bezzi 147 13 8 31/ 17/ 52 Nothing Special G. Eadon 146 12 9 43/ 45/ 13 Gisela 6928 Andrzej Maciejczak 141 1 10 36/ 31/ 34 Pommes-Ketchup V1.35 S. Schroeder 140 10 11 42/ 45/ 13 Gisela 6927 Andrzej Maciejczak 140 2 12 42/ 44/ 15 test88 P.Kline 139 16 13 41/ 46/ 13 Traper3_t Waldemar Bartolik 136 7 14 37/ 40/ 23 Yop La Boum v2.1 P.E.M & E.C. 135 27 15 40/ 46/ 14 Slaver v1.1i Christoph C. Birk 132 58 16 34/ 38/ 28 Beauty 1000 v 0.0 Pedro 130 4 17 42/ 54/ 4 xtc stefan roettger 129 102 18 27/ 29/ 44 One Fat Lady Robert Macrae 126 14 19 37/ 48/ 15 DoubleStone v0.7 Christoph C. Birk 125 40 20 37/ 49/ 14 Illusion Randy Graham 124 56 21 25/ 70/ 5 Xerox Franz 80 0 From: SKI Koth Server Subject: SKI-ICWS: Status - MultiWarrior 94 11/04/96 Date: 1996/11/04 Message-ID: <199611040500.AAA11773@odin.stormking.com>#1/1 newsgroups: rec.games.corewar Weekly Status on 11/04/96 ****** NOTICE ****** We have changed our name to koth.org ****** NOTICE ****** See up to the second scores and the latest Core War information at : http://www.koth.org/~koth *FAQ* http://www.koth.org/~koth/corewar-faq.html Current Status of the StormKing Industries Multiwarrior 94 CoreWar Hill: Last battle concluded at : Thu Oct 31 19:40:54 EST 1996 # Name Author Score Age 1 Die Hard P.Kline 5073 51 2 IMPossible! Maurizio Vittuari 5073 10 3 Get Even Robert Macrae 5069 4 4 Son of Imp Steven Morrell 5066 64 5 Super Evol Cap John Wilkinson 5061 28 6 IMPossible! Maurizio Vittuari 5061 18 7 Get Even II Robert Macrae 5057 3 8 Aulder Man Ian Oversby 5053 5 9 Get Evener Robert Macrae 5045 1 10 Get Even II Robert Macrae 5044 2 11 Time Vacuum Steven Morrell 4792 0 From: Franz Subject: Re: Opcode counts Date: 1996/11/05 Message-ID: #1/1 newsgroups: rec.games.corewar > >the sim.c doesn't sort the results so i use sort -r on the program > >output to get this :) yes I'm lazy, but it did take only about 5 minutes > >to write it ... I spent already half an hour playing around and testing > >warriors :) ... i dunno why i find this fascinating ....:) > > You realize you can do the same without modifying sim.c? Simply enter cdb and > send a continuous trace to a logfile, then use UNIX "sort" and "uniq" to count > instructions. oh yeah ... well i don't know cdb too well ... but thatwould work .... actually that would be better since you could count the adresses separately right?? ... so you could get an acuratestatistic for static warriors ... BUT wouldn't cdb write also the arguments which would change ... Franz From: iltzu@sci.fi (Ilmari Karonen) Subject: Re: Speed of simulators Date: 1996/11/05 Message-ID: <05199628.Amiga@sci.fi>#1/1 newsgroups: rec.games.corewar Paul Kline (PK68811S@ACAD.DRAKE.EDU) wrote: > One attack on speed is to isolate the most executed instructions and > optimize those. Probably MOV..ADD..DJN.. and SPL, but pmars could > be used to run a large number of battles between many opponents and > create a usage table for all combinations of instruction, mode, and > modifier. The problem is, those instructions are easy to optimize to a point, but you quickly find out that there's nothing unnecessary left. If you want to make MOV faster, optimize the addressing mode calculations. My own experimental MARS, written in 680x0 assembly, can do mov.i in 3 instructions, mov.x in 4 and all the others in 2. (of which one is rts) I don't remember the exact number of cycles on a '020, but I've counted them approximately and just a simple @ takes twice as much time as the MOV itself. The same goes with spl, jmp, and everything else that doesn't do math. And the routines are for the most part so obvious that any C compiler that can use register variables shouldn't be too much slower. (Well, I figured out a way to shave off a nice amount of cycles from the jumps, but that gets a bit weird..) ADD is a bit of a problem though. I half seriously though about writing special code for cases where the coresize is exactly 2^n. =) Not to mention postincrements.. -- Ilmari Karonen From: stefan.strack@mcmail.vanderbilt.edu Subject: Re: Opcode counts Date: 1996/11/05 Message-ID: <9610058472.AA847226259@in2.mcmail.vanderbilt.edu>#1/1 newsgroups: rec.games.corewar Franz wrote: >[..] >the sim.c doesn't sort the results so i use sort -r on the program >output to get this :) yes I'm lazy, but it did take only about 5 minutes >to write it ... I spent already half an hour playing around and testing >warriors :) ... i dunno why i find this fascinating ....:) You realize you can do the same without modifying sim.c? Simply enter cdb and send a continuous trace to a logfile, then use UNIX "sort" and "uniq" to count instructions. -Stefan From: (Jason) Subject: $$$$ BIG BUCKS - gijs [1/1] Date: 1996/11/05 Message-ID: <55nhff$8k3@info.service.rug.nl> newsgroups: rec.games.corewar Oh! My? $$$$ No risk??? See for yourself. Read on. THIS IS THE FAIREST MOST HONEST WAY I KNOW TO SHARE THE WEALTH! Hello! Would you like to make thousands of dollars, quick, legally, with NO CATCH? Then keep reading....please take five minutes to read this article it will change your life, just like it did mine. It's true! You can make up to or over $50,000 dollars in 4-6 weeks, maybe sooner! I SWEAR I'M NOT LYING TO YOU, AND THIS IS NOT A SCAM! If you're intrested, keep reading; if you're not, I apologize for wasting your time. Here we go. A little while back, I was browsing through these newsgroups, just like you are now, and came across an article similar to this that said you could make thousands of dollars in weeks with only an initial investment of $5! So, I thought, "Yeah, right, must be a scam", but I was curious, like most of us , so I kept reading. Anyway, it said that you send $1 to each of the 5 names and addresses stated in the article. You then place your own name and address in the article at the bottom of the list at #5, and post the article in at least 200 newsgroups (there are thousands). No catch, that was it! So after thinking it over, talking to a few people first, I tried it. I figured what have I got to lose except for 5 stamps and $5, right? Well, guess what...within 7 days, I started getting money in the mail! I was shocked! I still figured it would end soon, and didn't give it another thought. But then money kept coming IN, tripling in size and multiplying by 10-20 times the amount that I got the first week! In my first week I made about 20 to 30 dollars. But by the end of the second week, I had made a total of over $1,000!!!! In the third week, I had over $10,000 dollars, and it's still growing. This is my fourth week (Oct 11) and I've made about $42,000 TOTAL, and the money is still coming in..... Let me tell you how this works and most importantly, WHY it works...also, make sure you print a copy of the article NOW, so you get the informatoin off of it, and begin making money. The process is very simple, and it consists of 3 EASY steps: STEP 1: Get 5 seperate pieces of paper and write the following on each sheet of paper..."PLEASE PUT ME ON YOUR MAILING LIST. YOU ARE NUMBER 4." Get five $1 bills and place ONE inside each piece of paper that you just wrote on, and fold each piece of paper so the bill will not be seen in the envelope (otherwise, nosey people who like to steal envelopes with money in it will get yours). Put one paper inside the envelope and seal it. Do the same for all 5. You should now have 5 envelopes sealed, EACH have a piece of paper AND a $1 bill stuffed inside of the paper. Make sure those words that were stated above are stated on each paper. What you are doing is creating a service by this, this is PERFECTLY LEGAL. Now then, mail the 5 envelopes with the paper and $1 in each to the following 5 addresses: 1. N.North, 1301 Kingsway Dr. #14, Picayune,Ms. 39466 2. D.Buff, 6503 Whispering Oaks, Wharton,Tx. 77488 3. H. H. , 435 Franklin TPA Apt 15 Mahwah, N.J. 07430 4. Bruce, P.O. BOX 63 4700 KEELE ST., NORTH YORK, ONTARIO, M3J 1P3 5. Gijs Hubben, slachthuisstr. 291, 9713MR Groningen, The Netherlands. STEP 2: Now take the #1 name off the list that you see above, move the other 4 names up (5 becoming 4, 4 becoming 3, ect.) and put YOUR NAME as number 5 on the list. You can slightly alter this article if you need to, editing what you need to edit. STEP 3: Post your amended article (with your name at #5) to at least 200 news groups ( I think there are close to 18,000 of them). All you need is say, at least 200. HOW TO DO THIS: If you have Netscape 3.0 do EXACTLY the following: 1) Click on any news group like normal, THEN click on 'TO NEWS', which is on the far left when you're in the newsgroups page. This will bring up a box to type a message in. 2) Leave the newsgroup box like it is, CHANGE the subject box to something flashy, like, "NEED CASH $$$ READ HERE $$$" or "FAST CASH"!!! 3) Tab once and you should be ready to type. Now, retype (only once) THIS whole article WORD FOR WORD, except to insert your name at #5, and to remove #1 off the list, plus any other small changes you think you need to make. Keep almost all of it the SAME! 4) When you're done typing the WHOLE article, click on FILE in THIS BOX, RIGHT ABOUVE SEND, NOT WHERE IT SAYS NETSCAPE NEWS ON THE FIRST BOX. Click on SAVE AS when you're under FILE. Save you artcle as a text file to your C: or A: drive. DO NOT SEND OR POST YOUR ARTICLE UNTIL YOU DO THIS. Once saved, move on to number 5 below. 5) If you still have all of your text, send or post to this newsgroup now by just clicking send, which is right below FILE, and right above Cc: . 6)Here's where you're going to post all 200. OK, click on any news group then click on 'TO NEWS', again in the top left corner. Leave the NEWSGROUPS BOX alone again, put a flashy subject title in the SUBJECT BOX, hit TAB once you're in the body of the message, and then click on ATTACHMENTS, which is below the SUBJECT BOX. You will get another box to come up. Click on ATTACH FILE, then find YOUR file that you saved; click once on the file, and then click OPEN' now click on OK; if you did this right, you should see your file name in the attachments box, and it will be shaded green. IF YOU USE IE EXPLORER IT'S JUST AS EASY...HOLDING DOWN THE LEFT MOUSE BUTTON, HIGHLIGHT THIS ARTICLE. THEN PRESS THE "CRTL" KEY AND THE "C" KEY AT THE SAME TIME TO COPY THIS ARTICLE. THEN PRINT THIS ARTICLE FOR YOUR RECORDS TO HAVE THE NAMES OF THOSE YOU WILL BE SENDING $1 BILLS TO. NEXT GO TO THE NEWS GROUPS AND PRESS "POST AN ARTICLE" A WINDOW WILL OPEN. TYPE IN YOUR HEADLINE IN THE SUBJECT AREA AND THEN CLICK IN THE LARGE WINDOW BELOW. PRESS "CRTL" AND THEN "V" AND THE ARTICLE WILL BE PLACED IN THE WINDOW. IF YOU WANT TO EDIT THE ARTICLE, DO SO AND THEN HIGHLIGHT AND COPY IT AGAIN. NOW EVERYTIME YOU POST THE ARTICLE IN A NEW NEWSGROUP ALL YOU HAVE TO REPEAT "CTRL" AND "V" AND PRESS POST. 7)That's it. Each time you do this, all you have to do is type in a different newsgroup, so that way, it posts to 200 DIFFERENT newsgroups, you see? Now you just have 199 to go!! (Don't worry, each one takes about 30 seconds, once you get used to it) REMEMBER 200 IS THE MINIMUM. The more you post the more money you will make. AND THAT'S IT!!! THAT'S THE ONLY 3 STEPS THERE IS!!! You are now in the mail order business and will start recieving your $1 envelopes from various people all over the world within days. HINT THE MORE NEWSGROUPS YOU POST TO, THE MORE MONEY YOU WILL MAKE. You may want to rent a PO Box eventually because of all the mail. If you wish to stay anonymous, you can come up with a name, such as "manager" or "investor". Just make sure all the addresses are CORRECT, please. LET ME TELL YOU WHY THIS SYSTEM WORK!!!! Out of every 200 postings, let's say I ONLY recieve 5 replies, which is actually VERY LOW. So I made 5 dollars with my name at #5. Now then, each person who just sent me $1 makes, say only 200 postings, now with your name at number 4, WHICH IS A TOTAL OF 1000 POSTINGS, not including yours too. 50 people send you $1 now; thats $50 you just made! Now, then your new 50 agents post 200 each with YOUR NAME AT NUMBER 3, OR 10,000 POSTING (50x200). Average return is 500 at $1 each is $500. They make 200 postings, which is 5,000 returns at $1 each, which is $5000 dollars! And finally, 5000 people make 200 postings wach with YOUR NAME AT NUMBER 1. YOU NOW GET A RETURN OF $50,000 BEFORE YOUR NAME DROPS OFF THE LIST. AND THAT'S IF EVERYONE MAKES 200 POSTINGS ONLY, AND IF ONLY 5 PERSONS RESPOND!!!!! When your name is no longer on the list, you just take the latest posting that is appearing in the newsgroups, and SEND OUT ANOTHER $5 TO THE NAMES ON THE LIST, PUTTING YOUR NAME AT 5 AGAIN. And start posting Article Unavailable From: Franz Subject: Re: Opcode counts Date: 1996/11/05 Message-ID: <327EE8A6.3360CE64@azstarnet.com>#1/1 references: <327ECE74.16BFD7C2@azstarnet.com> <55mnos$m8m@senator-bedfellow.MIT.EDU> newsgroups: rec.games.corewar > Its amazing, but just a few hours ago I was thinking about modding sim.c > myself to do exactly what you just did. Another thought I had was that you > could introduce another field in each instruction, which would serve to make > every instruction in the warrior unique. Just something tacked on in the > assembly process which would allow you to say that the third MOV.AB was > executed x times while the first one was only executed y times. Dunno > exactly how useful the output from that would be tho'... I guess it would be > useful if the results you got from the profiler were different than the > results you expected... yes that would make it a better profiler ... actually i think it's pretty good for testing components of a warrior right now ... or if you have a stone/imp or some other combination you can see how much time is spent on each part ... also i think the data for paper is quite interesting and could be used for fine tuning the constants or bombing runs ... Franz From: Planar Subject: Re: Re[2]: Speed of simulators Date: 1996/11/05 Message-ID: <55ne09$1ck@news-rocq.inria.fr>#1/1 references: newsgroups: rec.games.corewar In article , Franz writes: >doesn't switch/case use tests to determine which case label to jump to ... >??? ... Not if your compiler is half-decent, no. It will do two tests to check that the value is in the range, then jump through a table. At least in the case of pMars, where the values are all in 0..18. -- Planar From: Anton Marsden Subject: Re: Re[6]: Speed of simulators Date: 1996/11/05 Message-ID: #1/1 newsgroups: rec.games.corewar On Mon, 4 Nov 1996 stefan.strack@mcmail.vanderbilt.edu wrote: > Anton Marsden wrote: > >I agree. But I'm more interested in making the simulator fast on slower > >systems without caches, eg. 286. Your solution is best for "normal" > >systems though. > sim.c is close to optimally coded. If you want to squeeze out a few > milliseconds, your best bet is to have your compiler emit assembler > (gcc -s sim.c) and start hand-optimizing. I guess so... it's much simpler than having to re-write an entire simulator. From: stefan.strack@mcmail.vanderbilt.edu Subject: Re[4]: Speed of simulators Date: 1996/11/05 Message-ID: <9610048471.AA847176903@in2.mcmail.vanderbilt.edu>#1/1 newsgroups: rec.games.corewar Apologies, this is getting increasingly technical, maybe followups to comp.lang.c? Franz wrote: >doesn't switch/case use tests to determine which case label to jump to ... >??? ... If your compiler translates switch/case into conditionals, throw it away :-) Why else did you think case labels had to be constants? >i had a table of values [20][7] which pointed to functions executing the >code ... so i would just execute it without any testing ... or going >thourgh the table just do > >jumptable[opcode][modifier](); Now, you want to avoid functions at all cost. Context switches following function calls and returns are extremely expensive -- I've seen compilers that save/restore the entire register set. This is why sim.c is one huge function: an insult to structured programming but efficient. -Stefan From: Anton Marsden Subject: Re: Pizza hill question Date: 1996/11/05 Message-ID: #1/1 references: <199610282008.OAA18800@mail.utexas.edu> <558gon$k68@charnel.ecst.csuchico.edu> newsgroups: rec.games.corewar On 30 Oct 1996, Miles Tagoe wrote: > >>What is the 94 experimental hill at Pizza? > >It was originally designed as some sort of anti-pspace Hill... by splitting > >up the battles, pspacers would have to think faster. That concept was a total > >flop, however, ... > I am ready and willing to change it as soon as a few of you can agree on a > set of specs. Neither the tiny hill nor the 9 pts/win hill received much > support. Anyone have any other ideas? It may be good to keep as a kind of intermediate hill. But if not, I'd like to see it turn into a limited process hill (8 max processes). From: Franz Subject: Re: Speed of simulators Date: 1996/11/05 Message-ID: <327EEA44.20CBBDCA@azstarnet.com>#1/1 references: <9610048471.AA847175703@in2.mcmail.vanderbilt.edu> newsgroups: rec.games.corewar > sim.c is close to optimally coded. If you want to squeeze out a few > milliseconds, your best bet is to have your compiler emit assembler > (gcc -s sim.c) and start hand-optimizing. actually now thinking about it .... it probably is .... but i have to say the compiler does most of it i think .... Watcom/DOS should be faster then DJGPP I gotta try that out ... I just tested -O and -O3 difference on gcc is close to about 20% in time for the server version, I would still have to test it under more "perfect" conditions .. since my mail fetching daemon was running every five minutes plus i was downloading something so it was just to get a rough idea .... but it will definately do a lot ... Tommorrow i will have to use win/dos anywayz so i migth as well try the watcom stuff ... Franz From: gmeadon@mit.edu (George M Eadon) Subject: Re: Opcode counts Date: 1996/11/05 Message-ID: <55mnos$m8m@senator-bedfellow.MIT.EDU>#1/1 references: <327ECE74.16BFD7C2@azstarnet.com> newsgroups: rec.games.corewar Franz (franz@azstarnet.com) wrote: : These are the opcode usage counts I got in a multiwarrior battle of 30 : rounds of all the advanced/beginner benchmark warriors plus my tiberius : 3.1 ... this at least gives some idea of what is used most ... If anyone : is interested in the sim.c that counts the instructions i'll send it to : him ... it's kind of an interesting statistics ... could be used as a : profiling tool ... Its amazing, but just a few hours ago I was thinking about modding sim.c myself to do exactly what you just did. Another thought I had was that you could introduce another field in each instruction, which would serve to make every instruction in the warrior unique. Just something tacked on in the assembly process which would allow you to say that the third MOV.AB was executed x times while the first one was only executed y times. Dunno exactly how useful the output from that would be tho'... I guess it would be useful if the results you got from the profiler were different than the results you expected... From: Franz Subject: Re: Speed of simulators Date: 1996/11/06 Message-ID: #1/1 references: <199611060512.XAA28003@mail.utexas.edu> newsgroups: rec.games.corewar > Well, obviously, you have to take into consideration that when warriors > excecute SPL and MOV.I frequently, they are slowest, since you end up with > papers or imps... so it would seem that mov should be first, and spl should > be second. :/ well from the opcode counts you can see that :) Franz From: Franz Subject: Re: Speed of simulators Date: 1996/11/06 Message-ID: #1/1 references: <3275E243.5F15@cam.ac.uk> <32796639.66774D49@azstarnet.com> <55fs2p$a58@news.asu.edu> newsgroups: rec.games.corewar > You could use macros to generate the code. But on the subject of needing > a program to write the program... > > The maximum number of unique Opcode-Modifier-AddrModeA-AddrModeB needed > in a "standard" simulation will be 200 (2 * max. instruction length). So to > generate optimal code for this, the simulator would only need to know > 200 instructions when running the simulation. This means code could be > generated before the 200 battles to produce high performance. Obviously it's > complicated but if done will greatly reduce the amount of conditionals needed > per instruction execution. On a 486+ it may not be worth doing, but running > PMARS on a 286 (16Mhz) is unbearably slow. hmmm ... self modifying code ... that would be worthy for a MARS emulator :) on eother thing could be done ... some profiling algorythm could run on the first 3 to 10 rounds (simple not to take up much cycles) and then would optimize the MARS for just this kind of battle ... soemthing like a p-brain :) also the max instruction combinations would be 201 since you have to count dat.f $0,$0 as a possibility for execution Franz From: Matt Lewinski <98mlewinski@kamsc.k12.mi.us> Subject: Interesting New Bomber Date: 1996/11/06 Message-ID: <3280FDDA.32FB@kamsc.k12.mi.us>#1/1 newsgroups: rec.games.corewar I've been playing around with things, and i came up with something rather interesting. It is a .60c bomber that can be realy interesting, depending on the constants, these have been changed however :-) Here is the base code. ;redcode ;name Neat Thing That has Bad Constants ;author Matt Lewinski org loop space equ 8 data dat.f $83 , $29 mult dat.f $2 , $2 for space dat.f $0 , $0 rof loop mul.x $data , $mult mov.i $data , @mult mov.i $data , *mult mov.i {mult , -90 mov.i $datf , >data djn.f $-1 , >data datf dat.f >2667 , }datf-data+2 And to test the constants, change the mov.i int the loop to compares (actually, the first two are cmp.i, the last one is sne.i), because if you find something to be different, you've hit yourself, and the clear will prematurely start. Any use for this, with good constants, does it stand a chance. -- -------------------------------------------------------------------- Matt Lewinski 98mlewinski@kamsc.k12.mi.us Kalamazoo Area mlewinsk@newton.kamsc.k12.mi.us Math & Science Center http://www.kamsc.k12.mi.us/sp98/mlewinsk From: iltzu@sci.fi (Ilmari Karonen) Subject: Re: Opcode counts Date: 1996/11/06 Message-ID: <06199647.Amiga@sci.fi>#1/1 newsgroups: rec.games.corewar Franz (franz@azstarnet.com) wrote: > These are the opcode usage counts I got in a multiwarrior battle of 30 > rounds of all the advanced/beginner benchmark warriors plus my tiberius > 3.1 ... this at least gives some idea of what is used most ... If anyone > is interested in the sim.c that counts the instructions i'll send it to > him ... it's kind of an interesting statistics ... could be used as a > profiling tool ... > > 21131038 MOV.I > 7762674 SPL.B > 2920558 DAT.F > 1904234 SPL.A > 718253 JMP.B > 149711 SPL.F So far so good, all these are fast instructions.. > 128582 DJN.B > 72824 DJN.F > 66249 ADD.F > 41954 SUB.F > 23132 ADD.AB Math and decrements can be slow depending on compiler, system, cpu, pipelining, caches, the phase of the moon etc, but it's nothing serious.. > 20481 STP.B > 19949 MOV.AB > 15534 STP.AB Ouch! Brainwashing can slow it down quite a bit. At least in my fairly (IMHO) well optimized simulator, STP and LDP are by far the slowest of all instructions, except perhaps MUL. This results mainly from forcing the addresses to modulo PSPACESIZE, plus all the extra hassle with PINs and LDP #0 and all those mem accesses. (This is one of the reasons I'll NEVER implement r/w limits in it..) [lot of statistics deleted] It would indeed seem that the way to go is to optimize the process queue things and addressing mode calculations. There's not much you can do to optimize MOV itself, and even without imps it should still clearly be the most common instruction. (neither is there much room for optimization in SPL/JMP/DAT/SNE/SEQ..) -- Ilmari Karonen From: Franz Subject: Re: Re[2]: Opcode counts Date: 1996/11/06 Message-ID: #1/1 newsgroups: rec.games.corewar > For example: > > idn% pmars -be rave.red aeka.red > 00001 CMP.I $ 125, $ 113 > (cdb) w log.txt > Opening logfile > (cdb) @step~! > Rave by Stefan Strack scores 3 > Aeka by T.Hsu scores 0 > Results: 1 0 0 > idn% cat profile > #! /bin/csh > cat $1 | sed -e "s/ *[0-9]* *//" -e "s/ .*//" | sort | uniq -c | sort -r -n yup .. I would leave the addresses in there though ... would make an easier profiling for static warriors ... ... actually how about making it count address itexecutes for papers ... that owuld be a good profiling method ... though you would have to have some sort of algorythm to anylyze the data .... I'm actually thinking about writing a tool that calculates paper distribution .... (about) not the best simulation so that it would be fast and you could try lots of numbers .... > The "sed" filter extracts the instruction/modifier here; you easily adapt it to > extract core addresses, operands etc.. yup ... i allways have to read the man pages for all those things so it was easier to change sim.c :) ... Franz From: Scott Manley Subject: Re: Speed of simulators Date: 1996/11/06 Message-ID: <9611060823.AA14972@alpha3.arm.ac.uk>#1/1 newsgroups: rec.games.corewar jidar wrote: > > > > Tht's a Damn good Idea, and I'm sorry to say I aborted such an attempt a > year > > ago when I started using Alpha's to run Pmars, yes it's true I gave into > the > > 'forget efficiency just get a faster machine trap'. > > > Heh, yeah but, how could you resist? Id surely buy an alpha if I could... > Anyways, try to implement the benchmark idea, I want to have a look at > those. It might surprise you to know that my 233 MHz alpha Desktop Box cost me less than a Pentium PC would (900 UK pounds, typical Base spec PC's cost 1200). Which Benchmark are you talking about? -- Scott Manley (aka Szyzyg) /------ _@/ Mail -----\ ___ _ _ __ __ _ | Armagh Observatory | / __| __ ___| |_| |_ | \/ |__ _ _ _ | |___ _ _ | Armagh | \__ \/ _/ _ \ _| _| | |\/| / _` | ' \| / -_) || | | Northern Ireland | |___/\__\___/\__|\__| |_| |_\__,_|_||_|_\___|\_, | | BT61 9DG. | http://star.arm.ac.uk/~spm/welcome.html |__/ \=====================/ From: stefan.strack@mcmail.vanderbilt.edu Subject: Re[2]: Speed of simulators Date: 1996/11/06 Message-ID: <9610048471.AA847174203@in2.mcmail.vanderbilt.edu>#1/1 newsgroups: rec.games.corewar >yeah but now I can't resist trying to make pmars faster ... I'm >implementing a sort of a jumptable only for every opcode modifier >combination .... no I wasn't kidding I really don't have time for this >. but this is too tempting ... and shouldn't take long :) > >Franz Franz, read the source first before you get too much into this :-). sim.c: > /* execute it! */ > display_exec(progCnt); > switch (IR.opcode) { > > case OP(MOV, mA): > display_read(addrA); > memory[addrB].A_value = ADDRA_AVALUE; > display_write(addrB); > break; > > case OP(MOV, mF): > [...] Sure looks like an opcode/modifier jump table to me. -Stefan From: stefan.strack@mcmail.vanderbilt.edu Subject: Re[2]: Opcode counts Date: 1996/11/06 Message-ID: <9610058472.AA847259066@in2.mcmail.vanderbilt.edu>#1/1 newsgroups: rec.games.corewar >oh yeah ... well i don't know cdb too well ... but thatwould work .... >actually that would be better since you could count the adresses >separately right?? ... so you could get an acuratestatistic for static >warriors ... BUT wouldn't cdb write also the arguments which would change >.. > >Franz For example: idn% pmars -be rave.red aeka.red 00001 CMP.I $ 125, $ 113 (cdb) w log.txt Opening logfile (cdb) @step~! Rave by Stefan Strack scores 3 Aeka by T.Hsu scores 0 Results: 1 0 0 idn% cat profile #! /bin/csh cat $1 | sed -e "s/ *[0-9]* *//" -e "s/ .*//" | sort | uniq -c | sort -r -n idn% profile log.txt 52578 SPL.A 25282 DAT.F 19164 MOV.I 10122 DJN.B 3997 SUB.F 3997 CMP.I 3336 DJN.F 734 SLT.A 723 SUB.AB 723 MOV.AB 723 JMN.B 637 SPL.B 81 ADD.F 13 JMP.B 13 DJN.A 1 Opening 1 (cdb) idn% The "sed" filter extracts the instruction/modifier here; you easily adapt it to extract core addresses, operands etc.. -Stefan From: jwilkinson@mail.utexas.edu Subject: Re: Speed of simulators Date: 1996/11/06 Message-ID: <199611060512.XAA28003@mail.utexas.edu>#1/1 newsgroups: rec.games.corewar >as for the usage that would be good ... spl is too far down in the switch >statement ... and that's a very used instruction ... I'll try putting it >up at the top and see if that helps ... it should! ... but the best thing >would be running mts on all the benchmark(advanced)/hall of fame warriors >and looking which are the most used and then sorting the switch statement >that way ... this should i think add a LOT ... Well, obviously, you have to take into consideration that when warriors excecute SPL and MOV.I frequently, they are slowest, since you end up with papers or imps... so it would seem that mov should be first, and spl should be second. :/ From: stefan.strack@mcmail.vanderbilt.edu Subject: Faster sim.c available Date: 1996/11/07 Message-ID: <9610078474.AA847405755@in2.mcmail.vanderbilt.edu>#1/1 newsgroups: rec.games.corewar For you speed freaks, I've uploaded a 10% accelerated sim.c as ftp://koth.org/incoming/sim.zip (you can't see the file in this directory, but you can download it). The if/else operand evaluation is replaced by case/switch, which not only makes the code faster, but also a lot easier to read/maintain. I'm uploading a full maintenance release of pMARS with a few other minor changes later this month, together with the DOS binaries. -Stefan From: Franz Subject: Re: Speed of simulators Date: 1996/11/07 Message-ID: #1/1 references: <3275E243.5F15@cam.ac.uk> <32796639.66774D49@azstarnet.com> <55fs2p$a58@news.asu.edu> newsgroups: rec.games.corewar > But then how could the profiling information be used to substantially > improve performance? well that depends how it would be coded ... I can't really think of how you would do that with the current code though ... maybe it could be done really as a pbrain ... trying several configurations and keeping the one that works best ... Franz From: Franz Subject: Re: New Baby Hill Date: 1996/11/07 Message-ID: #1/1 references: <32796419.7BB17A25@azstarnet.com> <55lsap$kug@charnel.ecst.csuchico.edu> <55u7m3$i3p@charnel.ecst.csuchico.edu> newsgroups: rec.games.corewar > Have at it. If this doesn't see much action, I may consider changing it to > a limited process hill in a few months. hmm it sent me a message saying assertion CORESIZE==800 failed .. I'll try again tommorow Franz From: Franz Subject: Re: Speed of simulators Date: 1996/11/07 Message-ID: <328196CD.3FA3FC6@azstarnet.com>#1/1 references: <3275E243.5F15@cam.ac.uk> <32796639.66774D49@azstarnet.com> newsgroups: rec.games.corewar > I have hacked pmars once to be about 10% faster (BUT VERY UNSTABLE!) .. > and I lost the source somewhere ... if i find it i'll pass it along ... I found it and figured out why it was faster ... the A/B evaluation didn't work and it killed most programs much quicker ... in reality when you use only the stuff that it knows it's about 50% slower I really should have used the -f option for testing ... so that you know that the thing is actually working right ... :) ok now for what i tried to do this time tried to convert the B evaluation to switch, but didn't succeed in making it any faster ... in fact it might have been slower a couple of milliseconds ... i'm cheap and i use a stopwatch to time it :) ... yeah it's the easiest way ... rave/tiberius battle takes around 20 sec 50 milisecs under X with netscape running ... server option and -O3 used ... Franz From: Beppe Bezzi Subject: Round 5 results Date: 1996/11/07 Message-ID: newsgroups: rec.games.corewar Flight of Dragons by Ian Oversby scores 50 All Mixed Up... by George Eadon scores 50 Results: 0 0 50 Flight of Dragons by Ian Oversby scores 105 All Mixed Up... by George Eadon scores 45 Results: 35 15 0 Flight of Dragons by Ian Oversby scores 84 All Mixed Up... by George Eadon scores 36 Results: 18 2 30 Flight of Dragons by Ian Oversby scores 254 Results: 0 17 18 15 0 All Mixed Up... by George Eadon scores 193 Results: 0 9 17 15 9 Tornado 3.0 by Beppe scores 138 Results: 0 4 13 15 18 Torch t18 by P.Kline scores 103 Results: 0 4 6 15 25 Oversby 493 Eadon 324 Blue Funk 6 by Steven Morrell scores 35 Can't think of any decent names this week :-) by Philip Kendall scores 80 Results: 0 15 35 Blue Funk 6 by Steven Morrell scores 108 Can't think of any decent names this week :-) by Philip Kendall scores 42 Results: 36 14 0 Can't think of any decent names this week :-) by Philip Kendall scores 304 Results: 2 24 17 7 0 Tornado 3.0 by Beppe scores 204 Results: 0 14 17 7 12 Torch t18 by P.Kline scores 166 Results: 0 10 15 7 18 Blue Funk 6 by Steven Morrell scores 31 Results: 0 0 2 7 41 Morrell 174 Kendall 576 Steven's warrior didn't compile in part 3 myRoundVI by Paulsson scores 49 Plywood by Franz scores 82 Results: 10 21 19 myRoundVI by Paulsson scores 49 Plywood by Franz scores 100 Results: 16 33 1 myRoundVI by Paulsson scores 61 Plywood by Franz scores 76 Results: 16 21 13 Tornado 3.0 by Beppe scores 209 Results: 3 3 16 21 7 myRoundVI by Paulsson scores 197 Results: 0 7 17 21 5 Plywood by Franz scores 174 Results: 0 3 18 21 8 Torch t18 by P.Kline scores 100 Results: 1 1 3 21 24 Paulsson 356 Franz 432 bump.v2 by harleyQ2 scores 84 4way by David Moore scores 66 Results: 28 22 0 bump.v2 by harleyQ2 scores 3 4way by David Moore scores 147 Results: 1 49 0 bump.v2 by harleyQ2 scores 84 4way by David Moore scores 66 Results: 28 22 0 4way by David Moore scores 279 Results: 9 9 15 2 15 Tornado 3.0 by Beppe scores 246 Results: 9 5 14 2 20 Torch t18 by P.Kline scores 173 Results: 4 6 13 2 25 bump.v2 by harleyQ2 scores 36 Results: 0 0 6 2 42 Joshua 207 Moore 525 Evoltmp 88 by John K W scores 69 Hired Guns by Robert Macrae scores 57 Results: 15 11 24 Evoltmp 88 by John K W scores 56 Hired Guns by Robert Macrae scores 80 Results: 14 22 14 Evoltmp 88 by John K W scores 87 Hired Guns by Robert Macrae scores 60 Results: 28 19 3 Hired Guns by Robert Macrae scores 245 Results: 1 16 11 21 1 Evoltmp 88 by John K W scores 174 Results: 0 8 11 21 10 Torch t18 by P.Kline scores 132 Results: 0 7 4 21 18 Tornado 3.0 by Beppe scores 120 Results: 1 1 7 21 20 JKW 386 Mcrae 442 Forty by Anton Marsden scores 123 Dodger by M R Bremer scores 21 Results: 39 5 6 Forty by Anton Marsden scores 128 Dodger by M R Bremer scores 20 Results: 42 6 2 Forty by Anton Marsden scores 282 Results: 2 27 9 6 6 Dodger by M R Bremer scores 187 Results: 4 12 5 6 23 Torch t18 by P.Kline scores 135 Results: 1 11 5 6 27 Tornado 3.0 by Beppe scores 100 Results: 0 6 8 6 30 Marsden 683 Bremer 228 Myer's warrior didn't compile in part 3 imp by Dewdney and Justin Kao scores 50 imp by Lewis scores 50 Results: 0 0 50 imp by Dewdney and Justin Kao scores 50 imp by Lewis scores 50 Results: 0 0 50 imp by Dewdney and Justin Kao scores 50 imp by Lewis scores 50 Results: 0 0 50 Torch t18 by P.Kline scores 210 Results: 3 2 11 32 2 Tornado 3.0 by Beppe scores 185 Results: 1 2 12 32 3 imp by Lewis scores 131 Results: 0 0 7 32 11 imp by Dewdney and Justin Kao scores 126 Results: 0 0 6 32 12 Kao 276 Lewis 281 Both players submitted an imp imp by M. Lewinsky scores 21 bored loser by bjoern guenzel scores 108 Results: 0 29 21 imp by M. Lewinsky scores 33 bored loser by bjoern guenzel scores 84 Results: 0 17 33 imp by M. Lewinsky scores 23 bored loser by bjoern guenzel scores 104 Results: 0 27 23 Tornado 3.0 by Beppe scores 290 Results: 10 8 9 13 10 Torch t18 by P.Kline scores 181 Results: 4 6 8 13 19 bored loser by bjoern guenzel scores 162 Results: 4 4 7 13 22 imp by M. Lewinsky scores 68 Results: 0 2 3 13 32 Lewitsky 145 Guenzel 458 Lewisky didn't sent a warrior I used an imp for him Lazy by more than 1 scores 86 imp by Morgan Linial scores 41 Results: 21 6 23 Lazy by more than 1 scores 66 imp by Morgan Linial scores 42 Results: 8 0 42 Lazy by more than 1 scores 86 imp by Morgan Linial scores 41 Results: 21 6 23 Tornado 3.0 by Beppe scores 222 Results: 2 10 13 19 6 Lazy by more than 1 scores 220 Results: 0 14 13 19 4 Torch t18 by P.Kline scores 170 Results: 2 4 11 19 14 imp by Morgan Linial scores 67 Results: 0 0 2 19 29 An interesting bug in pmars :-) Lazy is by Zuhl Nadzri of course Nadzri 458 Morgan 191 Morgan-Linial didn't sent a warrior I used an imp for him Standings after qualifying rounds are the following: Pos. # Player Score Opp. met 2nd lev score ----------------------------------------------------------------------------- 1 5 Ian Oversby 15 6.7.1.9.18 29 2 14 Philip Kendall 12 13.15.2.3.9 30 3 1 Franz 10 2.4.5.18.15 41 4 18 George Eadon 10 17.2.3.1.5 31 5 9 Steven Morrell 9 10.12.15.5.14 42 6 15 Magnus Paulsson 9 16.14.9.13.1 37 7 13 David M. Moore 9 14.11.16.15.4 34 8 10 Anton Marsden 9 9.8.6.7.2 22 8 11 Robert McRae 9 12.13.17.16.8 22 10 4 Joshua 7 3.1.7.8.13 29 11 8 J. K. Wilkinson 7 7.10.12.4.11 28 12 16 Zul Nadzri 6 15.17.13.11.6 24 13 17 Bjoern Guenzel 6 18.16.11.6.12 22 14 7 Justin Kao 4 8.5.4.10.3 36 15 3 J. K. Lewis 4 4.6.18.14.7 30 16 2 M. R. Bremer 3 1.18.14.12.10 41 17 12 Matt Lewinski 3 11.9.8.2.17 31 18 6 Ross Morgan-Linial 0 5.3.10.17.16 30 ------------------------------------------------------------------------------ Congratulations to Ian Oversby, winning all five rounds, and also to PhilKendall, Franz and George Eadon, qualifying for the semifinal round. Thank you to all others for playing, better luck next time. Semifinal pairings are as follow Oversby - Eadon Kendall - Franz You have 48 hours from now, time and date of this message, to send me the instruction, the modifier and the addressing mode to ban in the fight; deadline for submissio of the warrior is Wed 13.11.96 20:00 MET Enjoy and happy redcoding -Beppe From: ruhl@odin.cair.du.edu (Robert A. Uhl) Subject: FTP Site? Date: 1996/11/07 Message-ID: <55tpns$g83@hermes.cair.du.edu>#1/1 newsgroups: rec.games.corewar I don't recall if anyone remembers me; I was the fellow who designed the piggy series which did well for awhile. Anyway, it appears that ftp.csua.berkeley.edu accepts anonymous connexions. What is the new site? -- Robert Uhl | Save the Ales! Homebrewer Since 1995 Orthodox Christian | If you like the Macintosh, send mail to Macintosh Programmer | evangelist@macway.com for information about the Bolo Player (Spectre) | EvangeList, Guy Kawasaki's list for Mac advocates. From: Jon Evans Subject: S. Cal launch of MSFS 6.0 Date: 1996/11/07 Message-ID: <328236DA.286C@earthlink.net>#1/1 newsgroups: rec.games.corewar Hello, It's kind of last minute but here's a bit of news that Flight Simulator and aviation fans in Southern California might enjoy...and can attend: ---------- For Immediate Release Museum of Flying Launches Microsoft Flight Simulator for Windows 95 With Free Admission, Cool Activities and Prizes for Enthusiasts SANTA MONICA, Nov. 6, 1996 - The Museum of Flying in Santa Monica will celebrate the highly-anticipated launch of Microsoft Flight Simulator version 6.0 for Windows 95 with free admission Sunday, November 10th, and aviation enthusiasts of all ages having the opportunity to participate in activities and win prizes. Microsoft, The Museum of Flying and CompUSA will provide activities from 11:00AM to 4:00PM including; * Head to head virtual air races on Personal Computers running Flight Simulator 6.0 for Windows 95 * Free rides in World War I interactive dogfighters * Aviation movies in the museum theater * An up close look at museum warbirds including a Grumman F8 Bearcat, Republic P-47 and Hawker MkII Hurricane. Prizes will be awarded throughout the day and attendees will have the opportunity to enter to win a ride in a P-51 Mustang or hourly rides in a Stearman open-cockpit bi-plane, 25 copies of Microsoft Flight Simulator 6.0, T-shirts, buttons and other memorabilia. Children and the Museum of Flying will benefit from Microsoft's donation toward the purchase of computer hardware and software for a new exhibit in the children's interactive area. Jose Pinero, Microsoft Flight Simulator Product Manager, from Microsoft headquarters in Redmond ,WA, will be on site to demonstrate the new version of Flight Simulator and answer questions about existing versions of Microsoft Flight Simulator and related products. The Museum is located at 2772 Donald Douglas Loop North, Santa Monica. For more information call (310) 392-8822 or visit the Museum of Flying Web site at http://www.mof.org/mof/. For more information about Microsoft events in the Southern California area, visit http://www.microsoft.com/usa/socal/. Founded in 1975, Microsoft (NASDAQ "MSFT") is the worldwide leader in software for personal computers. The company offers a wide range of products and services for business and personal use, each designed with the mission of making it easier and more enjoyable for people to take advantage of the full power of personal computing every day. # # # Media Contact: Jon Evans The Fontayne Group Tel: 310.452.1225 Email: FontayneHQ@aol.com From: bushbo@xtdl.com (Brian O. Bush) Subject: C++ corewar simulator? Date: 1996/11/07 Message-ID: #1/1 newsgroups: rec.games.corewar Does anyone have (or know of) a C++ corewar simulator (in part or whole). If not maybe a really simple C framework would do fine too? I am looking for something simple, for i am trying to reconstruct the VENUS system that was based off a corewar simulator (see below). Thanks for any hints. Brian VENUS is a modification of Core Wars in which the Computer programs can mutate, thus the pseudo assembler code creatures of VENUS evolve steadily. Furthermore each memory location is endowed with "resources" which, like sunshine are added at a steady state. A program must have sufficient resources in the regions of memory it occupies in order to execute. The input of resources determines whether the VENUS ecosystem is a "jungle" or a "desert." In jungle environments, Rasmussen et al. observe the spontaneous emergence of primitive "copy/split" organisms starting from (structured) random initial conditions. -- Follow the Black Valley Trail of Death, Into the Beautiful Sunshine. http://www2.xtdl.com/~bushbo From: scampi@dial.pipex.com (Mathew Hendry) Subject: Re: Re[2]: Speed of simulators Date: 1996/11/07 Message-ID: <19961107.449358.1B2D@an055.du.pipex.com>#1/1 references: newsgroups: rec.games.corewar Franz (franz@azstarnet.com) wrote: : doesn't switch/case use tests to determine which case label to jump to ... : ??? ... That depends on the compiler. Some will implement large, dense switch() statements (e.g. handling cases 0, 1, 2, 3, 4, 5 ...) as jump tables, rather than using successive comparisons. It's just a pity that the switch() statement in C doesn't support multiple parameters, i.e. switch( a, b ) { case 0, 0: foo(); break; case 0, 1: bar(); break; [...] Such constructs could be implemented, if appropriate, using multi-dimensional jump tables, as an extension to the single parameter case. As it is, there's no easy, efficient way to handle such situations without code duplication (repeated nested switch()es), or the explicit creation of jump tables... -- Mat. From: Anton Marsden Subject: Re: Speed of simulators Date: 1996/11/07 Message-ID: #1/1 references: <3275E243.5F15@cam.ac.uk> <32796639.66774D49@azstarnet.com> <55fs2p$a58@news.asu.edu> newsgroups: rec.games.corewar On 2 Nov 1996 sieben@imap1.asu.edu wrote: > : or one more idea .. instead of putting actuall instructions into the > : core try putting pointers to functions in there .. and you would have a > : function for each instruction, modifier, address mode combination .... > : that would be pretty large but would be FAST .. you would just call the > : core location as a function ... NO testing ... > It would be huge, and you'd need a program to write the program. You could use macros to generate the code. But on the subject of needing a program to write the program... The maximum number of unique Opcode-Modifier-AddrModeA-AddrModeB needed in a "standard" simulation will be 200 (2 * max. instruction length). So to generate optimal code for this, the simulator would only need to know 200 instructions when running the simulation. This means code could be generated before the 200 battles to produce high performance. Obviously it's complicated but if done will greatly reduce the amount of conditionals needed per instruction execution. On a 486+ it may not be worth doing, but running PMARS on a 286 (16Mhz) is unbearably slow. From: bpw@mnsinc.com (Brandon Warhurst) Subject: Re: Opcode counts Date: 1996/11/08 Message-ID: <55vtd7$ma3@news1.mnsinc.com>#1/1 references: <327ECE74.16BFD7C2@azstarnet.com> newsgroups: rec.games.corewar What would statistics look like I wonder if you counted up the number of accesses to each memory location as well? I don't know how important that really is, but it might tell you where your warrior is most vulnerable (not that that could be changed.)... Then again maybe those are totally useless results. Just something I thought would be an interesting thing to examine as well as where most of the time is being spent. (Although that might be a quick way to determine that because if you access a particular location from the warrior and then see where it is accessed you can get some idea of how many times that section was run). Brandon From: wolak Subject: Java simulator Date: 1996/11/08 Message-ID: <3283F233.7A0F@wolak.com>#1/1 newsgroups: rec.games.corewar Does anyone know of a java implementation of the pMARS simulator? thanks in advance. Matt From: graball@infinity.ccsi.com (Dave Nalle) Subject: New Fonts for Gamers and Designers Date: 1996/11/08 Message-ID: #1/1 newsgroups: rec.games.computer.ultima-dragons,rec.games.computer.xpilot,rec.games.corewar Gamers seem to love graphic aids for their games, so we're making available special packages of some of our most useful fonts for gamers. These new font disks are available for MacOS and Windows and will be carried by major game distributors and will be in game stores around Christmas time. These fonts are original designs made by gamers for other gamers to enjoy. You don't have to wait until then. You can visit ou website, check out complete samples of our first three disks and download our latest shareware fonts, including the great new Cityscape font which has been a big hit with gamemasters and designers and is this week's font of the week on America Online (for what that's worth). Come check it out at: http://members.aol.com/ragnarok/gamefonts Dave From: Bjoern Guenzel Subject: lp-hill, when to open? Date: 1996/11/08 Message-ID: <32835A7B.167E@ucl.ac.uk>#1/1 newsgroups: rec.games.corewar When will the lp-hill open again (I hope it will)? Or did I just miss the message? Bjoern From: sd@ecst.csuchico.edu (Miles Tagoe) Subject: New Baby Hill Date: 1996/11/08 Message-ID: <55u7m3$i3p@charnel.ecst.csuchico.edu>#1/1 references: <32796419.7BB17A25@azstarnet.com> <55lsap$kug@charnel.ecst.csuchico.edu> newsgroups: rec.games.corewar No protests were recieved, so the new Experimental Hill at Pizza is as follows: Experimental "Baby" Hill Specs: (Accessed with ";redcode-x", available at Pizza) hillsize: 25 warriors rounds fought: 200 coresize: 800 max. processes: 800 duration: after 8000 cycles, a tie is declared. max. entry length: 20 minimum distance: 20 instruction set: ICWS '94 Draft Have at it. If this doesn't see much action, I may consider changing it to a limited process hill in a few months. Thos -- ~~~~~~~~~~~~~~~~~~~~~~~~~~~~\/~~\ /~~~\/\ / \ \ / /~\ /~~~~~YY~~~\\ /~~ Thomas "Thos" Davies V \/\ /\ V / V |\/\/| V\ / sd@ecst.csuchico.edu V \ / | / | V Internet Pizza Server \/ | /\ | Member C.W.M. Corewar King of the Hill information |/oo\| CAVE ON Since 1987 http://www.ecst.csuchico.edu/~pizza/koth/ |/\| From: Anton Marsden Subject: Re: Speed of simulators Date: 1996/11/08 Message-ID: #1/1 references: <3275E243.5F15@cam.ac.uk> <32796639.66774D49@azstarnet.com> <55fs2p$a58@news.asu.edu> newsgroups: rec.games.corewar On Wed, 6 Nov 1996, Franz wrote: > hmmm ... self modifying code ... that would be worthy for a MARS emulator > :) Indeed :-) I may just use macros to generate the code first, and then when/if it's working I'll do the code generation routines... although reassembling the simulator completely for each pair of warriors shouldn't take too long anyway. > on eother thing could be done ... some profiling algorythm could run on > the first 3 to 10 rounds (simple not to take up much cycles) and then > would optimize the MARS for just this kind of battle ... soemthing like a > p-brain :) But then how could the profiling information be used to substantially improve performance? From: stst@vuse.vanderbilt.edu (Stefan Strack) Subject: Core War Frequently Asked Questions (rec.games.corewar FAQ) Date: 1996/11/09 Message-ID: newsgroups: rec.games.corewar,rec.answers,news.answers Reposting article removed by rogue canceller. See news.admin.net-abuse.announce for further information. Archive-name: games/corewar-faq Last-Modified: 95/10/12 Version: 3.6 These are the Frequently Asked Questions (and answers) from the Usenet newsgroup rec.games.corewar. A plain text version of this document is posted every two weeks. The hypertext version is available as _________________________________________________________________ Table of Contents 1. What is Core War 2. Is it Core War or Core Wars? 3. Where can I find more information about Core War? 4. Core War has changed since Dewdney's articles. Where do I get a copy of the current instruction set? 5. What is ICWS'94? Which simulators support ICWS'94? 6. What is the ICWS? 7. What is TCWN? 8. How do I join? 9. What is the EBS? 10. Where are the Core War archives? 11. Where can I find a Core War system for ...? 12. I do not have FTP. How do I get all this great stuff? 13. I do not have access to Usenet. How do I post and receive news? 14. Are there any Core War related WWW sites? 15. When is the next tournament? 16. What is KotH? How do I enter? 17. Is it DAT 0, 0 or DAT #0, #0? How do I compare to core? 18. How does SLT (Skip if Less Than) work? 19. What is the difference between in-register and in-memory evaluation? 20. What does (expression or term of your choice) mean? 21. Other questions? _________________________________________________________________ What is Core War? Core War is a game played by two or more programs (and vicariously by their authors) written in an assembly language called Redcode and run in a virtual computer called MARS (for Memory Array Redcode Simulator). The object of the game is to cause all processes of the opposing program to terminate, leaving your program in sole posession of the machine. There are Core War systems available for most computer platforms. Redcode has been standardized by the ICWS, and is therefore transportable between all standard Core War systems. [ToC] _________________________________________________________________ Is it "Core War" or "Core Wars"? Both terms are used. Early references were to Core War. Later references seem to use Core Wars. I prefer "Core War" to refer to the game in general, "core wars" to refer to more than one specific battle. [ToC] _________________________________________________________________ Where can I find more information about Core War? Core War was first described in the Core War Guidelines of March, 1984 by D. G. Jones and A. K. Dewdney of the Department of Computer Science at The University of Western Ontario (Canada). Dewdney wrote several "Computer Recreations" articles in Scientific American which discussed Core War, starting with the May 1984 article. Those articles are contained in two anthologies: Author: Dewdney, A. K. Title: The Armchair Universe: An Exploration of Computer Worlds Published: New York: W. H. Freeman (c) 1988 ISBN: 0-7167-1939-8 Library of Congress Call Number: QA76.6 .D517 1988 Author: Dewdney, A. K. Title: The Magic Machine: A Handbook of Computer Sorcery Published: New York: W. H. Freeman (c) 1990 ISBN: 0-7167-2125-2 (Hardcover), 0-7167-2144-9 (Paperback) Library of Congress Call Number: QA76.6 .D5173 1990 A.K. Dewdney's articles are still the most readable introduction to Core War, even though the Redcode dialect described in there is no longer current. [ToC] _________________________________________________________________ Core War has changed since Dewdney's articles. Where do I get a copy of the current instruction set? A draft of the official standard (ICWS'88) is available as . This document is formatted awkwardly and contains ambiguous statements. For a more approachable intro to Redcode, take a look at Mark Durham's tutorial, and . Steven Morrell (morrell@math.utah.edu) is preparing a more practically oriented Redcode tutorial that discusses different warrior classes with lots of example code. Mail him for a preliminary version. Michael Constant (mconst@csua.berkeley.edu) is reportedly working on a beginner's introduction. [ToC] _________________________________________________________________ What is ICWS'94? Which simulators support ICWS'94? There is an ongoing discussion about future enhancements to the Redcode language. A proposed new standard, dubbed ICWS'94, is currently being evaluated. A major change is the addition of "instruction modifiers" that allow instructions to modify A-field, B-field or both. Also new is a post-increment indirect addressing mode and unrestricted opcode and addressing mode combination ("no illegal instructions"). ICWS'94 is backwards compatible; i.e. ICWS'88 warriors will run correctly on an ICWS'94 system. Take a look at the ICWS'94 draft for more information. You can try out the new standard by submitting warriors to the '94 hills of the KotH servers. Two corewar systems currently support ICWS'94, pMARS (many platforms) and Redcoder (Mac), both available at ftp.csua.berkeley.edu. [ToC] _________________________________________________________________ What is the ICWS? About one year after Core War first appeared in Sci-Am, the "International Core War Society" (ICWS) was established. Since that time, the ICWS has been responsible for the creation and maintenance of Core War standards and the running of Core War tournaments. There have been six annual tournaments and two standards (ICWS'86 and ICWS'88). [ToC] _________________________________________________________________ What is TCWN? Since March of 1987, "The Core War Newsletter" (TCWN) has been the official newsletter of the ICWS. It is published quarterly and recent issues are also available as Encapsulated PostScript files. [ToC] _________________________________________________________________ How do I join? For more information about joining the ICWS (which includes a subscription to TCWN), or to contribute an article, review, cartoon, letter, joke, rumor, etc. to TCWN, please contact: Jon Newman 13824 NE 87th Street Redmond, WA 98052-1959 email: jonn@microsoft.com (Note: Microsoft has NO affiliation with Core War. Jon Newman just happens to work there, and we want to keep it that way!) Current annual dues are $15.00 in US currency. [ToC] _________________________________________________________________ What is the EBS? The Electronic Branch Section (EBS) of the ICWS is a group of Core War enthusiasts with access to electronic mail. There are no fees associated with being a member of the EBS, and members do reap some of the benefits of full ICWS membership without the expense. For instance, the ten best warriors submitted to the EBS tournament are entered into the annual ICWS tournament. All EBS business is conducted in the rec.games.corewar newsgroup. The current goal of the EBS is to be at the forefront of Core War by writing and implementing new standards and test suites. [ToC] _________________________________________________________________ Where are the Core War archives? Many documents such as the guidelines and the ICWS standards along with previous tournament Redcode entries and complete Core War systems are available via anonymous ftp from (128.32.149.19) in the /pub/corewar directories. Also, most of past rec.games.corewar postings (including Redcode source listings) are archived there. Jon Blow (blojo@csua.berkeley.edu) is the archive administrator. When uploading to /pub/corewar/incoming, ask Jon to move your upload to the appropriate directory and announce it on the net. Much of what is available on soda is also available on the German archive at iraun1.ira.uka.de (129.13.10.90) in the /pub/x11/corewars directory. The plain text version of this FAQ is automatically archived by news.answers. [ToC] _________________________________________________________________ Where can I find a Core War system for . . . ? Core War systems are available via anonymous ftp from ftp.csua.berkeley.edu in the /pub/corewar/systems directory. Currently, there are UNIX, IBM PC-compatible, Macintosh, and Amiga Core War systems available there. It is a good idea to check for program updates first. CAUTION! There are many, many Core War systems available which are NOT ICWS'88 (or even ICWS'86) compatible available at various archive sites other than ftp.csua.berkeley.edu. Generally, the older the program - the less likely it will be ICWS compatible. Reviews of Core War systems would be greatly appreciated in the newsgroup and in the newsletter. Below is a not necessarily complete or up-to-date list of what's available at ftp.csua.berkeley.edu: MADgic41.lzh - corewar for the Amiga, v4.1 MAD4041.lzh - older version? MAD50B.lha - corewar for the Amiga, beta version 5.0 Redcoder-21.hqx - corewar for the Mac, supports ICWS'88 and '94 (without extensions) core-11.hqx - corewar for the Mac core-wars-simulator.hqx - same as core-11.hqx? corewar_unix_x11.tar.Z - corewar for UNIX/X-windows, ICWS'86 but not ICWS'88 compatible koth31.tar.Z - corewar for UNIX/X-windows. This program ran the former KotH server at intel.com koth.shar.Z - older version kothpc.zip - port of older version of KotH to the PC deluxe20c.tar.Z - corewar for UNIX (broken X-windows or curses) and PC mars.tar.Z - corewar for UNIX, likely not ICWS'88 compatible icons.zip - corewar icons for MS-Windows macrored.zip - a redcode macro-preprocessor (PC) c88v49.zip - PC corewar, textmode display mars88.zip - PC corewar, graphics mode display corwp302.zip - PC corewar, textmode display, slowish mercury2.zip - PC corewar written in assembly, fast! mtourn11.zip - tournament scheduler for mercury (req. 4DOS) pmars08s.zip - portable system, ICWS'88 and '94, runs on UNIX, PC, Mac, Amiga. C source archive pmars08s.tar.Z - same as above pmars08.zip - PC executables with graphics display, req 386+ macpmars02.sit.hqx - pMARS executable for Mac (port of version 0.2) buggy, no display MacpMARS1.99a.cpt.hqx - port of v0.8 for the Mac, with display and debugger MacpMARS1.0s.cpt.hqx - C source (MPW, ThinkC) for Mac frontend ApMARS03.lha - pMARS executable for Amiga (port of version 0.3.1) wincor11.zip - MS-Windows system, shareware ($15) [ToC] _________________________________________________________________ I do not have FTP. How do I get all this great stuff? There is an ftp email server at ftpmail@decwrl.dec.com. Send email with a subject and body text of "help" (without the quotes) for more information on its usage. If you don't have access to the net at all, send me a 3.5 '' diskette in a self-addressed disk mailer with postage and I will mail it back with an image of the Core War archives in PC format. My address is at the end of this post. [ToC] _________________________________________________________________ I do not have access to Usenet. How do I post and receive news? To receive rec.games.corewar articles by email, join the COREWAR-L list run on the Stormking.Com list processor. To join, send the message SUB COREWAR-L FirstName LastName to listproc@stormking.com. You can send mail to corewar-l@stormking.com to post even if you are not a member of the list. Responsible for the listserver is Scott J. Ellentuch (tuc@stormking.com). Another server that allows you to post (but not receive) articles is available. Email your post to rec-games-corewar@cs.utexas.edu and it will be automatically posted for you. [ToC] _________________________________________________________________ Are there any Core War related WWW sites? You bet. Each of the two KotH sites sport a world-wide web server. Stormking's Core War page is ; pizza's is . A third WWW site is in Koeln, Germany: . Last but not least, Stephen Beitzel's "Unofficial Core War Page" is . All site are in varying stages of construction, so it would be futile to list here what they have to offer. [ToC] _________________________________________________________________ When is the next tournament? The ICWS holds an annual tournament. Traditionally, the deadline for entering is the 15th of December. The EBS usually holds a preliminary tournament around the 15th of November and sends the top finishers on to the ICWS tournament. Informal double-elimination and other types of tournaments are held frequently among readers of the newsgroup; watch there for announcements or contact me. [ToC] _________________________________________________________________ What is KotH? How do I enter? King Of The Hill (KotH) is an ongoing Core War tournament available to anyone with email. You enter by submitting via email a Redcode program (warrior) with special comment lines. You will receive a reply indicating how well your program did against the current top programs "on the hill". There are two styles of KotH tournaments, "classical" and "multi-warrior". The "classical" KotH is a one-on-one tournament, that is your warrior will play 100 battles against each of the 20 other programs currently on the Hill. You receive 3 points for each win and 1 point for each tie. (The existing programs do not replay each other, but their previous battles are recalled.) All scores are updated to reflect your battles and all 21 programs are ranked from high to low. If you are number 21 you are pushed off the Hill, if you are higher than 21 someone else is pushed off. In "multi-warrior" KotH, all warriors on the hill fight each other at the same time. Score calculation is a bit more complex than for the one-on-one tournament. Briefly, points are awarded based on how many warriors survive until the end of a round. A warrior that survives by itself gets more points than a warrior that survives together with other warriors. Points are calculated from the formula (W*W-1)/S, where W is the total number of warriors and S the number of surviving warriors. The pMARS documentation has more information on multi-warrior scoring. The idea for an email-based Core War server came from David Lee. The original KotH was developed and run by William Shubert at Intel starting in 1991, and discontinued after almost three years of service. Currently, KotHs based on Bill's UNIX scripts but offering a wider variety of hills are are running at two sites: "koth@stormking.com" is maintained by Scott J. Ellentuch (tuc@stormking.com) and "pizza@ecst.csuchico.edu" by Thomas H. Davies (sd@ecst.csuchico.edu). Up until May '95, the two sites provided overlapping services, i.e. the some of the hill types were offered by both "pizza" and "stormking". To conserve resources, the different hill types are now divided up among the sites. The way you submit warriors to both KotHs is pretty much the same. Therefore, the entry rules described below apply to both "pizza" and "stormking" unless otherwise noted. Entry rules for King of the Hill Corewar: 1) Write a corewar program. KotH is fully ICWS '88 compatible, EXCEPT that a comma (",") is required between two arguments. 2) Put a line starting with ";redcode" (or ";redcode-94, etc., see below) at the top of your program. This MUST be the first line. Anything before it will be lost. If you wish to receive mail on every new entrant, use ";redcode verbose". Otherwise you will only receive mail if a challenger makes it onto the hill. Use ";redcode quiet" if you wish to receive mail only when you get shoved off the hill. (Also, see 5 below). Additionally, adding ";name " and ";author " will be helpful in the performance reports. Do NOT have a line beginning with ";address" in your code; this will confuse the mail daemon and you won't get mail back. In addition, it would be nice if you have lines beginning with ";strategy" that describe the algorithm you use. There are currently seven separate hills you can select by starting your program with ;redcode-b, ;redcode-94, ;redcode-94x, ;redcode, ;redcode-icws, ;redcode-94m or ;redcode-94xm. The former three run at "pizza", the latter four at "stormking". More information on these hills is listed below. 3) Mail this file to koth@stormking.com or pizza@ecst.csuchico.edu. "Pizza" requires a subject of "koth" (use the -s flag on most mailers). 4) Within a few minutes you should get mail back telling you whether your program assembled correctly or not. If it did assemble correctly, sit back and wait; if not, make the change required and re-submit. 5) In an hour or so you should get more mail telling you how your program performed against the current top 20 (or 10) programs. If no news arrives during that time, don't worry; entries are put in a queue and run through the tournament one at a time. A backlog may develop. Be patient. If your program makes it onto the hill, you will get mail every time a new program makes it onto the hill. If this is too much mail, you can use ";redcode[-??] quiet" when you first mail in your program; then you will only get mail when you make it on the top 20 list or when you are knocked off. Using ";redcode[-??] verbose" will give you even more mail; here you get mail every time a new challenger arrives, even if they don't make it onto the top 20 list. Often programmers want to try out slight variations in their programs. If you already have a program named "foo V1.0" on the hill, adding the line ";kill foo" to a new program will automatically bump foo 1.0 off the hill. Just ";kill" will remove all of your programs when you submit the new one. The server kills programs by assigning an impossibly low score; it may therefore take another successful challenge before a killed program is actually removed from the hill. SAMPLE ENTRY: ;redcode ;name Dwarf ;author A. K. Dewdney ;strategy Throw DAT bombs around memory, hitting every 4th memory cell. ;strategy This program was presented in the first Corewar article. bomb DAT #0 dwarf ADD #4, bomb MOV bomb, @bomb JMP dwarf END dwarf ; Programs start at the first line unless ; an "END start" pseudo-op appears to indicate ; the first logical instruction. Also, nothing ; after the END instruction will be assembled. Here are the Specs for the various hills: ICWS'88 Standard Hill Specs: (Accessed with ";redcode", available at "stormking") hillsize: 20 warriors rounds: 100 coresize: 8000 max. processes: 8000 duration: after 80,000 cycles, a tie is declared. max. entry length: 100 minimum distance: 100 instruction set: ICWS '88 ICWS Annual Tournament Hill Specs: (Accessed with ";redcode-icws", available at "stormking") hillsize: 20 warriors rounds: 100 coresize: 8192 instructions max. processes: 8000 per program duration: After 100,000 cycles, a tie is declared. max. entry length: 300 minimum distance: 300 instruction set: ICWS '88 ICWS'94 Draft Hill Specs: (Accessed with ";redcode-94", available at "pizza") hillsize: 20 warriors rounds: 100 coresize: 8000 max. processes: 8000 duration: after 80,000 cycles, a tie is declared. max. entry length: 100 minimum distance: 100 instruction set: extended ICWS '94 Draft ICWS'94 Beginner's Hill Specs: (Accessed with ";redcode-b", available at "pizza") hillsize: 20 warriors rounds: 100 coresize: 8000 max. processes: 8000 duration: after 80,000 cycles, a tie is declared. max. entry length: 100 minimum distance: 100 instruction set: extended ICWS '94 Draft max. age: after 100 successful challenges, warriors are retired. ICWS'94 Experimental (Big) Hill Specs: (Accessed with ";redcode-94x", available at "pizza") hillsize: 20 warriors rounds: 100 coresize: 55440 max. processes: 10000 duration: after 500,000 cycles, a tie is declared. max. entry length: 200 minimum distance: 200 instruction set: extended ICWS '94 Draft ICWS'94 Draft Multi-Warrior Hill Specs: (Accessed with ";redcode-94m", available at "stormking") hillsize: 10 warriors rounds: 200 coresize: 8000 max. processes: 8000 duration: after 80,000 cycles, a tie is declared. max. entry length: 100 minimum distance: 100 instruction set: extended ICWS '94 Draft ICWS'94 Experimental (Big) Multi-Warrior Hill Specs: (Accessed with ";redcode-94xm", available at "stormking") hillsize: 20 warriors rounds: 100 coresize: 55440 max. processes: 10000 duration: after 500,000 cycles, a tie is declared. max. entry length: 200 minimum distance: 200 instruction set: extended ICWS '94 Draft If you just want to get a status report without actually challenging the hills, send email with ";status" as the message body (and don't forget "Subject: koth" for "pizza"). If you send mail to "pizza" with "Subject: koth help" you will receive instructions that may be more up to date than those contained in this document. At stormking, a message body with ";help" will return brief instructions. If you submit code containing a ";test" line, your warrior will be assembled but not actually pitted against the warriors on the hill. All hills run portable MARS (pMARS) version 0.8, a platform-independent corewar system available at ftp.csua.berkeley.edu. The '94 and '94x hills allow three experimental opcodes and addressing modes currently not covered in the ICWS'94 draft document: SEQ - Skip if EQual (synonym for CMP) SNE - Skip if Not Equal NOP - (No OPeration) * - indirect using A-field as pointer { - predecrement indirect using A-field } - postincrement indirect using A-field [ToC] _________________________________________________________________ Is it DAT 0, 0 or DAT #0, #0? How do I compare to core? Core is initialized to DAT 0, 0. This is an "illegal" instruction under ICWS'88 rules and strictly compliant assemblers (such as KotH or pmars -8) will not let you write a DAT 0, 0 instruction - only DAT #0, #0. So this begs the question, how to compare something to see if it is empty core. The answer is, most likely the instruction before your first instruction and the instruction after your last instruction are both DAT 0, 0. You can use them, or any other likely unmodified instructions, for comparison. Note that under ICWS'94, DAT 0, 0 is a legal instruction. [ToC] _________________________________________________________________ How does SLT (Skip if Less Than) work? SLT gives some people trouble because of the way modular arithmetic works. It is important to note that all negative numbers are converted to positive numbers before a battles begins. Example: (-1) becomes (M - 1) where M is the memory size. Once you realize that all numbers are treated as positive, it is clear what is meant by "less than". It should also be clear that no number is less than zero. [ToC] _________________________________________________________________ What is the difference between in-register and in-memory evaluation? These terms refer to the way instruction operands are evaluated. The '88 Redcode standard ICWS'88 is unclear about whether a simulator should "buffer" the result of A-operand evaluation before the B-operand is evaluated. Simulators that do buffer are said to use in-register evaluation, those that don't, in-memory evaluation. ICWS'94 clears this confusion by mandating in-register evaluation. Instructions that execute differently under these two forms of evaluation are MOV, ADD, SUB, MUL, DIV and MOD where the effective address of the A-operand is modified by evaluation of the B-operand. This is best illustrated by an example: L1 mov L2, mov.i #0,impsize Bootstrapping Strategy of copying the active portion of the program away from the initial location, leaving a decoy behind and making the relocated program as small as possible. B-Scanners Scanners which only recognize non-zero B-fields. example add #10,scan scan jmz example,10 C Measure of speed, equal to one location per cycle. Speed of light. CMP-Scanner A Scanner which uses a CMP instruction to look for opponents. example add step,scan scan cmp 10,30 jmp attack jmp example step dat #20,#20 Color Property of bombs making them visible to scanners, causing them to attack useless locations, thus slowing them down. example dat #100 Core-Clear code that sequentially overwrites core with DAT instructions; usually the last part of a program. Decoys Bogus or unused instructions meant to slow down Scanners. Typically, DATs with non-zero B-fields. DJN-Stream (also DJN-Train) Using a DJN command to rapidly decrement core locations. example ... ... djn example,<4000 Dwarf the prototypical small bomber. Gate-busting (also gate-crashing) technique to "interweave" a decrement-resistant imp-spiral (e.g. MOV 0, 2668) with a standard one to overrun imp-gates. Hybrids warriors that combine two or more of the basic strategies, either in sequence (e.g. stone->paper) or in parallel (e.g. imp/stone). Imp Program which only uses the MOV instruction. example MOV 0, 1 or example MOV 0, 2 MOV 0, 2 Imp-Gate A location in core which is bombed or decremented continuously so that an Imp can not pass. Also used to describe the program-code which maintains the gate. example ... ... SPL 0, mov.i #0,impsize Mirror see reflection. On-axis/off-axis On-axis scanners compare two locations M/2 apart, where M is the memory size. Off-axis scanners use some other separation. Optimal Constants (also optima-type constants) Bomb or scan increments chosen to cover core most effectively, i.e. leaving gaps of uniform size. Programs to calculate optimal constants and lists of optimal numbers are available at ftp.csua.berkeley.edu. Paper A Paper-like program. One which replicates itself many times. Part of the Scissors (beats) Paper (beats) Stone (beats Scissors) analogy. Pit-Trapper (also Slaver, Vampire). A program which enslaves another. Usually accomplished by bombing with JMPs to a SPL 0 pit with an optional core-clear routine. Quick Scan 2c scan of a set group of core locations with bombing if anything is found. Both of the following codes snips scan 16 locations and check for a find. If anything is found, it is attacked, otherwise 16 more locations are scanned. Example: start s1 for 8 ;'88 scan cmp start+100*s1, start+100*s1+4000 ;check two locations mov #start+100*s1-found, found ;they differ so set pointer rof jmn attack, found ;if we have something, get it s2 for 8 cmp start+100*(s2+6), start+100*(s2+6)+4000 mov #start+100*(s2+6)-found, found rof found jmz moveme, #0 ;skip attack if qscan found nothing attack cmp @found, start-1 ;does found points to empty space? add #4000, found ;no, so point to correct location mov start-1, @found ;move a bomb moveme jmp 0, 0 In ICWS'94, the quick scan code is more compact because of the SNE opcode: start ;'94 scan s1 for 4 sne start+400*s1, start+400*s1+100 ;check two locations seq start+400*s1+200, start+400*s1+300 ;check two locations mov #start+400*s1-found, found ;they differ so set pointer rof jmn which, found ;if we have something, get it s2 for 4 sne start+400*(s2+4), start+400*(s2+4)+100 seq start+400*(s2+4)+200, start+400*(s2+4)+300 mov #start+400*(s2+4)-found-100, found rof found jmz moveme, #0 ;skip attack if qscan found nothing add #100, -1 ;increment pointer till we get the which jmn -1, @found ;right place mov start-1, @found ;move a bomb moveme jmp 0, 0 Reflection Copy of a program or program part, positioned to make the active program invisible to a CMP-scanner. Replicator Generic for Paper. A program which makes many copies of itself, each copy also making copies. Self-Splitting Strategy of amplifying the number of processes executing a piece of code. example SPL 0 loop ADD #10, example MOV example, @example JMP loop Scanner A program which searches through core for an opponent rather than bombing blindly. Scissors A program designed to beat replicators, usually a (B-field scanning) vampire. Part of the Paper-Scissors-Stone analogy. Self-Repair Ability of a program to fix it's own code after attack. Silk A replicator which splits off a process to each new copy before actually copying the code. This allows it to replicate extremely quickly. This technique is only possible under the '94 draft, because it requires post-increment indirect addressing. Example: spl 1 mov.i -1, 0 spl 1 ;generate 6 consecutive processes silk spl 3620, #0 ;split to new copy mov.i >-1, }-1 ;copy self to new location mov.i bomb, >2000 ;linear bombing mov.i bomb, }2042 ;A-indirect bombing for anti-vamp jmp silk, {silk ;reset source pointer, make new copy bomb dat.f >2667, >5334 ;anti-imp bomb Slaver see Pit-Trapper. Stealth Property of programs, or program parts, which are invisible to scanners, accomplished by using zero B-fields and reflections. Stone A Stone-like program designed to be a small bomber. Part of the Paper-Scissors-Stone analogy. Stun A type of bomb which makes the opponent multiply useless processes, thus slowing it down. Example is referred to as a spl-jmp bomb. example spl 0 jmp -1 Two-Pass Core-Clear (also spl/dat Core-Clear) core clear that fills core first with SPL instructions, then with DATs. This is very effective in killing paper and certain imp-spiral variations. Vampire see Pit-Trapper. Vector Launch one of several means to start an imp-spiral running. As fast as Binary Launch, but requiring much less code. See also JMP/ADD Launch and Binary Launch. This example is one form of a Vector Launch: impsize equ 2667 example spl 1 ; extend by adding more spl 1's spl 1 djn.a @imp,#0 ; jmp @ a series of pointers dat #0,imp+(3*impsize) dat #0,imp+(2*impsize) dat #0,imp+(1*impsize) dat #0,imp+(0*impsize) imp mov.i #0,impsize [ToC] _________________________________________________________________ Other questions? Just ask in the rec.games.corewar newsgroup or contact me (address below). If you are shy, check out the Core War archives first to see if your question has been answered before. [ToC] _________________________________________________________________ Credits Additions, corrections, etc. to this document are solicited. Thanks in particular to the following people who have contributed major portions of this document: Paul Kline, Randy Graham. Mark Durham wrote the first version of the FAQ. The rec.games.corewar FAQ is Copyright 1995 and maintained by: Stefan Strack, PhD stst@vuse.vanderbilt.edu Dept. Molecular Physiol. and Biophysics stst@idnsun.gpct.vanderbilt.edu Rm. 762, MRB-1 stracks@vuctrvax.bitnet Vanderbilt Univ. Medical Center Voice: +615-322-4389 Nashville, TN 37232-6600, USA FAX: +615-322-7236 _________________________________________________________________ $Id: corewar-faq.html,v 3.6 1995/10/12 22:44:37 stst Exp stst $ From: thastuff Subject: wow! Should be the years best game! Date: 1996/11/09 Message-ID: <3284AACC.543DD355@ki.net>#1/1 newsgroups: rec.games.abstract,rec.games.backgammon,rec.games.board...,rec.games.bolo,rec.games.bridge,rec.games.chess,rec.games.chinese-chess,rec.games.corewar,rec.games.cyber,rec.games.deckmaster,rec.games.design,rec.games.diplomacy,rec.games.empire,rec.games.frp...,rec.games.go,rec.games.hack,rec.games.int-fiction,rec.games.mecha,rec.games.miniatures,rec.games.misc,rec.games.moria,rec.games.mud...,rec.games.netrek,rec.games.pbm,rec.games.pinball,rec.games.programmer,rec.games.rogue,rec.games.roguelike...,rec.games.trivia,rec.games.vectrex,rec.games.video...,rec.games.xtank... http://www.ki.net/~kris http://www.ki.net/~kris http://www.ki.net/~kris From: Matthew N Lewinski <98mlewinski@kamsc.k12.mi.us> Subject: Re: Java simulator Date: 1996/11/09 Message-ID: <3284A283.61AA@kamsc.k12.mi.us>#1/1 newsgroups: rec.games.corewar wolak wrote: > > Does anyone know of a java implementation of the pMARS simulator? > thanks in advance. It is my opinion that ant java impl. would be too slow to use, even with no graphical display. java is interpreted, a bytecode is compiled, then interpreted into code your computer can use, meaning slow performance. -- -------------------------------------------------------------------- Matt Lewinski 98mlewinski@kamsc.k12.mi.us Kalamazoo Area mlewinsk@newton.kamsc.k12.mi.us Math & Science Center http://www.kamsc.k12.mi.us/sp98/mlewinsk From: stst@vuse.vanderbilt.edu (Stefan Strack) Subject: Core War Frequently Asked Questions (rec.games.corewar FAQ) Date: 1996/11/09 Message-ID: newsgroups: rec.games.corewar,rec.answers,news.answers Archive-name: games/corewar-faq Last-Modified: 95/10/12 Version: 3.6 These are the Frequently Asked Questions (and answers) from the Usenet newsgroup rec.games.corewar. A plain text version of this document is posted every two weeks. The hypertext version is available as _________________________________________________________________ Table of Contents 1. What is Core War 2. Is it Core War or Core Wars? 3. Where can I find more information about Core War? 4. Core War has changed since Dewdney's articles. Where do I get a copy of the current instruction set? 5. What is ICWS'94? Which simulators support ICWS'94? 6. What is the ICWS? 7. What is TCWN? 8. How do I join? 9. What is the EBS? 10. Where are the Core War archives? 11. Where can I find a Core War system for ...? 12. I do not have FTP. How do I get all this great stuff? 13. I do not have access to Usenet. How do I post and receive news? 14. Are there any Core War related WWW sites? 15. When is the next tournament? 16. What is KotH? How do I enter? 17. Is it DAT 0, 0 or DAT #0, #0? How do I compare to core? 18. How does SLT (Skip if Less Than) work? 19. What is the difference between in-register and in-memory evaluation? 20. What does (expression or term of your choice) mean? 21. Other questions? _________________________________________________________________ What is Core War? Core War is a game played by two or more programs (and vicariously by their authors) written in an assembly language called Redcode and run in a virtual computer called MARS (for Memory Array Redcode Simulator). The object of the game is to cause all processes of the opposing program to terminate, leaving your program in sole posession of the machine. There are Core War systems available for most computer platforms. Redcode has been standardized by the ICWS, and is therefore transportable between all standard Core War systems. [ToC] _________________________________________________________________ Is it "Core War" or "Core Wars"? Both terms are used. Early references were to Core War. Later references seem to use Core Wars. I prefer "Core War" to refer to the game in general, "core wars" to refer to more than one specific battle. [ToC] _________________________________________________________________ Where can I find more information about Core War? Core War was first described in the Core War Guidelines of March, 1984 by D. G. Jones and A. K. Dewdney of the Department of Computer Science at The University of Western Ontario (Canada). Dewdney wrote several "Computer Recreations" articles in Scientific American which discussed Core War, starting with the May 1984 article. Those articles are contained in two anthologies: Author: Dewdney, A. K. Title: The Armchair Universe: An Exploration of Computer Worlds Published: New York: W. H. Freeman (c) 1988 ISBN: 0-7167-1939-8 Library of Congress Call Number: QA76.6 .D517 1988 Author: Dewdney, A. K. Title: The Magic Machine: A Handbook of Computer Sorcery Published: New York: W. H. Freeman (c) 1990 ISBN: 0-7167-2125-2 (Hardcover), 0-7167-2144-9 (Paperback) Library of Congress Call Number: QA76.6 .D5173 1990 A.K. Dewdney's articles are still the most readable introduction to Core War, even though the Redcode dialect described in there is no longer current. [ToC] _________________________________________________________________ Core War has changed since Dewdney's articles. Where do I get a copy of the current instruction set? A draft of the official standard (ICWS'88) is available as . This document is formatted awkwardly and contains ambiguous statements. For a more approachable intro to Redcode, take a look at Mark Durham's tutorial, and . Steven Morrell (morrell@math.utah.edu) is preparing a more practically oriented Redcode tutorial that discusses different warrior classes with lots of example code. Mail him for a preliminary version. Michael Constant (mconst@csua.berkeley.edu) is reportedly working on a beginner's introduction. [ToC] _________________________________________________________________ What is ICWS'94? Which simulators support ICWS'94? There is an ongoing discussion about future enhancements to the Redcode language. A proposed new standard, dubbed ICWS'94, is currently being evaluated. A major change is the addition of "instruction modifiers" that allow instructions to modify A-field, B-field or both. Also new is a post-increment indirect addressing mode and unrestricted opcode and addressing mode combination ("no illegal instructions"). ICWS'94 is backwards compatible; i.e. ICWS'88 warriors will run correctly on an ICWS'94 system. Take a look at the ICWS'94 draft for more information. You can try out the new standard by submitting warriors to the '94 hills of the KotH servers. Two corewar systems currently support ICWS'94, pMARS (many platforms) and Redcoder (Mac), both available at ftp.csua.berkeley.edu. [ToC] _________________________________________________________________ What is the ICWS? About one year after Core War first appeared in Sci-Am, the "International Core War Society" (ICWS) was established. Since that time, the ICWS has been responsible for the creation and maintenance of Core War standards and the running of Core War tournaments. There have been six annual tournaments and two standards (ICWS'86 and ICWS'88). [ToC] _________________________________________________________________ What is TCWN? Since March of 1987, "The Core War Newsletter" (TCWN) has been the official newsletter of the ICWS. It is published quarterly and recent issues are also available as Encapsulated PostScript files. [ToC] _________________________________________________________________ How do I join? For more information about joining the ICWS (which includes a subscription to TCWN), or to contribute an article, review, cartoon, letter, joke, rumor, etc. to TCWN, please contact: Jon Newman 13824 NE 87th Street Redmond, WA 98052-1959 email: jonn@microsoft.com (Note: Microsoft has NO affiliation with Core War. Jon Newman just happens to work there, and we want to keep it that way!) Current annual dues are $15.00 in US currency. [ToC] _________________________________________________________________ What is the EBS? The Electronic Branch Section (EBS) of the ICWS is a group of Core War enthusiasts with access to electronic mail. There are no fees associated with being a member of the EBS, and members do reap some of the benefits of full ICWS membership without the expense. For instance, the ten best warriors submitted to the EBS tournament are entered into the annual ICWS tournament. All EBS business is conducted in the rec.games.corewar newsgroup. The current goal of the EBS is to be at the forefront of Core War by writing and implementing new standards and test suites. [ToC] _________________________________________________________________ Where are the Core War archives? Many documents such as the guidelines and the ICWS standards along with previous tournament Redcode entries and complete Core War systems are available via anonymous ftp from (128.32.149.19) in the /pub/corewar directories. Also, most of past rec.games.corewar postings (including Redcode source listings) are archived there. Jon Blow (blojo@csua.berkeley.edu) is the archive administrator. When uploading to /pub/corewar/incoming, ask Jon to move your upload to the appropriate directory and announce it on the net. Much of what is available on soda is also available on the German archive at iraun1.ira.uka.de (129.13.10.90) in the /pub/x11/corewars directory. The plain text version of this FAQ is automatically archived by news.answers. [ToC] _________________________________________________________________ Where can I find a Core War system for . . . ? Core War systems are available via anonymous ftp from ftp.csua.berkeley.edu in the /pub/corewar/systems directory. Currently, there are UNIX, IBM PC-compatible, Macintosh, and Amiga Core War systems available there. It is a good idea to check for program updates first. CAUTION! There are many, many Core War systems available which are NOT ICWS'88 (or even ICWS'86) compatible available at various archive sites other than ftp.csua.berkeley.edu. Generally, the older the program - the less likely it will be ICWS compatible. Reviews of Core War systems would be greatly appreciated in the newsgroup and in the newsletter. Below is a not necessarily complete or up-to-date list of what's available at ftp.csua.berkeley.edu: MADgic41.lzh - corewar for the Amiga, v4.1 MAD4041.lzh - older version? MAD50B.lha - corewar for the Amiga, beta version 5.0 Redcoder-21.hqx - corewar for the Mac, supports ICWS'88 and '94 (without extensions) core-11.hqx - corewar for the Mac core-wars-simulator.hqx - same as core-11.hqx? corewar_unix_x11.tar.Z - corewar for UNIX/X-windows, ICWS'86 but not ICWS'88 compatible koth31.tar.Z - corewar for UNIX/X-windows. This program ran the former KotH server at intel.com koth.shar.Z - older version kothpc.zip - port of older version of KotH to the PC deluxe20c.tar.Z - corewar for UNIX (broken X-windows or curses) and PC mars.tar.Z - corewar for UNIX, likely not ICWS'88 compatible icons.zip - corewar icons for MS-Windows macrored.zip - a redcode macro-preprocessor (PC) c88v49.zip - PC corewar, textmode display mars88.zip - PC corewar, graphics mode display corwp302.zip - PC corewar, textmode display, slowish mercury2.zip - PC corewar written in assembly, fast! mtourn11.zip - tournament scheduler for mercury (req. 4DOS) pmars08s.zip - portable system, ICWS'88 and '94, runs on UNIX, PC, Mac, Amiga. C source archive pmars08s.tar.Z - same as above pmars08.zip - PC executables with graphics display, req 386+ macpmars02.sit.hqx - pMARS executable for Mac (port of version 0.2) buggy, no display MacpMARS1.99a.cpt.hqx - port of v0.8 for the Mac, with display and debugger MacpMARS1.0s.cpt.hqx - C source (MPW, ThinkC) for Mac frontend ApMARS03.lha - pMARS executable for Amiga (port of version 0.3.1) wincor11.zip - MS-Windows system, shareware ($15) [ToC] _________________________________________________________________ I do not have FTP. How do I get all this great stuff? There is an ftp email server at ftpmail@decwrl.dec.com. Send email with a subject and body text of "help" (without the quotes) for more information on its usage. If you don't have access to the net at all, send me a 3.5 '' diskette in a self-addressed disk mailer with postage and I will mail it back with an image of the Core War archives in PC format. My address is at the end of this post. [ToC] _________________________________________________________________ I do not have access to Usenet. How do I post and receive news? To receive rec.games.corewar articles by email, join the COREWAR-L list run on the Stormking.Com list processor. To join, send the message SUB COREWAR-L FirstName LastName to listproc@stormking.com. You can send mail to corewar-l@stormking.com to post even if you are not a member of the list. Responsible for the listserver is Scott J. Ellentuch (tuc@stormking.com). Another server that allows you to post (but not receive) articles is available. Email your post to rec-games-corewar@cs.utexas.edu and it will be automatically posted for you. [ToC] _________________________________________________________________ Are there any Core War related WWW sites? You bet. Each of the two KotH sites sport a world-wide web server. Stormking's Core War page is ; pizza's is . A third WWW site is in Koeln, Germany: . Last but not least, Stephen Beitzel's "Unofficial Core War Page" is . All site are in varying stages of construction, so it would be futile to list here what they have to offer. [ToC] _________________________________________________________________ When is the next tournament? The ICWS holds an annual tournament. Traditionally, the deadline for entering is the 15th of December. The EBS usually holds a preliminary tournament around the 15th of November and sends the top finishers on to the ICWS tournament. Informal double-elimination and other types of tournaments are held frequently among readers of the newsgroup; watch there for announcements or contact me. [ToC] _________________________________________________________________ What is KotH? How do I enter? King Of The Hill (KotH) is an ongoing Core War tournament available to anyone with email. You enter by submitting via email a Redcode program (warrior) with special comment lines. You will receive a reply indicating how well your program did against the current top programs "on the hill". There are two styles of KotH tournaments, "classical" and "multi-warrior". The "classical" KotH is a one-on-one tournament, that is your warrior will play 100 battles against each of the 20 other programs currently on the Hill. You receive 3 points for each win and 1 point for each tie. (The existing programs do not replay each other, but their previous battles are recalled.) All scores are updated to reflect your battles and all 21 programs are ranked from high to low. If you are number 21 you are pushed off the Hill, if you are higher than 21 someone else is pushed off. In "multi-warrior" KotH, all warriors on the hill fight each other at the same time. Score calculation is a bit more complex than for the one-on-one tournament. Briefly, points are awarded based on how many warriors survive until the end of a round. A warrior that survives by itself gets more points than a warrior that survives together with other warriors. Points are calculated from the formula (W*W-1)/S, where W is the total number of warriors and S the number of surviving warriors. The pMARS documentation has more information on multi-warrior scoring. The idea for an email-based Core War server came from David Lee. The original KotH was developed and run by William Shubert at Intel starting in 1991, and discontinued after almost three years of service. Currently, KotHs based on Bill's UNIX scripts but offering a wider variety of hills are are running at two sites: "koth@stormking.com" is maintained by Scott J. Ellentuch (tuc@stormking.com) and "pizza@ecst.csuchico.edu" by Thomas H. Davies (sd@ecst.csuchico.edu). Up until May '95, the two sites provided overlapping services, i.e. the some of the hill types were offered by both "pizza" and "stormking". To conserve resources, the different hill types are now divided up among the sites. The way you submit warriors to both KotHs is pretty much the same. Therefore, the entry rules described below apply to both "pizza" and "stormking" unless otherwise noted. Entry rules for King of the Hill Corewar: 1) Write a corewar program. KotH is fully ICWS '88 compatible, EXCEPT that a comma (",") is required between two arguments. 2) Put a line starting with ";redcode" (or ";redcode-94, etc., see below) at the top of your program. This MUST be the first line. Anything before it will be lost. If you wish to receive mail on every new entrant, use ";redcode verbose". Otherwise you will only receive mail if a challenger makes it onto the hill. Use ";redcode quiet" if you wish to receive mail only when you get shoved off the hill. (Also, see 5 below). Additionally, adding ";name " and ";author " will be helpful in the performance reports. Do NOT have a line beginning with ";address" in your code; this will confuse the mail daemon and you won't get mail back. In addition, it would be nice if you have lines beginning with ";strategy" that describe the algorithm you use. There are currently seven separate hills you can select by starting your program with ;redcode-b, ;redcode-94, ;redcode-94x, ;redcode, ;redcode-icws, ;redcode-94m or ;redcode-94xm. The former three run at "pizza", the latter four at "stormking". More information on these hills is listed below. 3) Mail this file to koth@stormking.com or pizza@ecst.csuchico.edu. "Pizza" requires a subject of "koth" (use the -s flag on most mailers). 4) Within a few minutes you should get mail back telling you whether your program assembled correctly or not. If it did assemble correctly, sit back and wait; if not, make the change required and re-submit. 5) In an hour or so you should get more mail telling you how your program performed against the current top 20 (or 10) programs. If no news arrives during that time, don't worry; entries are put in a queue and run through the tournament one at a time. A backlog may develop. Be patient. If your program makes it onto the hill, you will get mail every time a new program makes it onto the hill. If this is too much mail, you can use ";redcode[-??] quiet" when you first mail in your program; then you will only get mail when you make it on the top 20 list or when you are knocked off. Using ";redcode[-??] verbose" will give you even more mail; here you get mail every time a new challenger arrives, even if they don't make it onto the top 20 list. Often programmers want to try out slight variations in their programs. If you already have a program named "foo V1.0" on the hill, adding the line ";kill foo" to a new program will automatically bump foo 1.0 off the hill. Just ";kill" will remove all of your programs when you submit the new one. The server kills programs by assigning an impossibly low score; it may therefore take another successful challenge before a killed program is actually removed from the hill. SAMPLE ENTRY: ;redcode ;name Dwarf ;author A. K. Dewdney ;strategy Throw DAT bombs around memory, hitting every 4th memory cell. ;strategy This program was presented in the first Corewar article. bomb DAT #0 dwarf ADD #4, bomb MOV bomb, @bomb JMP dwarf END dwarf ; Programs start at the first line unless ; an "END start" pseudo-op appears to indicate ; the first logical instruction. Also, nothing ; after the END instruction will be assembled. Here are the Specs for the various hills: ICWS'88 Standard Hill Specs: (Accessed with ";redcode", available at "stormking") hillsize: 20 warriors rounds: 100 coresize: 8000 max. processes: 8000 duration: after 80,000 cycles, a tie is declared. max. entry length: 100 minimum distance: 100 instruction set: ICWS '88 ICWS Annual Tournament Hill Specs: (Accessed with ";redcode-icws", available at "stormking") hillsize: 20 warriors rounds: 100 coresize: 8192 instructions max. processes: 8000 per program duration: After 100,000 cycles, a tie is declared. max. entry length: 300 minimum distance: 300 instruction set: ICWS '88 ICWS'94 Draft Hill Specs: (Accessed with ";redcode-94", available at "pizza") hillsize: 20 warriors rounds: 100 coresize: 8000 max. processes: 8000 duration: after 80,000 cycles, a tie is declared. max. entry length: 100 minimum distance: 100 instruction set: extended ICWS '94 Draft ICWS'94 Beginner's Hill Specs: (Accessed with ";redcode-b", available at "pizza") hillsize: 20 warriors rounds: 100 coresize: 8000 max. processes: 8000 duration: after 80,000 cycles, a tie is declared. max. entry length: 100 minimum distance: 100 instruction set: extended ICWS '94 Draft max. age: after 100 successful challenges, warriors are retired. ICWS'94 Experimental (Big) Hill Specs: (Accessed with ";redcode-94x", available at "pizza") hillsize: 20 warriors rounds: 100 coresize: 55440 max. processes: 10000 duration: after 500,000 cycles, a tie is declared. max. entry length: 200 minimum distance: 200 instruction set: extended ICWS '94 Draft ICWS'94 Draft Multi-Warrior Hill Specs: (Accessed with ";redcode-94m", available at "stormking") hillsize: 10 warriors rounds: 200 coresize: 8000 max. processes: 8000 duration: after 80,000 cycles, a tie is declared. max. entry length: 100 minimum distance: 100 instruction set: extended ICWS '94 Draft ICWS'94 Experimental (Big) Multi-Warrior Hill Specs: (Accessed with ";redcode-94xm", available at "stormking") hillsize: 20 warriors rounds: 100 coresize: 55440 max. processes: 10000 duration: after 500,000 cycles, a tie is declared. max. entry length: 200 minimum distance: 200 instruction set: extended ICWS '94 Draft If you just want to get a status report without actually challenging the hills, send email with ";status" as the message body (and don't forget "Subject: koth" for "pizza"). If you send mail to "pizza" with "Subject: koth help" you will receive instructions that may be more up to date than those contained in this document. At stormking, a message body with ";help" will return brief instructions. If you submit code containing a ";test" line, your warrior will be assembled but not actually pitted against the warriors on the hill. All hills run portable MARS (pMARS) version 0.8, a platform-independent corewar system available at ftp.csua.berkeley.edu. The '94 and '94x hills allow three experimental opcodes and addressing modes currently not covered in the ICWS'94 draft document: SEQ - Skip if EQual (synonym for CMP) SNE - Skip if Not Equal NOP - (No OPeration) * - indirect using A-field as pointer { - predecrement indirect using A-field } - postincrement indirect using A-field [ToC] _________________________________________________________________ Is it DAT 0, 0 or DAT #0, #0? How do I compare to core? Core is initialized to DAT 0, 0. This is an "illegal" instruction under ICWS'88 rules and strictly compliant assemblers (such as KotH or pmars -8) will not let you write a DAT 0, 0 instruction - only DAT #0, #0. So this begs the question, how to compare something to see if it is empty core. The answer is, most likely the instruction before your first instruction and the instruction after your last instruction are both DAT 0, 0. You can use them, or any other likely unmodified instructions, for comparison. Note that under ICWS'94, DAT 0, 0 is a legal instruction. [ToC] _________________________________________________________________ How does SLT (Skip if Less Than) work? SLT gives some people trouble because of the way modular arithmetic works. It is important to note that all negative numbers are converted to positive numbers before a battles begins. Example: (-1) becomes (M - 1) where M is the memory size. Once you realize that all numbers are treated as positive, it is clear what is meant by "less than". It should also be clear that no number is less than zero. [ToC] _________________________________________________________________ What is the difference between in-register and in-memory evaluation? These terms refer to the way instruction operands are evaluated. The '88 Redcode standard ICWS'88 is unclear about whether a simulator should "buffer" the result of A-operand evaluation before the B-operand is evaluated. Simulators that do buffer are said to use in-register evaluation, those that don't, in-memory evaluation. ICWS'94 clears this confusion by mandating in-register evaluation. Instructions that execute differently under these two forms of evaluation are MOV, ADD, SUB, MUL, DIV and MOD where the effective address of the A-operand is modified by evaluation of the B-operand. This is best illustrated by an example: L1 mov L2, mov.i #0,impsize Bootstrapping Strategy of copying the active portion of the program away from the initial location, leaving a decoy behind and making the relocated program as small as possible. B-Scanners Scanners which only recognize non-zero B-fields. example add #10,scan scan jmz example,10 C Measure of speed, equal to one location per cycle. Speed of light. CMP-Scanner A Scanner which uses a CMP instruction to look for opponents. example add step,scan scan cmp 10,30 jmp attack jmp example step dat #20,#20 Color Property of bombs making them visible to scanners, causing them to attack useless locations, thus slowing them down. example dat #100 Core-Clear code that sequentially overwrites core with DAT instructions; usually the last part of a program. Decoys Bogus or unused instructions meant to slow down Scanners. Typically, DATs with non-zero B-fields. DJN-Stream (also DJN-Train) Using a DJN command to rapidly decrement core locations. example ... ... djn example,<4000 Dwarf the prototypical small bomber. Gate-busting (also gate-crashing) technique to "interweave" a decrement-resistant imp-spiral (e.g. MOV 0, 2668) with a standard one to overrun imp-gates. Hybrids warriors that combine two or more of the basic strategies, either in sequence (e.g. stone->paper) or in parallel (e.g. imp/stone). Imp Program which only uses the MOV instruction. example MOV 0, 1 or example MOV 0, 2 MOV 0, 2 Imp-Gate A location in core which is bombed or decremented continuously so that an Imp can not pass. Also used to describe the program-code which maintains the gate. example ... ... SPL 0, mov.i #0,impsize Mirror see reflection. On-axis/off-axis On-axis scanners compare two locations M/2 apart, where M is the memory size. Off-axis scanners use some other separation. Optimal Constants (also optima-type constants) Bomb or scan increments chosen to cover core most effectively, i.e. leaving gaps of uniform size. Programs to calculate optimal constants and lists of optimal numbers are available at ftp.csua.berkeley.edu. Paper A Paper-like program. One which replicates itself many times. Part of the Scissors (beats) Paper (beats) Stone (beats Scissors) analogy. Pit-Trapper (also Slaver, Vampire). A program which enslaves another. Usually accomplished by bombing with JMPs to a SPL 0 pit with an optional core-clear routine. Quick Scan 2c scan of a set group of core locations with bombing if anything is found. Both of the following codes snips scan 16 locations and check for a find. If anything is found, it is attacked, otherwise 16 more locations are scanned. Example: start s1 for 8 ;'88 scan cmp start+100*s1, start+100*s1+4000 ;check two locations mov #start+100*s1-found, found ;they differ so set pointer rof jmn attack, found ;if we have something, get it s2 for 8 cmp start+100*(s2+6), start+100*(s2+6)+4000 mov #start+100*(s2+6)-found, found rof found jmz moveme, #0 ;skip attack if qscan found nothing attack cmp @found, start-1 ;does found points to empty space? add #4000, found ;no, so point to correct location mov start-1, @found ;move a bomb moveme jmp 0, 0 In ICWS'94, the quick scan code is more compact because of the SNE opcode: start ;'94 scan s1 for 4 sne start+400*s1, start+400*s1+100 ;check two locations seq start+400*s1+200, start+400*s1+300 ;check two locations mov #start+400*s1-found, found ;they differ so set pointer rof jmn which, found ;if we have something, get it s2 for 4 sne start+400*(s2+4), start+400*(s2+4)+100 seq start+400*(s2+4)+200, start+400*(s2+4)+300 mov #start+400*(s2+4)-found-100, found rof found jmz moveme, #0 ;skip attack if qscan found nothing add #100, -1 ;increment pointer till we get the which jmn -1, @found ;right place mov start-1, @found ;move a bomb moveme jmp 0, 0 Reflection Copy of a program or program part, positioned to make the active program invisible to a CMP-scanner. Replicator Generic for Paper. A program which makes many copies of itself, each copy also making copies. Self-Splitting Strategy of amplifying the number of processes executing a piece of code. example SPL 0 loop ADD #10, example MOV example, @example JMP loop Scanner A program which searches through core for an opponent rather than bombing blindly. Scissors A program designed to beat replicators, usually a (B-field scanning) vampire. Part of the Paper-Scissors-Stone analogy. Self-Repair Ability of a program to fix it's own code after attack. Silk A replicator which splits off a process to each new copy before actually copying the code. This allows it to replicate extremely quickly. This technique is only possible under the '94 draft, because it requires post-increment indirect addressing. Example: spl 1 mov.i -1, 0 spl 1 ;generate 6 consecutive processes silk spl 3620, #0 ;split to new copy mov.i >-1, }-1 ;copy self to new location mov.i bomb, >2000 ;linear bombing mov.i bomb, }2042 ;A-indirect bombing for anti-vamp jmp silk, {silk ;reset source pointer, make new copy bomb dat.f >2667, >5334 ;anti-imp bomb Slaver see Pit-Trapper. Stealth Property of programs, or program parts, which are invisible to scanners, accomplished by using zero B-fields and reflections. Stone A Stone-like program designed to be a small bomber. Part of the Paper-Scissors-Stone analogy. Stun A type of bomb which makes the opponent multiply useless processes, thus slowing it down. Example is referred to as a spl-jmp bomb. example spl 0 jmp -1 Two-Pass Core-Clear (also spl/dat Core-Clear) core clear that fills core first with SPL instructions, then with DATs. This is very effective in killing paper and certain imp-spiral variations. Vampire see Pit-Trapper. Vector Launch one of several means to start an imp-spiral running. As fast as Binary Launch, but requiring much less code. See also JMP/ADD Launch and Binary Launch. This example is one form of a Vector Launch: impsize equ 2667 example spl 1 ; extend by adding more spl 1's spl 1 djn.a @imp,#0 ; jmp @ a series of pointers dat #0,imp+(3*impsize) dat #0,imp+(2*impsize) dat #0,imp+(1*impsize) dat #0,imp+(0*impsize) imp mov.i #0,impsize [ToC] _________________________________________________________________ Other questions? Just ask in the rec.games.corewar newsgroup or contact me (address below). If you are shy, check out the Core War archives first to see if your question has been answered before. [ToC] _________________________________________________________________ Credits Additions, corrections, etc. to this document are solicited. Thanks in particular to the following people who have contributed major portions of this document: Paul Kline, Randy Graham. Mark Durham wrote the first version of the FAQ. The rec.games.corewar FAQ is Copyright 1995 and maintained by: Stefan Strack, PhD stst@vuse.vanderbilt.edu Dept. Molecular Physiol. and Biophysics stst@idnsun.gpct.vanderbilt.edu Rm. 762, MRB-1 stracks@vuctrvax.bitnet Vanderbilt Univ. Medical Center Voice: +615-322-4389 Nashville, TN 37232-6600, USA FAX: +615-322-7236 _________________________________________________________________ $Id: corewar-faq.html,v 3.6 1995/10/12 22:44:37 stst Exp stst $ From: Anton Marsden Subject: Re: Speed of simulators Date: 1996/11/09 Message-ID: #1/1 references: <01IBFXIM3LAQ002KOB@ACAD.DRAKE.EDU> newsgroups: rec.games.corewar On Mon, 4 Nov 1996, Franz wrote: > I have just tried the function jumptable thing and it does not seem to be > as great as i thought ... it was a quick hack and for the mov instructions > made the thing slower little bit .... for spl it was slightly faster .... > it was a bad hack though and i think if done properly should be faster ... > as for the usage that would be good ... spl is too far down in the switch > statement ... and that's a very used instruction ... I'll try putting it > up at the top and see if that helps ... it should! ... but the best thing > would be running mts on all the benchmark(advanced)/hall of fame warriors > and looking which are the most used and then sorting the switch statement > that way ... this should i think add a LOT ... Good compilers produce jump tables for switch statements. From: Fontolan Subject: Do you want get a easy money? Date: 1996/11/10 Message-ID: <32864877.51FE@melim.com.br> newsgroups: rec.games.corewar Subject: Do you want get a easy money? Hello! I have some very good news that will only take you tree minutes. Do you never think about "How can you get a lot of money in a small time?", or do you have to pay some bill or some borrow and you don't have enough money to do it? So, take a beer, sit on your favorite chair and read this text really intersting, a real treasure. (And was found by fortuity in the Internet). Well, when I was young, this kind of appeal like "be rich very fast" was unresistible for me! I pay $14.95 here, $29.95 there, others $49.95... I was on the limits of my credit cards... I was desperate for money! So, I give a chance for all systems, but all fail! May be then have work for some, but not for me. By fortuity, I was looking on my Trash Folder when I read a message. The message describe a way that says SEND ONE DOLLAR FOR JUST FIVE PEOPLE AND GET $50,000 CASH JUST FOUR WEEKS! Well, the more I think about that, more curious I was. Why? Because how that works and because it will only cost me five dollars and five postage stamps, AND THIS WAS ALL THAT I WILL PAY... FOREVER! All right, $50,000 in cash is a lot of money but was possible. I knew that I can have a minimun return of $1,000 or more. So I did! Exactly how I describe here, and I send one dolar for each one on the list above. I include a little note, with the dollar that says "Please add me to your list". So I remove the first name of the list and move all others one position, and put my name on the fifth position of the list. This is the way that the money comes. I take this text, revised and now with my name on the list and SEND FOR ALL MESSAGE AREAS THAT I KNEW. So I wait to see how much of money will come, read to receive between $1,000 and $1,500 in cash. But was a incredible surprise when the envelopes keep coming! I kewn what they have inside when I saw the address of people from all the world. The major was from the USA but I receive a lot from Brazil, Canada, Australia, Chile, Japan! Was really cool! Do you want know how much I receive? $1,000? $1,500? No! No! I receive a total of $23,343!!! I can't believe! Now I can buy a brand new BMW!!! And now, 8 months late I'm ready to start everything again!!! Maybe was really possible make $50,000 in cash, IT'S ALL FOR YOU!!! You have to follow the instructions e send this message to all places that you can imagine, and for all knowed people! How much you send will determine how much money will come in your mail box! It's very easy to do!!! Now let's revise the reasons that you have to do that: The cost is just five dollars, five postage stamps, five notes that you have to write and five envelopes. Now put then on the mail service and send this message for all message areas that you know. Then, sit and go to the mail box and get your rewards!!! All we have five dollars to put in a investiment with a REAL RETURN OF $15,000 to $25,000 between 3 or 5 weeks! 1-Take a peace of paper and write on it the folling: "Please add me to your list". Be sure to include your name and address on it. Just for funny, write the position that the person was: "You was the number 3". This is what we can call "Get money while you get fun". 2-Fold this paper in the dollar, hidden it, put then on the envelope and send to the five names on the list. Fold the paper in the dolar ensure that no- body will see the dollar and the enve- lope will go to its destiny. THIS PASS IS ESSENTIAL!!! 3-Now read carefully, that THIS IS THE PART THAT TELLS HOW THE MONEY WILL CO- ME TO YOU. Look the list of the five persons. Remove the first name of the list and move all one position above. Now put your name, address and country on the fifth position, the last of the list. 4-Now make the UPLOAD to all message areas that you know, message boxes, IRC and everywhere you can imagine on the Internet and BBSs, how much is possible. Pute the subject something like "Need some money URGENT? Here is the solution!" or "Need some money to pay your bills!", etc. How much more UPLOADS you make more money you will get! And obvious, the others people of the list. +--------------------------------------+ | W A R N I N G | +--------------------------------------+ | THE SECRET OF THIS SYSTEM IF THE | | HONESTLY OF THEY PARTICIPANT AND | | GET 4000% OF PROFIT | +--------------------------------------+ You will not believe in the benefits that you will have!!! **************************************** + LIST NAME + LIST NAME + LIST NAME + **************************************** 1. Dolores Pandolfi Rua Marisa de Souza, 142 Vila Gustavo 02210-000 - Sao Paulo - SP BRASIL 2. Marcello Fontolan Rua Umbelino de Brito, 82 Centro 88303-050 - Itajai - SC BRASIL 3. Conceicao Strada Rua Indaial, 1527 Sao Joao 88304-300 - Itajai - SC BRASIL 4. Alice Correa Rua Curt Hering, 245 Barra do Rio 88305-300 - Itajai - SC BRASIL 5. Thiago Bittencourt Av. Nereu Ramos, 2795 / 402A Centro 88220-000 - Itapema - SC BRASIL From: jklewis@stimpy.us.itd.umich.edu (John K. Lewis) Subject: Unofficial FAQ Date: 1996/11/10 Message-ID: <565odn$8vc@lastactionhero.rs.itd.umich.edu> newsgroups: rec.games.corewar This is not the official FAW, but is slightly more current. Archive-name: games/corewar-faq Last-Modified: 96/8/8 Version: 3.6 These are the Frequently Asked Questions (and answers) from the Usenet newsgroup rec.games.corewar. A plain text version of this document is posted every two weeks. The hypertext version is available as _________________________________________________________________ Table of Contents 1. What is Core War 2. Is it Core War or Core Wars? 3. Where can I find more information about Core War? 4. Core War has changed since Dewdney's articles. Where do I get a copy of the current instruction set? 5. What is ICWS'94? Which simulators support ICWS'94? 6. What is the ICWS? 7. What is Core Warrior? 8. Where are the Core War archives? 9. Where can I find a Core War system for ...? 10. I do not have FTP. How do I get all this great stuff? 11. I do not have access to Usenet. How do I post and receive news? 12. Are there any Core War related WWW sites? 13. What is KotH? How do I enter? 14. Is it DAT 0, 0 or DAT #0, #0? How do I compare to core? 15. How does SLT (Skip if Less Than) work? 16. What is the difference between in-register and in-memory evaluation? 17. What does (expression or term of your choice) mean? 18. Other questions? _________________________________________________________________ What is Core War? Core War is a game played by two or more programs (and vicariously by their authors) written in an assembly language called Redcode and run in a virtual computer called MARS (for Memory Array Redcode Simulator). The object of the game is to cause all processes of the opposing program to terminate, leaving your program in sole posession of the machine. There are Core War systems available for most computer platforms. Redcode has been standardized by the ICWS, and is therefore transportable between all standard Core War systems. [ToC] _________________________________________________________________ Is it "Core War" or "Core Wars"? Both terms are used. Early references were to Core War. Later references seem to use Core Wars. I prefer "Core War" to refer to the game in general, "core wars" to refer to more than one specific battle. [ToC] _________________________________________________________________ Where can I find more information about Core War? Core War was first described in the Core War Guidelines of March, 1984 by D. G. Jones and A. K. Dewdney of the Department of Computer Science at The University of Western Ontario (Canada). Dewdney wrote several "Computer Recreations" articles in Scientific American which discussed Core War, starting with the May 1984 article. Those articles are contained in two anthologies: Author: Dewdney, A. K. Title: The Armchair Universe: An Exploration of Computer Worlds Published: New York: W. H. Freeman (c) 1988 ISBN: 0-7167-1939-8 Library of Congress Call Number: QA76.6 .D517 1988 Author: Dewdney, A. K. Title: The Magic Machine: A Handbook of Computer Sorcery Published: New York: W. H. Freeman (c) 1990 ISBN: 0-7167-2125-2 (Hardcover), 0-7167-2144-9 (Paperback) Library of Congress Call Number: QA76.6 .D5173 1990 A.K. Dewdney's articles are still the most readable introduction to Core War, even though the Redcode dialect described in there is no longer current. [ToC] _________________________________________________________________ Core War has changed since Dewdney's articles. Where do I get a copy of the current instruction set? A lot has changed. The current competitions in Core War use an extended version of the 94 standard. The current version of PMARS contains text files explaining the changes. [ToC] _________________________________________________________________ What is ICWS'94? Which simulators support ICWS'94? There is an ongoing discussion about future enhancements to the Redcode language. A proposed new standard, dubbed ICWS'94, is currently being evaluated. A major change is the addition of "instruction modifiers" that allow instructions to modify A-field, B-field or both. Also new is a post-increment indirect addressing mode and unrestricted opcode and addressing mode combination ("no illegal instructions"). ICWS'94 is backwards compatible; i.e. ICWS'88 warriors will run correctly on an ICWS'94 system. Take a look at the ICWS'94 draft for more information. [ToC] _________________________________________________________________ What is the ICWS? About one year after Core War first appeared in Sci-Am, the "International Core War Society" (ICWS) was established. Since that time, the ICWS has been responsible for the creation and maintenance of Core War standards and the running of Core War tournaments. There have been six annual tournaments and two standards (ICWS'86 and ICWS'88). [ToC] _________________________________________________________________ What is Core Warrior? Following in the tradition of the Core War News Letter, Push Off, and The 94 Warrior, Core Warrior is a newsletter about strategies and current standings in Core War. Started in Oct.1995, back issues of Core Warrior (and the other newsletters) are available at . [ToC] _________________________________________________________________ Where are the Core War archives? Planar web page contains a large number of published warriors. Currently, all warriors published are included in this archive. [ToC] _________________________________________________________________ Where can I find a Core War system for . . . ? Core War systems are available via anonymous ftp from ftp.csua.berkeley.edu in the /pub/corewar/systems directory. Currently, there are UNIX, IBM PC-compatible, Macintosh, and Amiga Core War systems available there. It is a good idea to check for program updates first. CAUTION! There are many, many Core War systems available which are NOT ICWS'88 (or even ICWS'86) compatible available at various archive sites other than ftp.csua.berkeley.edu. Generally, the older the program - the less likely it will be ICWS compatible. Reviews of Core War systems would be greatly appreciated in the newsgroup and in the newsletter. Below is a not necessarily complete or up-to-date list of what's available at ftp.csua.berkeley.edu: MADgic41.lzh - corewar for the Amiga, v4.1 MAD4041.lzh - older version? MAD50B.lha - corewar for the Amiga, beta version 5.0 Redcoder-21.hqx - corewar for the Mac, supports ICWS'88 and '94 (without extensions) core-11.hqx - corewar for the Mac core-wars-simulator.hqx - same as core-11.hqx? corewar_unix_x11.tar.Z - corewar for UNIX/X-windows, ICWS'86 but not ICWS'88 compatible koth31.tar.Z - corewar for UNIX/X-windows. This program ran the former KotH server at intel.com koth.shar.Z - older version kothpc.zip - port of older version of KotH to the PC deluxe20c.tar.Z - corewar for UNIX (broken X-windows or curses) and PC mars.tar.Z - corewar for UNIX, likely not ICWS'88 compatible icons.zip - corewar icons for MS-Windows macrored.zip - a redcode macro-preprocessor (PC) c88v49.zip - PC corewar, textmode display mars88.zip - PC corewar, graphics mode display corwp302.zip - PC corewar, textmode display, slowish mercury2.zip - PC corewar written in assembly, fast! mtourn11.zip - tournament scheduler for mercury (req. 4DOS) pmars08s.zip - portable system, ICWS'88 and '94, runs on UNIX, PC, Mac, Amiga. C source archive pmars08s.tar.Z - same as above pmars08.zip - PC executables with graphics display, req 386+ macpmars02.sit.hqx - pMARS executable for Mac (port of version 0.2) buggy, no display MacpMARS1.99a.cpt.hqx - port of v0.8 for the Mac, with display and debugger MacpMARS1.0s.cpt.hqx - C source (MPW, ThinkC) for Mac frontend ApMARS03.lha - pMARS executable for Amiga (port of version 0.3.1) wincor11.zip - MS-Windows system, shareware ($15) [ToC] _________________________________________________________________ I do not have FTP. How do I get all this great stuff? There is an ftp email server at ftpmail@decwrl.dec.com. Send email with a subject and body text of "help" (without the quotes) for more information on its usage. If you don't have access to the net at all, send me a 3.5 '' diskette in a self-addressed disk mailer with postage and I will mail it back with an image of the Core War archives in PC format. My address is at the end of this post. [ToC] _________________________________________________________________ I do not have access to Usenet. How do I post and receive news? To receive rec.games.corewar articles by email, join the COREWAR-L list run on the Stormking.Com list processor. To join, send the message SUB COREWAR-L FirstName LastName to listproc@stormking.com. You can send mail to corewar-l@stormking.com to post even if you are not a member of the list. Responsible for the listserver is Scott J. Ellentuch (tuc@stormking.com). Another server that allows you to post (but not receive) articles is available. Email your post to rec-games-corewar@cs.utexas.edu and it will be automatically posted for you. [ToC] _________________________________________________________________ Are there any Core War related WWW sites? You bet. Each of the two KotH sites sport a world-wide web server. Stormking's Core War page is ; Pizza's is . Planars Page is With a US mirror at [ToC] _________________________________________________________________ What is KotH? How do I enter? King Of The Hill (KotH) is an ongoing Core War tournament available to anyone with email. You enter by submitting via email a Redcode program (warrior) with special comment lines. You will receive a reply indicating how well your program did against the current top programs "on the hill". There are two styles of KotH tournaments, "classical" and "multi-warrior". The "classical" KotH is a one-on-one tournament, your warrior battles against each of the 25 other programs currently on the Hill. You receive 3 points for each win and 1 point for each tie. (The existing programs do not replay each other, but their previous battles are recalled.) All scores are updated to reflect your battles and all 21 programs are ranked from high to low. If you are number 21 you are pushed off the Hill, if you are higher than 21 someone else is pushed off. In "multi-warrior" KotH, all warriors on the hill fight each other at the same time. Score calculation is a bit more complex than for the one-on-one tournament. Briefly, points are awarded based on how many warriors survive until the end of a round. A warrior that survives by itself gets more points than a warrior that survives together with other warriors. Points are calculated from the formula (W*W-1)/S, where W is the total number of warriors and S the number of surviving warriors. The pMARS documentation has more information on multi-warrior scoring. The idea for an email-based Core War server came from David Lee. The original KotH was developed and run by William Shubert at Intel starting in 1991, and discontinued after almost three years of service. Currently, KotHs based on Bill's UNIX scripts but offering a wider variety of hills are are running at three sites: "koth@stormking.com" is maintained by Scott J. Ellentuch (tuc@stormking.com), "pizza@ecst.csuchico.edu" by Thomas H. Davies (sd@ecst.csuchico.edu) and "koth@wastedyouth.umich.edu" by Andrew Fabbro and Johk K. Lewis (koth@umich.edu).To conserve resources, the different hill types are divided up among the sites. The way you submit warriors to the KotHs is pretty much the same. Therefore, the entry rules described below apply to both "pizza", "stormking", and "wastedyouth" unless otherwise noted. Entry rules for King of the Hill Corewar: 1) Write a corewar program. KotH is fully ICWS '88 compatible, EXCEPT that a comma (",") is required between two arguments. 2) Put a line starting with ";redcode" (or ";redcode-94, etc., see below) at the top of your program. This MUST be the first line. Anything before it will be lost. If you wish to receive mail on every new entrant, use ";redcode verbose". Otherwise you will only receive mail if a challenger makes it onto the hill. Use ";redcode quiet" if you wish to receive mail only when you get shoved off the hill. (Also, see 5 below). Additionally, adding ";name " and ";author " will be helpful in the performance reports. Do NOT have a line beginning with ";address" in your code; this will confuse the mail daemon and you won't get mail back. In addition, it would be nice if you have lines beginning with ";strategy" that describe the algorithm you use. There are currently eight separate hills you can select by starting your program with ;redcode-b, ;redcode-94, ;redcode-94x, ;redcode, ;redcode-icws, ;redcode-94m, ;redcode-94xm, or ;recode-94lp. The former three run at "pizza", the next four at "stormking" and the last is on "wastedyouth". More information on these hills is listed below. 3) Mail this file to koth@koth.org, pizza@ecst.csuchico.edu or koth@wastedyouth.umich.edu. "Pizza" requires a subject of "koth" (use the -s flag on most mailers). 4) Within a few minutes you should get mail back telling you whether your program assembled correctly or not. If it did assemble correctly, sit back and wait; if not, make the change required and re-submit. 5) In an hour or so you should get more mail telling you how your program performed against the current top 25 (or 10) programs. If no news arrives during that time, don't worry; entries are put in a queue and run through the tournament one at a time. Most hills have some way of checking the queue. If your program makes it onto the hill, you will get mail every time a new program makes it onto the hill. If this is too much mail, you can use ";redcode[-??] quiet" when you first mail in your program; then you will only get mail when you make it on the top 25 list or when you are knocked off. Using ";redcode[-??] verbose" will give you even more mail; here you get mail every time a new challenger arrives, even if they don't make it onto the top 25 list. Often programmers want to try out slight variations in their programs. If you already have a program named "foo V1.0" on the hill, adding the line ";kill foo" to a new program will automatically bump foo 1.0 off the hill. Just ";kill" will remove all of your programs when you submit the new one. The server kills programs by assigning an impossibly low score; it may therefore take another successful challenge before a killed program is actually removed from the hill. SAMPLE ENTRY: ;redcode ;name Dwarf ;author A. K. Dewdney ;strategy Throw DAT bombs around memory, hitting every 4th memory cell. ;strategy This program was presented in the first Corewar article. bomb DAT #0 dwarf ADD #4, bomb MOV bomb, @bomb JMP dwarf END dwarf ; Programs start at the first line unless ; an "END start" pseudo-op appears to indicate ; the first logical instruction. Also, nothing ; after the END instruction will be assembled. Here are the Specs for the various hills: ICWS'88 Standard Hill Specs: (Accessed with ";redcode", available at "stormking") hillsize: 20 warriors rounds: 100 coresize: 8000 max. processes: 8000 duration: after 80,000 cycles, a tie is declared. max. entry length: 100 minimum distance: 100 instruction set: ICWS '88 ICWS Annual Tournament Hill Specs: (Accessed with ";redcode-icws", available at "stormking") hillsize: 20 warriors rounds: 100 coresize: 8192 instructions max. processes: 8000 per program duration: After 100,000 cycles, a tie is declared. max. entry length: 300 minimum distance: 300 instruction set: ICWS '88 ICWS'94 Draft Hill Specs: (Accessed with ";redcode-94", available at "pizza") hillsize: 25 warriors rounds: 100 coresize: 8000 max. processes: 8000 duration: after 80,000 cycles, a tie is declared. max. entry length: 100 minimum distance: 100 instruction set: extended ICWS '94 Draft ICWS'94 Beginner's Hill Specs: (Accessed with ";redcode-b", available at "pizza") hillsize: 25 warriors rounds: 100 coresize: 8000 max. processes: 8000 duration: after 80,000 cycles, a tie is declared. max. entry length: 100 minimum distance: 100 instruction set: extended ICWS '94 Draft max. age: after 100 successful challenges, warriors are retired. ICWS'94 Experimental (Big) Hill Specs: (Accessed with ";redcode-94x", available at "pizza") hillsize: 25 warriors rounds: 100 coresize: 55440 max. processes: 10000 duration: after 500,000 cycles, a tie is declared. max. entry length: 200 minimum distance: 200 instruction set: extended ICWS '94 Draft ICWS'94 Draft Multi-Warrior Hill Specs: (Accessed with ";redcode-94m", available at "stormking") hillsize: 10 warriors rounds: 200 coresize: 8000 max. processes: 8000 duration: after 80,000 cycles, a tie is declared. max. entry length: 100 minimum distance: 100 instruction set: extended ICWS '94 Draft ICWS'94 Experimental (Big) Multi-Warrior Hill Specs: (Accessed with ";redcode-94xm", available at "stormking") hillsize: 20 warriors rounds: 100 coresize: 55440 max. processes: 10000 duration: after 500,000 cycles, a tie is declared. max. entry length: 200 minimum distance: 200 instruction set: extended ICWS '94 Draft ICWS'94 Limited Process Hill: (Accessed with ";redcode-94lp", available at "wastedyouth") hillsize: 25 warriors rounds: 200 coresize: 8000 max. processes: 8 duration: after 800,000 cycles, a tie is declared. max. entry length: 200 minimum distance: 200 instruction set: extended ICWS '94 Draft If you just want to get a status report without actually challenging the hills, send email with ";status" as the message body (and don't forget "Subject: koth" for "pizza"). If you send mail to "pizza" with "Subject: koth help" you will receive instructions that may be more up to date than those contained in this document. At stormking, a message body with ";help" will return brief instructions. If you submit code containing a ";test" line, your warrior will be assembled but not actually pitted against the warriors on the hill. All hills run portable MARS (pMARS) version 0.8, a platform-independent corewar system available at ftp.csua.berkeley.edu. The '94 and '94x hills allow five experimental opcodes and three addressing modes currently not covered in the ICWS'94 draft document: LDP - Load P-Space STP - Store P-Space SEQ - Skip if EQual (synonym for CMP) SNE - Skip if Not Equal NOP - (No OPeration) * - indirect using A-field as pointer { - predecrement indirect using A-field } - postincrement indirect using A-field [ToC] _________________________________________________________________ Is it DAT 0, 0 or DAT #0, #0? How do I compare to core? Core is initialized to DAT 0, 0. This is an "illegal" instruction under ICWS'88 rules and strictly compliant assemblers (such as KotH or pmars -8) will not let you write a DAT 0, 0 instruction - only DAT #0, #0. So this begs the question, how to compare something to see if it is empty core. The answer is, most likely the instruction before your first instruction and the instruction after your last instruction are both DAT 0, 0. You can use them, or any other likely unmodified instructions, for comparison. Note that under ICWS'94, DAT 0, 0 is a legal instruction. [ToC] _________________________________________________________________ How does SLT (Skip if Less Than) work? SLT gives some people trouble because of the way modular arithmetic works. It is important to note that all negative numbers are converted to positive numbers before a battles begins. Example: (-1) becomes (M - 1) where M is the memory size. Once you realize that all numbers are treated as positive, it is clear what is meant by "less than". It should also be clear that no number is less than zero. [ToC] _________________________________________________________________ What is the difference between in-register and in-memory evaluation? These terms refer to the way instruction operands are evaluated. The '88 Redcode standard ICWS'88 is unclear about whether a simulator should "buffer" the result of A-operand evaluation before the B-operand is evaluated. Simulators that do buffer are said to use in-register evaluation, those that don't, in-memory evaluation. ICWS'94 clears this confusion by mandating in-register evaluation. Instructions that execute differently under these two forms of evaluation are MOV, ADD, SUB, MUL, DIV and MOD where the effective address of the A-operand is modified by evaluation of the B-operand. This is best illustrated by an example: L1 mov L2, mov.i #0,impsize Bootstrapping Strategy of copying the active portion of the program away from the initial location, leaving a decoy behind and making the relocated program as small as possible. B-Scanners Scanners which only recognize non-zero B-fields. example add #10,scan scan jmz example,10 C Measure of speed, equal to one location per cycle. Speed of light. CMP-Scanner A Scanner which uses a CMP instruction to look for opponents. example add step,scan scan cmp 10,30 jmp attack jmp example step dat #20,#20 Color Property of bombs making them visible to scanners, causing them to attack useless locations, thus slowing them down. example dat #100 Core-Clear code that sequentially overwrites core with DAT instructions; usually the last part of a program. Decoys Bogus or unused instructions meant to slow down Scanners. Typically, DATs with non-zero B-fields. DJN-Stream (also DJN-Train) Using a DJN command to rapidly decrement core locations. example ... ... djn example,<4000 Dwarf the prototypical small bomber. Gate-busting (also gate-crashing) technique to "interweave" a decrement-resistant imp-spiral (e.g. MOV 0, 2668) with a standard one to overrun imp-gates. Hybrids warriors that combine two or more of the basic strategies, either in sequence (e.g. stone->paper) or in parallel (e.g. imp/stone). Imp Program which only uses the MOV instruction. example MOV 0, 1 or example MOV 0, 2 MOV 0, 2 Imp-Gate A location in core which is bombed or decremented continuously so that an Imp can not pass. Also used to describe the program-code which maintains the gate. example ... ... SPL 0, mov.i #0,impsize Mirror see reflection. On-axis/off-axis On-axis scanners compare two locations M/2 apart, where M is the memory size. Off-axis scanners use some other separation. Optimal Constants (also optima-type constants) Bomb or scan increments chosen to cover core most effectively, i.e. leaving gaps of uniform size. Programs to calculate optimal constants and lists of optimal numbers are available at ftp.csua.berkeley.edu. Paper A Paper-like program. One which replicates itself many times. Part of the Scissors (beats) Paper (beats) Stone (beats Scissors) analogy. Pit-Trapper (also Slaver, Vampire). A program which enslaves another. Usually accomplished by bombing with JMPs to a SPL 0 pit with an optional core-clear routine. Quick Scan 2c scan of a set group of core locations with bombing if anything is found. Both of the following codes snips scan 16 locations and check for a find. If anything is found, it is attacked, otherwise 16 more locations are scanned. Example: start s1 for 8 ;'88 scan cmp start+100*s1, start+100*s1+4000 ;check two locations mov #start+100*s1-found, found ;they differ so set pointer rof jmn attack, found ;if we have something, get it s2 for 8 cmp start+100*(s2+6), start+100*(s2+6)+4000 mov #start+100*(s2+6)-found, found rof found jmz moveme, #0 ;skip attack if qscan found nothing attack cmp @found, start-1 ;does found points to empty space? add #4000, found ;no, so point to correct location mov start-1, @found ;move a bomb moveme jmp 0, 0 In ICWS'94, the quick scan code is more compact because of the SNE opcode: start ;'94 scan s1 for 4 sne start+400*s1, start+400*s1+100 ;check two locations seq start+400*s1+200, start+400*s1+300 ;check two locations mov #start+400*s1-found, found ;they differ so set pointer rof jmn which, found ;if we have something, get it s2 for 4 sne start+400*(s2+4), start+400*(s2+4)+100 seq start+400*(s2+4)+200, start+400*(s2+4)+300 mov #start+400*(s2+4)-found-100, found rof found jmz moveme, #0 ;skip attack if qscan found nothing add #100, -1 ;increment pointer till we get the which jmn -1, @found ;right place mov start-1, @found ;move a bomb moveme jmp 0, 0 Reflection Copy of a program or program part, positioned to make the active program invisible to a CMP-scanner. Replicator Generic for Paper. A program which makes many copies of itself, each copy also making copies. Self-Splitting Strategy of amplifying the number of processes executing a piece of code. example SPL 0 loop ADD #10, example MOV example, @example JMP loop Scanner A program which searches through core for an opponent rather than bombing blindly. Scissors A program designed to beat replicators, usually a (B-field scanning) vampire. Part of the Paper-Scissors-Stone analogy. Self-Repair Ability of a program to fix it's own code after attack. Silk A replicator which splits off a process to each new copy before actually copying the code. This allows it to replicate extremely quickly. This technique is only possible under the '94 draft, because it requires post-increment indirect addressing. Example: spl 1 mov.i -1, 0 spl 1 ;generate 6 consecutive processes silk spl 3620, #0 ;split to new copy mov.i >-1, }-1 ;copy self to new location mov.i bomb, >2000 ;linear bombing mov.i bomb, }2042 ;A-indirect bombing for anti-vamp jmp silk, {silk ;reset source pointer, make new copy bomb dat.f >2667, >5334 ;anti-imp bomb Slaver see Pit-Trapper. Stealth Property of programs, or program parts, which are invisible to scanners, accomplished by using zero B-fields and reflections. Stone A Stone-like program designed to be a small bomber. Part of the Paper-Scissors-Stone analogy. Stun A type of bomb which makes the opponent multiply useless processes, thus slowing it down. Example is referred to as a spl-jmp bomb. example spl 0 jmp -1 Two-Pass Core-Clear (also spl/dat Core-Clear) core clear that fills core first with SPL instructions, then with DATs. This is very effective in killing paper and certain imp-spiral variations. Vampire see Pit-Trapper. Vector Launch one of several means to start an imp-spiral running. As fast as Binary Launch, but requiring much less code. See also JMP/ADD Launch and Binary Launch. This example is one form of a Vector Launch: impsize equ 2667 example spl 1 ; extend by adding more spl 1's spl 1 djn.a @imp,#0 ; jmp @ a series of pointers dat #0,imp+(3*impsize) dat #0,imp+(2*impsize) dat #0,imp+(1*impsize) dat #0,imp+(0*impsize) imp mov.i #0,impsize [ToC] _________________________________________________________________ Other questions? Just ask in the rec.games.corewar newsgroup or contact me (address below). If you are shy, check out the Core War archives first to see if your question has been answered before. [ToC] _________________________________________________________________ Credits Additions, corrections, etc. to this document are solicited. Thanks in particular to the following people who have contributed major portions of this document: Paul Kline, Randy Graham. Mark Durham wrote the first version of the FAQ. The rec.games.corewar FAQ is Copyright 1995 and maintained by: Stefan Strack, PhD stst@vuse.vanderbilt.edu Dept. Molecular Physiol. and Biophysics stst@idnsun.gpct.vanderbilt.edu Rm. 762, MRB-1 stracks@vuctrvax.bitnet Vanderbilt Univ. Medical Center Voice: +615-322-4389 Nashville, TN 37232-6600, USA FAX: +615-322-7236 _________________________________________________________________ $Id: corewar-faq.html,v 3.6 1995/10/12 22:44:37 stst Exp stst $ From: Beppe Bezzi Subject: Semi final round. Player's choices Date: 1996/11/10 Message-ID: #1/1 newsgroups: rec.games.corewar Here are the choices of the players for Semifinal tunr. Instr Modif. Mode Ian Oversby JMP .BA * George Eadon LDP .i # Phil Kendall SPL .ab > Franz SEQ .f $ Both matches look interesting indeed; expecially the second, without SPL and direct addressing. -Beppe From: Justin Kao <102741.2022@CompuServe.COM> Subject: Is Pizza Broken? Date: 1996/11/10 Message-ID: <961110072018_102741.2022_GHT57-1@CompuServe.COM>#1/1 newsgroups: rec.games.corewar I sent in a warrior last night, recieved the submission confirmation, but haven't gotten anything else since... Justin From: Matt Keeley Subject: Re: Java simulator Date: 1996/11/11 Message-ID: <3286F810.515D@eskimo.com>#1/1 references: <3284A283.61AA@kamsc.k12.mi.us> newsgroups: rec.games.corewar Matthew N Lewinski wrote: > > wolak wrote: > > > > Does anyone know of a java implementation of the pMARS simulator? > > thanks in advance. > > It is my opinion that ant java impl. would be too slow to use, even with > no graphical display. java is interpreted, a bytecode is compiled, then > interpreted into code your computer can use, meaning slow performance. Ah, but if you first compile the redcode into Java bytecodes... (ducks quickly) From: SKI Koth Server Subject: SKI-ICWS: Status - Standard 11/11/96 Date: 1996/11/11 Message-ID: <199611110500.AAA28139@odin.stormking.com>#1/1 newsgroups: rec.games.corewar Weekly Status on 11/11/96 ****** NOTICE ****** We have changed our name to koth.org ****** NOTICE ****** See up to the second scores and the latest Core War information at : http://www.koth.org/ *FAQ* http://www.koth.org/corewar-faq.html Current Status of the StormKing Industries Standard KotH CoreWar Hill : Last battle concluded at : Sun Nov 10 01:10:18 EST 1996 # %W/ %L/ %T Name Author Score Age 1 44/ 40/ 16 Blur '88 Anton Marsden 148 5 2 40/ 36/ 24 Tangle Trap David Moore 145 41 3 29/ 15/ 56 Test I Ian Oversby 143 24 4 30/ 18/ 52 Evoltmp 88 John K W 142 18 5 30/ 20/ 50 CAPS KEY IS STUCK AGAIN Steven Morrell 140 165 6 32/ 24/ 44 Test Wayne Sheppard 140 188 7 30/ 20/ 50 Simple '88 Ian Oversby 139 54 8 39/ 40/ 21 Stasis David Moore 139 75 9 39/ 40/ 21 PacMan v5 David Moore 139 67 10 27/ 16/ 58 Rosebud 88 Beppe 138 30 11 40/ 43/ 16 Iron Gate Wayne Sheppard 137 293 12 40/ 43/ 18 Gisela 609 Andrzej Maciejczak 137 37 13 27/ 18/ 55 ttti nandor sieben 136 149 14 26/ 18/ 56 Cannonade P.Kline 134 199 15 29/ 23/ 48 K-test P.E.M 134 71 16 38/ 42/ 21 Beholder's Eye V1.7 W. Mintardjo 133 243 17 37/ 41/ 22 Gisela 3G6 Andrzej Maciejczak 133 62 18 32/ 31/ 37 Yop La Boum v2.1 P.E.M & E.C. 132 99 19 18/ 9/ 73 Evolve '88 John K Wilkinson 128 55 20 5/ 0/ 0 Test Anton Marsden 14 1 21 2/ 98/ 0 kill Test Anton Marsden 7 0 From: SKI Koth Server Subject: SKI-ICWS: Status - Multiwarrior Experimental 94 11/11/96 Date: 1996/11/11 Message-ID: <199611110500.AAA28154@odin.stormking.com>#1/1 newsgroups: rec.games.corewar Weekly Status on 11/11/96 ****** NOTICE ****** We have changed our name to koth.org ****** NOTICE ****** See up to the second scores and the latest Core War information at : http://www.koth.org/~koth *FAQ* http://www.koth.org/~koth/corewar-faq.html Current Status of the StormKing Industries MultiWarrior Experimental 94 CoreWar Hill: Last battle concluded at : Sun Nov 10 18:01:29 EST 1996 # Name Author Score Age 1 Evolve X John Wilkinson 5020 16 2 Test2 George Eadon 5020 36 3 jaded M R Bremer 5020 47 4 TimeScapeX (0.1) J. Pohjalainen 5020 76 5 Fork v0.2-9p/51b Christoph C. Birk 5020 18 6 This is Test1 Kurt Franke 5020 41 7 U-Lat II Zul Nadzri 5020 3 8 U-lat Zul Nadzri 5020 7 9 Paper8 G. Eadon 5020 42 10 Victim 16 Pedro 5020 6 11 U-lat II Zul Nadzri 5020 2 12 Wax Zul Nadzri 5020 4 13 Stamp II Franz 5020 9 14 Chain 4 Pedro 5020 1 15 Newest test Pedro 4998 15 16 Paperone Beppe Bezzi 4998 61 17 Stamp Franz 4998 10 18 Papyrus 4 Justin Kao 4998 14 19 tRASH Franz 4976 5 20 Saat V2.01 S. Schroeder 4976 30 21 NoName Pedro 4976 12 From: SKI Koth Server Subject: SKI-ICWS: Status - ICWS Experimental 94 11/11/96 Date: 1996/11/11 Message-ID: <199611110500.AAA28158@odin.stormking.com>#1/1 newsgroups: rec.games.corewar Weekly Status on 11/11/96 ****** NOTICE ****** We have changed our name to koth.org ****** NOTICE ****** See up to the second scores and the latest Core War information at : http://www.koth.org/~koth *FAQ* http://www.koth.org/~koth/corewar-faq.html Current Status of the StormKing Industries ICWS Experimental 94 CoreWar Hill: Last battle concluded at : Fri Oct 25 14:59:40 EDT 1996 # %W/ %L/ %T Name Author Score Age 1 32/ 5/ 63 Evol Cap 4 X John Wilkinson 160 31 2 44/ 35/ 22 Dr. Gate X Franz 152 2 3 32/ 15/ 53 Rosebud Beppe 149 10 4 45/ 42/ 13 Memories Beppe Bezzi 147 38 5 36/ 28/ 36 Falcon v0.3 X Ian Oversby 144 4 6 39/ 34/ 26 Dr. Recover Franz 144 1 7 43/ 44/ 14 Tsunami v0.1 Ian Oversby 142 9 8 39/ 36/ 26 BigBoy Robert Macrae 141 56 9 40/ 42/ 19 Illusion-94/55 Randy Graham 138 13 10 36/ 35/ 30 Lithium X 8 John K Wilkinson 136 22 11 39/ 43/ 18 Stepping Stone 94x Kurt Franke 135 17 12 39/ 44/ 17 Frontwards v2 Steven Morrell 134 61 13 35/ 38/ 27 Derision M R Bremer 132 48 14 39/ 47/ 14 Pagan John K W 132 16 15 27/ 25/ 48 Hector 2 Kurt Franke 130 51 16 36/ 44/ 20 Fire Master Xv1 JS Pulido 129 53 17 28/ 29/ 43 Variation M-1 Jay Han 128 11 18 39/ 51/ 9 S.E.T.I. 4-X JKW 127 32 19 40/ 54/ 6 dodger component M R Bremer 127 3 20 32/ 38/ 30 Tornado 2.0 x Beppe Bezzi 126 55 21 26/ 30/ 44 Aleph 1 Jay Han 122 21 From: SKI Koth Server Subject: SKI-ICWS: Status - MultiWarrior 94 11/11/96 Date: 1996/11/11 Message-ID: <199611110500.AAA28149@odin.stormking.com>#1/1 newsgroups: rec.games.corewar Weekly Status on 11/11/96 ****** NOTICE ****** We have changed our name to koth.org ****** NOTICE ****** See up to the second scores and the latest Core War information at : http://www.koth.org/~koth *FAQ* http://www.koth.org/~koth/corewar-faq.html Current Status of the StormKing Industries Multiwarrior 94 CoreWar Hill: Last battle concluded at : Sun Nov 10 09:41:43 EST 1996 # Name Author Score Age 1 IMPossible! Maurizio Vittuari 5043 10 2 Aulder Man Ian Oversby 5043 5 3 Son of Imp Steven Morrell 5031 64 4 Super Evol Cap John Wilkinson 5031 28 5 Die Hard P.Kline 5030 51 6 IMPossible! Maurizio Vittuari 5019 18 7 Get Even II Robert Macrae 5018 3 8 Get Even Robert Macrae 5007 4 9 Get Even II Robert Macrae 5007 2 10 Get Evener Robert Macrae 4981 1 11 Chain 2 Pedro 4981 0 From: Beppe Bezzi Subject: Core Warrior 50 Date: 1996/11/11 Message-ID: newsgroups: rec.games.corewar .xX$$x. .x$$$$$$$x. d$$$$$$$$$$$ ,$$$$$$$P' `P' , . $$$$$$P' ' .d b $$$$$P b ,$$x ,$$x ,$$x ,$$b $$. Y$$$$' `$. $$$$$$. $$$$$$ $$P~d$. d$$$b d d$$$ `$$$$ ,$$ $$$$$$$b $$$P `$ $$$b.$$b `Y$$$d$d$$$' . . a . a a .aa . a `$$$ ,$$$,$$' `$$$ $$$' ' $$P$XX$' `$$$$$$$$$ .dP' `$'$ `$'$ , $''$ `$'$ `Y$b ,d$$$P `$b,d$P' `$$. `$$. , `$$P $$$' Y $. $ $ $ Y..P $ `$$$$$$$' $$$P' `$$b `$$$P `P `$' `Y'k. $. $. $. $$' $. Issue 50 11 November, 1996 ______________________________________________________________________________ Core Warrior is a weekly newsletter promoting the game of corewar. Emphasis is placed on the most active hills--currently the '94 draft hill and the beginner hill. Coverage will follow where ever the action is. If you have no clue what I'm talking about then check out these five-star internet locals for more information: FAQs are available by anonymous FTP from rtfm.mit.edu as pub/usenet/news.answers/games/corewar-faq.Z FTP site is: ftp.csua.berkeley.edu /pub/corewar Web pages are at: (Please note new Stormking's address) http://www.koth.org/ ;Stormking http://www.ecst.csuchico.edu/~pizza/koth ;Pizza http://pauillac.inria.fr/~doligez/corewar/ ;Planar Newbies should check the stormking page for the FAQ, language specification, guides, and tutorials. Post questions to rec.games.corewar. All new players are infinitely welcome! If ftp.csua.berkeley.edu is unreachable, you can download pMARS at: Terry's web page--http://www.infi.net/~wtnewton/corewar/ Planar ftp site--ftp://ftp.inria.fr/INRIA/Projects/para/doligez/cw/pmars Fechter ftp site--ftp://members.aol.com/ofechner/corewar A collection of Bezzi's hints in the first issues is available at: ftp://ftp.volftp.vol.it/pub/pc/msdos/games/solutions/bbhints.zip Beppe Bezzi web page - http://www.aspide.it/freeweb/Bezzi ______________________________________________________________________________ Greetings. Stefan has released a new faster version of pmars; the source of new sim.c is available at ftp://koth.org/incoming/sim.zip soon coming a full release of pmars Elimination rounds of the tornament are over and Final Four direct elimination part has began. The best four challenging for final victory are Ian Oversby, winning all five matches played, Philip Kendall, Franz and George Eadon. --Beppe Bezzi ______________________________________________________________________________ Current Status of the Internet Pizza Server ICWS '94 Draft Hill: Hill Specs: coresize: 8000 max. processes: 8000 duration: after 80,000 cycles, a tie is declared. max. entry length: 100 minimum distance: 100 rounds fought: 200 instruction set: ICWS '94 Draft The current ICWS '94 Draft hill: # %W / %L / %T Name Author Score Age 1 40.0/ 21.7/ 38.2 unrequited love kafka 158.4 222 2 45.4/ 37.3/ 17.3 The Machine Anton Marsden 153.5 30 3 34.9/ 17.0/ 48.1 Trident^2 John K W 152.9 54 4 33.1/ 13.7/ 53.2 Return Of The Jedimp John K W 152.5 124 5 38.8/ 26.0/ 35.3 Gigolo Core Warrior staff 151.5 178 6 45.3/ 44.9/ 9.7 Memories Beppe 145.7 38 7 42.2/ 39.7/ 18.1 Probe Anton Marsden 144.7 302 8 41.2/ 38.0/ 20.9 Damage Incorporated Anton Marsden 144.3 165 9 42.9/ 41.8/ 15.3 Blur 2 Anton Marsden 144.1 301 10 38.9/ 33.8/ 27.3 Tiberius 3.1 Franz 144.1 41 11 31.9/ 20.2/ 47.9 Impish v0.2 Ian Oversby 143.5 163 12 40.8/ 40.2/ 19.0 Silver Talon 1.2 Edgar 141.4 11 13 36.6/ 32.1/ 31.3 Nine Seven Six M R bremer 141.0 14 14 32.3/ 24.0/ 43.7 Rosebud Beppe 140.7 975 15 40.3/ 40.5/ 19.2 vamp 0.2b bjoern guenzel 140.2 1 16 37.9/ 35.9/ 26.2 CC Paper 2 Franz 140.0 13 17 41.1/ 43.4/ 15.5 AK-47 Franz 138.8 16 18 42.6/ 47.6/ 9.8 Q^2 Miro Anders Ivner 137.7 352 19 35.3/ 33.3/ 31.3 Falcon v0.3 Ian Oversby 137.3 207 20 32.7/ 28.2/ 39.1 delay 0.02b 50 bjoern guenzel 137.2 5 21 38.4/ 39.8/ 21.7 Instant Wolf 3.4 Edgar 137.0 185 22 37.1/ 37.6/ 25.3 Scanitator 2.1 Christian Schmidt 136.6 2 23 40.6/ 45.4/ 14.0 Flamberge 13.4 Matt Lewinski 135.7 3 24 39.2/ 43.2/ 17.6 Goldfinch P.Kline 135.3 243 25 39.4/ 43.8/ 16.7 Dr. Gate Q Franz 135.0 7 Weekly age: 5 this week ( 15 last issue, 13 the week before ) New warriors: 4 Turnover/age rate 80% Average age: 146( 152 last issue, 173 the week before ) Average score: 143 ( 138 last issue, 136 the week before ) The top 25 warriors are represented by 13 independent authors: Franz and Marsden with 4; Oversby 3; and Beppe and JKW have two. C. Schmidt makes the hill for first time King Report: very little to report, unrequited love kept best spot all the week. ______________________________________________________________________________ 94 - What's New # %W / %L / %T Name Author Score Age 8 37.6/ 36.9/ 25.5 Scanitator 2.1 Christian Schmidt 138.3 1 14 38.3/ 41.8/ 19.9 vamp 0.2b bjoern guenzel 134.7 1 14 31.1/ 28.5/ 40.4 delay 0.02b 50 bjoern guenzel 133.8 1 23 38.7/ 47.3/ 14.0 Flamberge 13.4 Matt Lewinski 130.1 1 Five challenges and four new warriors, none in top spots. ______________________________________________________________________________ 94 - What's No More # %W / %L / %T Name Author Score Age 26 33.6/ 42.8/ 23.6 cryptos bjoern guenzel 124.5 2 26 32.1/ 35.6/ 32.3 Simple v0.4b Ian Oversby 128.7 250 26 37.2/ 49.0/ 13.8 Golden Gate 3 Franz 125.4 9 26 36.8/ 45.0/ 18.2 Silver Talon 1.1 Edgar 128.6 15 Oversby lost his most aged warrior at 250 age. ______________________________________________________________________________ 94 - What's Old # %W / %L / %T Name Author Score Age 14 32.3/ 24.0/ 43.7 Rosebud Beppe 140.7 975 18 42.6/ 47.6/ 9.8 Q^2 Miro Anders Ivner 137.7 352 7 42.2/ 39.7/ 18.1 Probe Anton Marsden 144.7 302 9 42.9/ 41.8/ 15.3 Blur 2 Anton Marsden 144.1 301 24 39.2/ 43.2/ 17.6 Goldfinch P.Kline 135.3 243 1 40.0/ 21.7/ 38.2 unrequited love kafka 158.4 222 19 35.3/ 33.3/ 31.3 Falcon v0.3 Ian Oversby 137.3 207 No new entries, one loss: Simple. ______________________________________________________________________________ Tournament time The first part of the tournament is over, the best four are now qualified for Semi final direct elimination round. Giving a look at standing, and noticing the names of those eliminated with 9 points, little more remains to say about the value of the top four. Thank you to all for playing and let's look who will be the players of the final. Pos. # Player Score Opp. met 2nd lev score ----------------------------------------------------------------------------- 1 5 Ian Oversby 15 6.7.1.9.18 29 2 14 Philip Kendall 12 13.15.2.3.9 30 3 1 Franz 10 2.4.5.18.15 41 4 18 George Eadon 10 17.2.3.1.5 31 5 9 Steven Morrell 9 10.12.15.5.14 42 6 15 Magnus Paulsson 9 16.14.9.13.1 37 7 13 David M. Moore 9 14.11.16.15.4 34 8 10 Anton Marsden 9 9.8.6.7.2 22 8 11 Robert McRae 9 12.13.17.16.8 22 10 4 Joshua 7 3.1.7.8.13 29 11 8 J. K. Wilkinson 7 7.10.12.4.11 28 12 16 Zul Nadzri 6 15.17.13.11.6 24 13 17 Bjoern Guenzel 6 18.16.11.6.12 22 14 7 Justin Kao 4 8.5.4.10.3 36 15 3 J. K. Lewis 4 4.6.18.14.7 30 16 2 M. R. Bremer 3 1.18.14.12.10 41 17 12 Matt Lewinski 3 11.9.8.2.17 31 18 6 Ross Morgan-Linial 0 5.3.10.17.16 30 ------------------------------------------------------------------------------ Congratulations to Ian Oversby, winning all five rounds, and also to PhilKendall, Franz and George Eadon, qualifying for the semifinal round. Thank you to all others for playing, better luck next time. Semifinal pairings are as follow Oversby - Eadon Kendall - Franz ______________________________________________________________________________ HALL OF FAME * means the warrior is still active. Pos Name Author Age Strategy 1 Thermite II Robert Macrae 2262 Qscan -> bomber 2 Impfinity v4g1 Planar 1993 Stone/ imp 3 Jack in the box Beppe Bezzi 1620 P-warrior 4 Tornado 3.0 Beppe Bezzi 1567 Bomber 5 Torch t18 P.Kline 1539 Bomber 6 Chameleon Myer R Bremer 1437 P-warrior 7 Frontwards v2 Steven Morrell 1420 One shot scanner 8 Evol Cap 6.6 John Wilkinson 1299 Imp / stone 9 quiz Schitzo 1262 Scanner/ bomber 10 T.N.T. Maurizio Vittuari 1204 Bomber 11 Grilled Octopus v0.5 David Boeren 1154 P-warrior 12 Hazy Shade II John Wilkinson 1102 P-warrior 13 Stepping Stone Kurt Franke 1049 Qscan -> Vampire 14 Rosebud Beppe Bezzi 975 * Stone/ imp 15 Iron Gate 1.5 Wayne Sheppard 926 CMP scanner 16 T.N.T. pro Maurizio Vittuari 925 Bomber 17 Agony II Stefan Strack 912 CMP scanner 18 Barrage Anton Marsden 876 Qscan -> replicator 19 Blue Funk Steven Morrell 869 Stone/ imp 20 Flurry Anton Marsden 835 Qscan -> pwarrior 21 Thermite 1.0 Robert Macrae 802 Qscan -> bomber 22 Blue Funk 3 Steven Morrell 766 Stone/ imp 23 Night Train Karl Lewin 755 Replicator 24 Mirage 1.5 Anton Marsden 736 Scanner/ bomber 25 Blizzard Anton Marsden 713 Qscan -> replicator No changes. ______________________________________________________________________________ Current Status of the Internet Pizza Server Beginner's Hill: Hill Specs: coresize: 8000 max. processes: 8000 duration: after 80,000 cycles, a tie is declared. max. entry length: 100 minimum distance: 100 maximum age: At age 100, warriors are retired. rounds fought: 200 instruction set: ICWS '94 Draft # %W / %L / %T Name Author Score Age 1 51.9/ 34.5/ 13.6 Silver Talon 1.1 Edgar 169.3 49 2 51.4/ 36.7/ 11.8 Flamberge 13.4 Matt Lewinski 166.1 18 3 48.3/ 33.0/ 18.7 Microsoft Office '96 Justin Kao 163.6 45 4 45.9/ 39.4/ 14.7 Mostly Harmless v1.0 Justin Kao 152.3 8 5 40.4/ 28.7/ 30.9 Scanitator 2.3 Christian Schmidt 152.1 12 6 45.7/ 40.9/ 13.4 Cruise Missile Philip Kendall 150.5 14 7 41.8/ 37.2/ 21.0 Vivid Radiation 2.0 Matt Lewinski 146.5 17 8 42.8/ 40.0/ 17.2 MI6 Philip Kendall 145.7 42 9 41.4/ 37.6/ 21.0 Bash the Rat V1.4 Ian Sutton 145.1 10 10 41.7/ 38.8/ 19.5 HAL 9000 Justin Kao 144.7 61 11 35.7/ 27.1/ 37.2 Escargot 0.5 Justin Kao 144.3 15 12 39.3/ 35.7/ 24.9 Sandstorm Q/0.6c Ilmari Karonen 142.9 40 13 41.8/ 43.1/ 15.1 Termite 1.0 Matt Lewinski 140.4 20 14 32.8/ 27.0/ 40.2 Escargot 0.6 Justin Kao 138.5 2 15 41.3/ 44.9/ 13.9 Goothmonger, Berserker of Ian Sutton 137.7 5 16 33.9/ 30.2/ 35.9 Hammermill 4.0 Matt Lewinski 137.6 55 17 38.1/ 41.4/ 20.4 Daemon of Zteentch Christian Schmidt 134.8 73 18 33.6/ 32.7/ 33.7 Apocalypse Matt Lewinski 134.5 26 19 28.8/ 30.3/ 40.9 Papyrus 21 Justin Kao 127.3 44 20 34.6/ 43.8/ 21.6 Supercritical Carbondioxi Matt Lewinski 125.5 19 21 30.0/ 39.5/ 30.5 Throttle 2.0 Matt Lewinski 120.5 47 22 14.8/ 10.0/ 75.3 Beast of Nurgle Christian Schmidt 119.6 74 23 23.2/ 31.9/ 44.9 Rock 1.5 beta Justin Kao 114.5 1 24 24.1/ 18.2/ 5.6 Flamberge 13.3 Matt Lewinski 78.0 28 25 8.3/ 1.2/ 2.5 Microsoft Office Pro '96 Justin Kao 27.4 6 Top 25 Averages: 30.7/ 28.7/ 40.5 132.7 31 Flamberge, able to enter 94 hill too, enters in second spot ______________________________________________________________________________ The Hint Sorry no hint :-( the tournament is getting almost all my Corewar time, and I don't want to post Gigolo being its code the first prize of the tournament :-) ______________________________________________________________________________ Extra Extra HAL 9000 by Justin Kao Justin asked me if I could do something with his scanner/clear that lived for some time in the bottom of 94 hill. My first impression is that a warrior doing a clear and a scanning in the same time is better done using Blur engine cc: spl.i #0,#btm-ptr+3 top: mov.i $cc,>ptr scan: seq.i $2*step,}2*step+5 mov.b $scan,$ptr a: add.f $inc,$scan jmn.a $top,$scan ; Falls through when all locations scanned ... with more scanning and less clear, compared to HAL, and a much reduced footprint, but this is just an impression having not tested HAL too well. Anyway here is the code of HAL 9000 for anyone wanting to improve it. ;redcode-94 ;name HAL 9000 ;author Justin Kao ;strategy A core clear directed by scanner. ;strategy v9.1 @date@ --the version on the hill. ;strategy NEW: more spl pass ;strategy Formerly Paper Shredder until I discovered the name ;strategy was previously used. No relation to HAL the stone. ;assert 1 step equ 2936 scans equ 400 org start clrptr dat 4000, 0 ;clear pointer clrbmb2 dat {20, <2667 ;first clear bomb clrbmb spl #25, 100 ;second clear bomb and also djn pointer scnloop add clear, scan ;\ scan seq.a -10, -2 ; \ scan mov.a scan, clrptr ; / loop djn scnloop,#scans ;/ clear spl #step, clear loop mov clrbmb, }clrptr ; / djn.a clrloop,>clrbmb ;/ jmp clrloop,>clrbmb ;catch fall through and move djn stream faster for 84 dat 0, 0 rof start spl scnloop ;start scan jmp clrloop ;start clear ______________________________________________________________________________ Questions? Concerns? Comments? Complaints? Mail them to people who care. authors: Beppe Bezzi or Myer Bremer or Anton Marsden [this address will change soon] From: SKI Koth Server Subject: SKI-ICWS: Status - ICWS Tournament 11/11/96 Date: 1996/11/11 Message-ID: <199611110500.AAA28143@odin.stormking.com>#1/1 newsgroups: rec.games.corewar Weekly Status on 11/11/96 ****** NOTICE ****** We have changed our name to koth.org ****** NOTICE ****** See up to the second scores and the latest Core War information at : http://www.koth.org/~koth *FAQ* http://www.koth.org/~koth/corewar-faq.html Current Status of the StormKing Industries Annual ICWS Tournament CoreWar Hill: Last battle concluded at : Mon Oct 28 14:22:53 EST 1996 # %W/ %L/ %T Name Author Score Age 1 38/ 16/ 46 Cannonade Paul Kline 161 100 2 49/ 37/ 14 Miss Carefree Derek Ross 161 32 3 51/ 42/ 7 Agony T Stefan Strack 159 101 4 45/ 39/ 16 Old Tire Swing Randy Graham 150 57 5 43/ 37/ 20 Giskard v0.5 Ken Mitton 149 73 6 38/ 29/ 33 Pommes-Ketchup V1.35 S. Schroeder 148 13 7 33/ 19/ 48 Turkey Beppe Bezzi 146 16 8 30/ 16/ 54 Nothing Special G. Eadon 143 15 9 42/ 44/ 14 Miss Carry Derek Ross 141 64 10 41/ 45/ 14 test88 P.Kline 138 19 11 41/ 45/ 14 Slaver v1.1i Christoph C. Birk 137 61 12 40/ 46/ 15 Gisela 6928 Andrzej Maciejczak 134 4 13 40/ 47/ 13 Gisela 6927 Andrzej Maciejczak 133 5 14 36/ 39/ 26 Beauty 1000 v 0.0 Pedro 133 7 15 40/ 47/ 13 Gisela 6029 Andrzej Maciejczak 133 1 16 39/ 49/ 12 Traper3_t Waldemar Bartolik 128 10 17 38/ 48/ 14 DoubleStone v0.7 Christoph C. Birk 127 43 18 34/ 43/ 23 Yop La Boum v2.1 P.E.M & E.C. 124 30 19 26/ 28/ 46 One Fat Lady Robert Macrae 123 17 20 39/ 57/ 4 xtc stefan roettger 120 105 21 3/ 0/ 1 Gisela 6028 Andrzej Maciejczak 11 2 From: Franz Subject: Re: Java simulator Date: 1996/11/12 Message-ID: #1/1 references: <3284A283.61AA@kamsc.k12.mi.us> <3286F810.515D@eskimo.com> newsgroups: rec.games.corewar > > > Does anyone know of a java implementation of the pMARS simulator? > > > thanks in advance. > > > > It is my opinion that ant java impl. would be too slow to use, even with > > no graphical display. java is interpreted, a bytecode is compiled, then > > interpreted into code your computer can use, meaning slow performance. > > Ah, but if you first compile the redcode into Java bytecodes... > (ducks quickly) yup that would be fast .. but wouldn't work ... would it .... since it woud not work acording to redcode rules ... Franz From: Franz Subject: Dr. Gate v2 Date: 1996/11/13 Message-ID: <328A64A8.11D0908D@azstarnet.com>#1/1 newsgroups: rec.games.corewar Dr Gate / Self Recovery Once there was a discussion on the newsgroup about serial proccess and self checking. This is my latest warrior that does all that ... It is fairly well documented, though the mechanism isn't all that simple. I recomend stepping through it a couple of times ... This one is very different from Golden Gate which ironically gets much better scores. The boot is slightly slower the Dr. style but it's a lot smaller .. Golden Gate uses binary launch and golden gate is a pure dat bomber while Dr.Gate is spl/spl/mov ... yes it's freaky how that works too ... I have tried optimizing as hard as I could and this is the result .. fits in 21 lines with boot and launch ... This is without loss of speed, it is one cycle slower then the original, but the smaller footprint fools more quickscans, The boot itself isn't too quick, but there isn't a way to do it faster, I think. Golden Gate is over 30 lines long ... Dr. Gate gets much better scores with papers but there aren't that many on the hill so Golden Gate can do better. ;redcode ;name Dr. Gate v2 ;author Franz ;strategy Airbag bomber(.6c)->d-clear ;strategy I should start numbering the versions :) ;url http://www.azstarnet.com/~franz ;assert CORESIZE==8000 opt EQU 155 stbm EQU 2 ;of course this isn't the true value :) INSTALL EQU 1352 check EQU align-40 org boot boot b1 spl 1,>-127*2 mov.i >b2,}p2 ;2 times (bombs) b2 mov.i b1,#sl mov.i -127*3 mov.i p1,#1 ;first fall through to become 6th s6 spl *p1,#stone+8 ;jump to 6th process ;this boot creates proccesses as ;1,6 ;2 ;3 ;4 ;5 ;make 1,1 to kill pointers / slow djn trains p1 div.f #stone+INSTALL,#stone+INSTALL-1 p2 div.f #check+INSTALL,#stone+INSTALL+8 dbomb dat >2667,>25 ;this is the part that can be hit (dat,spl?,incedenary(some)...) stone mov.i check+1,stbm+(opt*3),{stbm+(opt*4)+1 add.f jump,where mov.i {stone,{where ;this is the check for hits in main loop, imps and papers align jmz.f stone,}stone ;just a regular d-clear jump spl #opt*3+1, >opt*3+1 clr mov.i dbomb, >align-20 djn.f clr, >align-20 ;these are the bombs, the spl is also used for checking and the checking ;mov instruction can also use the spl to bomb so it bombs (mov/spl/spl) sl spl 0, 0 mv mov opt+1, <10 datz end From: Beppe Bezzi Subject: Semi finals results Date: 1996/11/14 Message-ID: #1/1 newsgroups: rec.games.corewar Semifinal round is over; a clear victory for Ian Oversby and a much harder one for Philip Kendall put them in the final. Death by Numbers by Ian Oversby scores 495 Unknown by George Eadon scores 78 Results: 156 17 27 Inferno 1.5 by Philip Kendall scores 315 Choped by Franz scores 285 Results: 105 95 0 The final, as already told announcing the tournament, will be using the usual 94 redcode extended, the one of Pizza 94 hill. Deadline is next wednesday 20 November 1996 20:00 MET Congratulations to Ian and Phil, thanks to Franz and George, better luck next time. -Beppe -------------- -Beppe Bezzi http://www.aspide.it/freeweb/Bezzi From: Franz Subject: Re: Java simulator Date: 1996/11/15 Message-ID: <328D0AB9.301A976@azstarnet.com>#1/1 references: <15199601.Amiga@sci.fi> newsgroups: rec.games.corewar > Yes, it wouldn't, since nearly all redcode programs self-modify, and > that's a pain in the ass to implement with a compiler. But I wouldn't > think a Java MARS is out of question, especially a graphical one, since > there's ususally a delay anyway to let our slow brains catch up with > the changing graphics. well now that i think of it ... Java MARS emulator (not compiler) would be just what's needed ... a graphical interface with debugger ... you don't need to be extra fast .... for running a lot of battles you just use a text only version which will compile on any (well almost any) machine since it's C ... with the graphics it would be easy for people using machiens not running X like (windows.... and ... umm that's about it isn't it???, OS/2 has X and mac i think too .... but it might be simpler for many to just install java rather then X ... ) anywayz ... i think for a debugger with a nice core display you have no need for speed ... but since the graphics has to be portable java is perfect! too bad i can't speak java ... Franz From: secureru@secure.yes Subject: Your Email Privacy Has Been Compromised Date: 1996/11/15 Message-ID: <199611151124.GAA12090@omni2> newsgroups: rec.games.corewar This Message Contains Important Information About Violations of Your On-Line Privacy. *Email and Online Security Violations.* Please be advised that information contained in email is similar to a post card. It can easily be read in transit and does not go directly from your computer, to the computer of the recipient. Your message often passes through the hands of countless computer systems on its path to where you sent it. Because of this, it can easily be seen by many prying eyes on the way to its destination. If you are mailing personal, business or financial data it is unwise to use traditional email. There are many people on the net who profit by snooping in the open "post card" style email that most account holders utilize. Programs are readily available to make this task simple. Additionally, many people are purchasing mailing lists which contain your email address. If you do not wish to receive unsolicited email, there are a number of free and highly effective steps you can take to recapture your privacy. The personal exposure spoken of is not limited to email. If you make use of other internet services such as the World Wide Web, your privacy is at even greater risk. Unless secure, any information you enter on a form can be read in transit, just like email. Additionally, most of the information providers you contact on the web routinely collect information about you in high detail. This information goes right down to where you are located, and what kind of computer and operating system you use! To combat this problem, many countermeasures have been developed of which most account holders remain unaware. The on line criminals would like to keep it that way. Every net citizen needs to learn to stop sending "Post Cards" and stop allowing distant machines to accumulate large amounts of information about who they are and their interests. There are many simple things you should be doing right now to protect your privacy. Most of the best countermeasures available are FREE. This is because there is still a very strong vein of computer experts on the net who believe in an individual's right to privacy. There are excellent, completely free programs that you should be using right now to browse the web in an untraceable and private manner, and send email that only the recipient can read! You don't need to be a computer expert to use these tools. They often take little or no additional time and are designed to be very simple for the computer illiterate to use. The computer gurus that designed these programs know that it is extremely important that average net citizens make use of them. They have designed and continually revised them with that in mind. My name is Jeff Martin, my associates and I have spent a great deal of time researching this subject. It is my goal to provide you with access to the best resources available to keep your communications private. My information relates to both email and other aspects of the internet such as the World Wide Web. This information was put together because I don't feel that others are making it available in this form of wide distribution, and it needs to be done. The internet is just like a city in that you need some street smarts to keep yourself as safe as possible. That's the kind of information I wish would have been provided to me when I began to go on line, and it is what I have tried hard to put together to help you out. In my program you'll learn: *How to send email that cannot be traced. *How to send email to your friends and associates that cannot be read in transit. *How to post anonymously to Newsgroups. *How to browse the web and download files anonymously. *Why you should (almost) never send financial information over the net. *How to prevent your name from being gathered and sold for bulk email use. *And Much, Much, Much, More .... My package is a treasure trove of valuable information collected to guarantee your privacy! This is the first time I am making this information available. In a short while, the program will be retailing for $59.95. However, if you respond within the next 7 days of receiving this message you will receive the special price of $19.95. Because of the amazing expansion of the internet, I have decided to make this offer so that everyone can afford to learn how to protect themselves from the net's growing criminal element. After seven days you may still order the program at its retail price of $59.95. Additionally, if you order within the next 48 hours, I'll include a very special report about how you can get a free email address and account to use from just about anywhere in the U.S. I'll show you how, but you must order within the next 48 hours! HOW TO ORDER I strive very hard to protect your security. I do not accept unsecure credit card or check information by email, because it is too easily intercepted. While this could increase my orders, I feel that your security as a customer is more important. I am a small business person and keeping up with phoned and faxed in orders has proven to be too difficult for me. Therefore I now only accept orders via postal (snail) mail. Please be certain to give me your email address when ordering. I prefer to ship orders via email so that you can have my information as soon as possible. To order send a check, money order, or credit card information (Visa, MasterCard, Discover) to me at: Jeff Martin POB 72106 Newport, Kentucky 41072 Any credit card orders must use the attached form below. Thank you very much for your time. Best Wishes, Jeff Martin This information will always be held in the strictest confidence. Credit Card: Visa Mastercard Discover Card #:______________________________________ Expiration Date:__________________ Name on Card:________________________________ Please indicate amount $__________ ($19.95) or (59.95) SIGNATURE:x________________________ DATE:x__________________ Copyright 1996, Jeff Martin. All rights reserved. From: Franz Subject: Re: Your Email Privacy Has Been Compromised Date: 1996/11/15 Message-ID: <328D51FA.75D80751@azstarnet.com>#1/1 references: <199611152025.OAA27376@mail.utexas.edu> newsgroups: rec.games.corewar > Then I read a little further... > > >This information will always be held in the strictest confidence. of course it will .. nobody except him will use em :) > > Credit Card: Visa Mastercard Discover > > > > Card #:______________________________________ > > > > Expiration Date:__________________ > > > > Name on Card:________________________________ > > > > Please indicate amount $__________ ($19.95) or (59.95) > > HAHAHAHaHaHahaha... Oh god. That cracked me up!! I literally > laughed out loud when I saw that he wanted us to mail credit card numbers > to a PO Box... :) well you gotta give him credit .... hmmm wrong wording there :) he came up with a new way of catchiong peoples attention ... most of the scams you can tell by the title that they are scams Franz From: iltzu@sci.fi (Ilmari Karonen) Subject: Re: Java simulator Date: 1996/11/15 Message-ID: <15199601.Amiga@sci.fi>#1/1 newsgroups: rec.games.corewar Franz (franz@azstarnet.com) wrote: > > > > Does anyone know of a java implementation of the pMARS simulator? > > > > thanks in advance. > > > > > > It is my opinion that ant java impl. would be too slow to use, even with > > > no graphical display. java is interpreted, a bytecode is compiled, then > > > interpreted into code your computer can use, meaning slow performance. > > > > Ah, but if you first compile the redcode into Java bytecodes... > > (ducks quickly) > > yup that would be fast .. but wouldn't work ... would it .... since it > woud not work acording to redcode rules ... Yes, it wouldn't, since nearly all redcode programs self-modify, and that's a pain in the ass to implement with a compiler. But I wouldn't think a Java MARS is out of question, especially a graphical one, since there's ususally a delay anyway to let our slow brains catch up with the changing graphics. -- Ilmari Karonen From: Bjoern Guenzel Subject: Re: intelligent robots ... Date: 1996/11/15 Message-ID: <328C841B.167E@ucl.ac.uk>#1/1 references: <847397595.3012.1@ogham.demon.co.uk> newsgroups: rec.games.corewar,sci.philosophy.meta,sci.philosophy.tech,comp.ai.alife,alt.philosophy.objectivism This thread reminds me of another problem. I am thinking for example about an automated contest (like Corewar), where only machines are allowed to submit (for example the offspring of genetic algorithms). Now, if it's for example all done via email, how can you be sure that it is really a machine? That requires the opposite of a turing test... Of course it is simple to think of tests that only computers can pass, like some ultra-fast calculations, but how can you be sure it is not a human using a Computer just for this partial task? Bjoern From: Scott Manley Subject: Re: Java simulator Date: 1996/11/16 Message-ID: <9611161632.AA32041@alpha3.arm.ac.uk>#1/1 newsgroups: rec.games.corewar I was half interested in hacking linux to run redcode directly, adding it to the executable types and including an interpreter in the kernel. Add a couple of entries to the proc filesystem to output core data and changes and generally waste a lot of time for a joke........ > in linux nowdays you can just execute the applet as if it was an > executable ... ok ok .. so in the old days you had to write appletviewer > :) now it's nicer ... -- Scott Manley (aka Szyzyg) /------ _@/ Mail -----\ ___ _ _ __ __ _ | Armagh Observatory | / __| __ ___| |_| |_ | \/ |__ _ _ _ | |___ _ _ | Armagh | \__ \/ _/ _ \ _| _| | |\/| / _` | ' \| / -_) || | | Northern Ireland | |___/\__\___/\__|\__| |_| |_\__,_|_||_|_\___|\_, | | BT61 9DG. | http://star.arm.ac.uk/~spm/welcome.html |__/ \=====================/ From: Franz Subject: baby hill Date: 1996/11/16 Message-ID: <328D6B1B.16E6491C@azstarnet.com>#1/1 newsgroups: rec.games.corewar let's all play the baby hill .... i seem to have around 11 warriors on there right now, since it's not yet full even the crappy ones stay on :) .... and i have some crappy ones on there :) e.g. Fast, TD, tIMPFAC(which is kewl strategy for the multiwarrior hill, but sux on the one on one type of battle ... :) Franz From: Franz Subject: Re: Java simulator Date: 1996/11/16 Message-ID: <328D69A7.1DAA6721@azstarnet.com>#1/1 references: <961116032706_102741.2022_GHT113-2@CompuServe.COM> newsgroups: rec.games.corewar > I am mystified as to what would a Java simulator be for? > > After all, any computer that runs Netscape or Internet Explorer can > certainly run pMARS... yup but would you like seamless windows ... for os/2 you can choose the X for windowed pMARS but with java you can run it seamless ... second why use wait for a netscape to load just run run an applet ... and win95/NT don't have Xfree so you can run the 16 bit dos version ... or you could run it in a java window ... there must be jdk for windows isn't there???? ... just pull that install ... and go run some java stuff ... in linux nowdays you can just execute the applet as if it was an executable ... ok ok .. so in the old days you had to write appletviewer :) now it's nicer ... Franz From: Justin Kao <102741.2022@CompuServe.COM> Subject: Re: Java simulator Date: 1996/11/16 Message-ID: <961116032706_102741.2022_GHT113-2@CompuServe.COM>#1/1 newsgroups: rec.games.corewar I am mystified as to what would a Java simulator be for? After all, any computer that runs Netscape or Internet Explorer can certainly run pMARS... Justin From: fisher@math.psu.edu (Travis W Fisher) Subject: Re: Tierra, Redcode, toleration and mutation Date: 1996/11/16 Message-ID: <56j8ll$4l9@dodgson.math.psu.edu>#1/1 references: <840378757.19580.0@ogham.demon.co.uk> <321EE1F7.42C4@mail.tds.net> <32247905.5557641@news.demon.co.uk> <503oeo$2uc@mercury.hgmp.mrc.ac.uk> newsgroups: comp.ai.alife,rec.games.corewar It seems to me that one of the biggest problems with a Tierra or Redcode type environment is the sheer linearity of the system. The problem is that of interaction. In order to get things like exchanges of information taking place, neighboring organisms need to be able to interact. But in a strictly linear environment, an organism has at most two neighbors. Even worse for evolution are setups such as the corewars competition environment, where a warrior has complete access to the entire world, there is no meaningful concept of near and far. I think the problem may be a fundamental problem of trying to have the memory serve as the environment. ... I don't know, its a problem that bears some thought. --Travis Fisher tfisher@math.unl.edu From: jwilkinson@mail.utexas.edu Subject: Re: Your Email Privacy Has Been Compromised Date: 1996/11/16 Message-ID: <199611152025.OAA27376@mail.utexas.edu>#1/1 newsgroups: rec.games.corewar >This Message Contains Important Information About Violations >of Your On-Line Privacy. Ok... this part got me hooked. "Wow," I'm thinking, this is NOT one of those hyper-moronic pyramid scams! This is something new! Then I read a little further... >This information will always be held in the strictest confidence. > > Credit Card: Visa Mastercard Discover > > Card #:______________________________________ > > Expiration Date:__________________ > > Name on Card:________________________________ > > Please indicate amount $__________ ($19.95) or (59.95) HAHAHAHaHaHahaha... Oh god. That cracked me up!! I literally laughed out loud when I saw that he wanted us to mail credit card numbers to a PO Box... :) From: Eli Kane Subject: Re: baby hill Date: 1996/11/17 Message-ID: <328F6C8E.4321@zianet.com>#1/1 references: <328D6B1B.16E6491C@azstarnet.com> newsgroups: rec.games.corewar > > let's all play the baby hill .... i seem to have around 11 warriors on > there right now, since it's not yet full even the crappy ones stay on Where is the baby hill and what are it's parameters? Thanks! Eli =B-) From: Franz Subject: Re: Tierra, Redcode, toleration and mutation Date: 1996/11/18 Message-ID: #1/1 references: <32247905.5557641@news.demon.co.uk> <503oeo$2uc@mercury.hgmp.mrc.ac.uk> <56j8ll$4l9@dodgson.math.psu.edu> <472EBE33FF%mouse@cheesey.demon.co.uk> newsgroups: comp.ai.alife,rec.games.corewar >The problem is trying to display a one dimensional environment (the >Tierra soup) in two dimensions. Simply displaying the block of memory as >a bitmap array is misleading as organisms can seem to be adjacent when >actually they are not. actually long long time ago there was a discussion about 2 or 3 dimensional redcode Franz From: Franz Subject: Re: baby hill Date: 1996/11/18 Message-ID: #1/1 references: <328D6B1B.16E6491C@azstarnet.com> <328F6C8E.4321@zianet.com> newsgroups: rec.games.corewar >> let's all play the baby hill .... i seem to have around 11 warriors on >> there right now, since it's not yet full even the crappy ones stay on > > >Where is the baby hill and what are it's parameters? Thanks! at pizza ;redcode-94x coresize: 800 max length: 20 distance: 20 processes: 800 cycles: 8000 kewl ... huh ... Franz From: wolak Subject: Re: Java simulator Date: 1996/11/18 Message-ID: <32910BB6.103E@wolak.com>#1/1 references: <961116032706_102741.2022_GHT113-2@CompuServe.COM> <328D69A7.1DAA6721@azstarnet.com> newsgroups: rec.games.corewar > I am mystified as to what would a Java simulator be for? > > After all, any computer that runs Netscape or Internet Explorer can > certainly run pMARS... Actually, the reason I was curious was because I am a Java programmer who likes corewar and was wondering if I could just see it. :-) From: mouse@cheesey.demon.co.uk (Rik Griffin) Subject: Re: Tierra, Redcode, toleration and mutation Date: 1996/11/18 Message-ID: <472EBE33FF%mouse@cheesey.demon.co.uk>#1/1 references: <32247905.5557641@news.demon.co.uk> <503oeo$2uc@mercury.hgmp.mrc.ac.uk> <56j8ll$4l9@dodgson.math.psu.edu> newsgroups: comp.ai.alife,rec.games.corewar In message <56j8ll$4l9@dodgson.math.psu.edu> Travis W Fisher wrote: > It seems to me that one of the biggest problems with a Tierra or > Redcode type environment is the sheer linearity of the system. I have been thinking about the same problem from the other direction recently, as I am doing a port of Tierra, and am trying to make a graphical frontend, that is both meaningful and visually pleasing. The problem is trying to display a one dimensional environment (the Tierra soup) in two dimensions. Simply displaying the block of memory as a bitmap array is misleading as organisms can seem to be adjacent when actually they are not. Has anyone got any thoughts on this that they would like to share? Or perhaps someone has done this type of thing already, and has code I could look at? Any advice gratefully listened to :) Rik -- Top 100 reasons why Captain Kirk is better than Captain Picard ... 43. Picard flunked his entrance exams to Starfleet. From: bushbo@xtdl.com (Brian O. Bush) Subject: Tierra and redcode Date: 1996/11/19 Message-ID: #1/1 newsgroups: rec.games.corewar from the comp.ai.alife group: > actually long long time ago there was a discussion about 2 or 3 > dimensional redcode speaking of 2D instruction sets, how would one go about implementing a 2D instruction. Take for example MOV #4, $4 How would one interpret this in a 2D environment? There are eight possible directions to move around any one cell. I am trying to basically implement a 2D corewars system (evolutionary, of course), in a similar vein to VENUS. thanks, Brian -- Follow the Black Valley Trail of Death, Into the Beautiful Sunshine. http://www2.xtdl.com/~bushbo From: Franz Subject: Re: Tierra, Redcode, toleration and mutation Date: 1996/11/19 Message-ID: <32927FF5.96FAF2@azstarnet.com>#1/1 references: <32247905.5557641@news.demon.co.uk> <503oeo$2uc@mercury.hgmp.mrc.ac.uk> <56j8ll$4l9@dodgson.math.psu.edu> <472EBE33FF%mouse@cheesey.demon.co.uk> newsgroups: comp.ai.alife,rec.games.corewar > speaking of 2D instruction sets, how would one go about implementing a > 2D instruction. Take for example MOV #4, $4 > How would one interpret this in a 2D environment? There are eight possible > directions to move around any one cell. I am trying to basically implement > a 2D corewars system (evolutionary, of course), in a similar vein to > VENUS. well you would specify the direction of the addressing in the modifier, the execution direction could also be changed ... OR you could have adresses with two numbers, plus a special instruction to change the directionof the instruction flow ... I like the idea of a direction much better as a warrior can't just sit around since it can't see the whole core .... if the core qould be 100 by a hundered, one way would be to copy itself to each row and bomb/scan ... It would definately require moving warriors ... actually no... you could move a pointer up and down and address it indirectly ... the pointer would "bend" the call so that you could bomb scan other locations in angle, kind of like using a mirror ... this would be slower then conventional scanning in 1D but you could do it much faster then copying yourself ... Franz From: bushbo@xtdl.com (Brian O. Bush) Subject: Re: Tierra, Redcode, toleration and mutation Date: 1996/11/19 Message-ID: #1/1 references: <32247905.5557641@news.demon.co.uk> <503oeo$2uc@mercury.hgmp.mrc.ac.uk> <56j8ll$4l9@dodgson.math.psu.edu> <472EBE33FF%mouse@cheesey.demon.co.uk> newsgroups: comp.ai.alife,rec.games.corewar In article , Franz wrote: > actually long long time ago there was a discussion about 2 or 3 > dimensional redcode speaking of 2D instruction sets, how would one go about implementing a 2D instruction. Take for example MOV #4, $4 How would one interpret this in a 2D environment? There are eight possible directions to move around any one cell. I am trying to basically implement a 2D corewars system (evolutionary, of course), in a similar vein to VENUS. thanks, Brian -- Follow the Black Valley Trail of Death, Into the Beautiful Sunshine. http://www2.xtdl.com/~bushbo From: iltzu@sci.fi (Ilmari Karonen) Subject: Re: Tierra, Redcode, toleration and mutation Date: 1996/11/19 Message-ID: <19199603.Amiga@sci.fi>#1/1 newsgroups: rec.games.corewar Rik Griffin (mouse@cheesey.demon.co.uk) wrote: > In message <56j8ll$4l9@dodgson.math.psu.edu> Travis W Fisher wrote: > > It seems to me that one of the biggest problems with a Tierra or > > Redcode type environment is the sheer linearity of the system. > > The problem is trying to display a one dimensional environment (the > Tierra soup) in two dimensions. Simply displaying the block of memory as > a bitmap array is misleading as organisms can seem to be adjacent when > actually they are not. > > Has anyone got any thoughts on this that they would like to share? Or > perhaps someone has done this type of thing already, and has code I > could look at? Well, the natural way to represent core would be a circle, but that's not exactly the most efficient way to use the display area. =) I don't think there's any other efficient way to represent 1-dimensional space on a 2d display than just letting it wrap around. But if you want to have a bit more intuitive display than just stuffing it all together, I'd suggest leaving more space between the lines than between pixels on a single line. That'd reduce the false illusion of closeness, like #####::::::##::::::::::::#:#######:::###:::::###:## ######::#:::#:::::::###:###::::::::::::##:::::::### ::####::#:::###:::::::::::#:#######::#:::::::####:: looks better than #####::::::##::::::::::::#:#######:::###:::::###:## ######::#:::#:::::::###:###::::::::::::##:::::::### ::####::#:::###:::::::::::#:#######::#:::::::####:: -- Ilmari Karonen From: bremermr@cartoon.ecn.purdue.edu (Myer R. Bremer) Subject: no core warrior this week Date: 1996/11/19 Message-ID: <56sq42$nt3@mozo.cc.purdue.edu>#1/1 newsgroups: rec.games.corewar greetings. i'm sorry but there will be no core warrior this week. i could give you excuses why i'm not living up to my CW civic duty, but i suppose that would be futile. anyways. i'll catch you all next week. m r bremer From: Franz Subject: Re: Tierra, Redcode, toleration and mutation Date: 1996/11/19 Message-ID: <32920139.1D2F9ECD@azstarnet.com>#1/1 references: <840378757.19580.0@ogham.demon.co.uk> <321EE1F7.42C4@mail.tds.net> <32247905.5557641@news.demon.co.uk> <503oeo$2uc@mercury.hgmp.mrc.ac.uk> <56j8ll$4l9@dodgson.math.psu.edu> <3293ba62.4925728@news.demon.co.uk> newsgroups: comp.ai.alife,rec.games.corewar > From a Core Wars point of view, the 2D environment may be quite fun to > program in. 2D code gives lots of scope for interesting loops and > re-use of the same line of code. yup ... but i think it would be quite different from corewars as we know it now ... the code would run straight unless a turn instruction would be given or maybe a direction indicator ... the code can run in 8 directions ... the programm itself could be written in a spreadsheet like format ... commas separating different cells .. that way you could write the program in a spreadsheet and save it csv ... some thing like addresses would run down and accross DIR 1 ,NOP 0 0 ,start MOV 10 @1, (dies here) DIR 3 ,ADD #10 1 ,DIR 5 #20 hmm well maybe the addressing would have to be done in 2d too ... this is a very bad piece of coding anyway :) .... if there is a direction modifier something like [direction 1-8] .... then teh default would be the current direction .... 432 5 1 678 then the jumps would be used for direction changes DAT >1,>2 ,MOV [5]1 @[8]1 ,start MOV [5]2 @[7]1, JMP [6]1 JMP [2]1 ,ADD #10 [1]1 ,jmp [5]1 #20 would be the new code .... normally if no direction would bespecified then the address would be the address at the direction of the current execution ... Franz From: Franz Subject: Re: Java simulator Date: 1996/11/19 Message-ID: <3291FE20.A79D754@azstarnet.com>#1/1 references: <961116032706_102741.2022_GHT113-2@CompuServe.COM> <328D69A7.1DAA6721@azstarnet.com> <32910BB6.103E@wolak.com> newsgroups: rec.games.corewar > > I am mystified as to what would a Java simulator be for? > > > > After all, any computer that runs Netscape or Internet Explorer can > > certainly run pMARS... > Actually, the reason I was curious was because I am a Java programmer > who likes corewar and was wondering if I could just see it. :-) well yer the java programmer ... i think it would be great ... you would instantly have a windows/os2/... version which runs seamless Franz From: francis.irving@vegauk.co.uk (Francis Irving) Subject: Re: Tierra, Redcode, toleration and mutation Date: 1996/11/19 Message-ID: <3293ba62.4925728@news.demon.co.uk>#1/1 references: <840378757.19580.0@ogham.demon.co.uk> <321EE1F7.42C4@mail.tds.net> <32247905.5557641@news.demon.co.uk> <503oeo$2uc@mercury.hgmp.mrc.ac.uk> <56j8ll$4l9@dodgson.math.psu.edu> newsgroups: comp.ai.alife,rec.games.corewar On 16 Nov 1996 02:24:53 GMT, fisher@math.psu.edu (Travis W Fisher) wrote: >It seems to me that one of the biggest problems with a Tierra or Redcode type > environment is the sheer linearity of the system. The problem is that of >interaction. In order to get things like exchanges of information taking place, >neighboring organisms need to be able to interact. But in a strictly linear >environment, an organism has at most two neighbors. Even worse for evolution >are setups such as the corewars competition environment, where a warrior has >complete access to the entire world, there is no meaningful concept of near and >far. I posted a couple of months ago on this subject, about Carlo Maley's work. He wrote a thesis about a 2-dimensional version of Tierra. Concepts of near and far were critical - organisms could reproduce at different distances, pushing aside organisms which are already there. It was to examine how method of reproduction effects parasitism. It seems to be a useful way to go to increase interaction, and make the environment more natural and rich. From a Core Wars point of view, the 2D environment may be quite fun to program in. 2D code gives lots of scope for interesting loops and re-use of the same line of code. See http://xp8.dejanews.com/getdoc.xp?recnum=11068275&server=dnserver.db96q3&CONTEXT=848411445.26550&hitnum=0 for my original post, and a summary of how 2D code works. > >I think the problem may be a fundamental problem of trying to have the memory >serve as the environment. ... I don't know, its a problem that bears some >thought. > >--Travis Fisher >tfisher@math.unl.edu By that, do you mean that the organisms instructions are made of exactly the same "stuff" as the environment? I think that this is a separate question: Carlo Maley's solution retained this property - it is the same as Tierra in this respect. An alternative 2D solution, which doesn't retain this property is Avida. It has a grid of cells, each with a separate CPU running within them. Avida is at http://www.krl.caltech.edu/~charles/avida/manual/ Francis. From: rossd@arbroath.win-uk.net (Derek Ross) Subject: Re: Tierra, Redcode, toleration and mutation Date: 1996/11/20 Message-ID: <557@arbroath.win-uk.net>#1/1 references: newsgroups: comp.ai.alife,rec.games.corewar In article <32927FF5.96FAF2@azstarnet.com>, Franz (franz@azstarnet.com) writes: {In answer to someone else who wrote} >> speaking of 2D instruction sets, how would one go about implementing a >> 2D instruction. Take for example MOV #4, $4 >> How would one interpret this in a 2D environment? There are eight possible >> directions to move around any one cell. I am trying to basically implement >> a 2D corewars system (evolutionary, of course), in a similar vein to >> VENUS. > >well you would specify the direction of the addressing in the modifier, >the execution direction could also be changed ... > >OR > >you could have adresses with two numbers, plus a special instruction to >change the directionof the instruction flow ... > Why not have a look at the corelife.zip file at ftp.csua.berkeley.edu in the /pub/corewar directory or one of its sub directories. This is basically a 2D implementation of Core War or at least something very like Core War. It may well be of interest to anyone trying to implement something similar for gaming or machine-life purposes. Cheers Derek 31 Carnegie Street Telephone +44 (0) 1241-877190 Arbroath, Angus, UK DD11 1TX From: Morence81@aol.com Subject: Happy Holidays!!! Date: 1996/11/20 Message-ID: <961120111442_1117059440@emout03.mail.aol.com>#1/1 newsgroups: rec.games.corewar --------------------- Forwarded message: Subj: For the Holidays... Date: 96-11-20 09:26:40 EST From: Morence 81 To: Morence 81 Need a special gift to give your family, loved ones, or your friends from the internet for the Holidays? You can now send them a personalized mouse pad printed by Morence Productions. Simply by mailing a picture of any size to us, we can scan it, using high quality full color scans, and print them perfectly onto the mouse pad. There are absolutely no restrictions on the photos you can send. We guarantee that we can scan it and print it onto the mouse pad for you. Send in a picture of your girlfriend, boyfriend, favorite actor, singer, scenery, movie title, computer game, family portraits..... the possibilities are endless. Want to add words to your picture on the mouse pad? No problem!! Professional computer artists will renderize fascinating 3D words onto the picture to give it a great effect. Please take advantage of our great Holiday prices: 1 personalized mouse pad for just $15.00. Each mouse pad you order after that is only $10.00!!! No limit on the number of mouse pads you order. If you are dissatisfied with the mouse pad(s) after you receive them, simply send them back for a complete refund, no questions asked. Here is all you have to do to get your personalized mouse pads: Send in your pictures that you want to be scanned to us (if there are small multiple pictures that you want to all be printed onto just 1 mouse pad, please explain in your order.) However you explain in your order how you want it printed, it will be done. Remember that the pictures can be any size, they will automatically be resized to print perfectly on the mouse pad. There is no extra cost to get words printed on your mouse pad. They will be placed over the picture. Just let us know in the order what you would like it to say if anything. There is a shipping and handling fee of $1.00 for each mouse pad. The pictures are returned with your purchase. Please make checks or money orders to: John Morence. John Morence c/o Morence Productions 2141 Glendale Galleria #191 Glendale, CA 91210 If you have any questions, please email Or feel free to write to our address. From: jklewis@stimpy.us.itd.umich.edu (John K. Lewis) Subject: Re: Tierra, Redcode, toleration and mutation Date: 1996/11/20 Message-ID: <56vada$a2k@lastactionhero.rs.itd.umich.edu>#1/1 references: <32247905.5557641@news.demon.co.uk> <503oeo$2uc@mercury.hgmp.mrc.ac.uk> <56j8ll$4l9@dodgson.math.psu.edu> <472EBE33FF%mouse@cheesey.demon.co.uk> newsgroups: comp.ai.alife,rec.games.corewar Rik Griffin (mouse@cheesey.demon.co.uk) wrote: : Has anyone got any thoughts on this that they would like to share? Or : perhaps someone has done this type of thing already, and has code I : could look at? Check out the CWBH (Corewar Betting hill). They have a nice solution to the problem. (They use a circular display to show how the enviroment works. ) John - -- < john k. lewis > < jklewis@umich.edu > < 77325 > < sig.virus 1.5 > From: Franz Subject: Re: Tierra, Redcode, toleration and mutation Date: 1996/11/21 Message-ID: #1/1 references: <557@arbroath.win-uk.net> newsgroups: comp.ai.alife,rec.games.corewar > Why not have a look at the corelife.zip file at > ftp.csua.berkeley.edu in the /pub/corewar directory or one of > its sub directories. This is basically a 2D implementation of Core > War or at least something very like Core War. It may well be of > interest to anyone trying to implement something similar for > gaming or machine-life purposes. I think I pulled it a while ago and realized it's a dos executable and was too lazy to boot dos ... and I still haven't installed dosemu :) Franz From: Bjoern Guenzel Subject: Re: Java simulator Date: 1996/11/21 Message-ID: <32946B24.15FB@ucl.ac.uk>#1/1 references: <961116032706_102741.2022_GHT113-2@CompuServe.COM> newsgroups: rec.games.corewar Justin Kao wrote: > > I am mystified as to what would a Java simulator be for? > > After all, any computer that runs Netscape or Internet Explorer can > certainly run pMARS... Wouldn't it be the final kick for your homepage to have some warriors fighting in the background? > > Justin Bjoern From: Beppe Bezzi Subject: Tournament: final result was a tie Date: 1996/11/21 Message-ID: #1/1 newsgroups: rec.games.corewar Boys you tied, 200 ties after 200 rounds, and BTW 500 ties after 500. I don't think it's fair not to have a winner, so rematch next week, using limited processes rules where it's a bit more difficult to tie. Rematch deadline 27-11-96 20:00 or as soon as I get both submissions. Rules are the same of round 2: rounds: 200 coresize: 8000 max. processes: 8 duration: after 80,000 cycles, a tie is declared. max. entry length: 200 minimum distance: 200 instruction set: extended ICWS '94 Draft Enjoy -Beppe From: Jim Lavery Subject: 3D Date: 1996/11/21 Message-ID: <32955099.62FF@aimnet.com>#1/1 references: <32247905.5557641@news.demon.co.uk> <503oeo$2uc@mercury.hgmp.mrc.ac.uk> <56j8ll$4l9@dodgson.math.psu.edu> <472EBE33FF%mouse@cheesey.demon.co.uk> <32927FF5.96FAF2@azstarnet.com> newsgroups: comp.ai.alife,rec.games.corewar Hi all I am new to this group, but I have been reading on the subject and related for a while. I was thinking last night about a three dimension space. Given modern machines with 32Meg plus perhaps swap space 3D is tractable. at 100X100X100 that is "only" 1,000,000 actually 128 (or 256) would be beter since address computations are quicker I would be willing to lend a hand at doing something to advance the art. My background is math/physics. I have been a programmer since '75. What is perhaps most useful is that I have written many virtual machines, program in assembly, and I have been writing low level SVGA/video drivers. Thinking about 128X128X128, that is 4meg slots. maybe allow two bytes per slot. 8 meg ram is not big deal. 128 doesn't sound like a big dimension, at least to me. However, consider that an organism that is 4x4x4 contains 64 units. Anyway, if I am not too far afield, perhaps, someone(s) would be able to shortcut me to good starting material, and or collaborate. best regards From: sd@ecst.csuchico.edu (Miles Tagoe) Subject: Pizza downtime Date: 1996/11/21 Message-ID: <572ipm$l9t@charnel.ecst.csuchico.edu>#1/1 newsgroups: rec.games.corewar Pizza's mail server (among other machines) will be down for maintenance starting Friday night, the 22nd, through wednesday afternoon, the 27th. Hopefully this will alleviate some of the problems we've been having. I will try to restart the scripts wednesday night, but I may not be able to until friday morning, the 29th. We apologize for any inconvenience. Thos -- ~~~~~~~~~~~~~~~~~~~~~~~~~~~~\/~~\ /~~~\/\ / \ \ / /~\ /~~~~~YY~~~\\ /~~ Thomas "Thos" Davies V \/\ /\ V / V |\/\/| V\ / sd@ecst.csuchico.edu V \ / | / | V Internet Pizza Server \/ | /\ | Member C.W.M. Corewar King of the Hill information |/oo\| CAVE ON Since 1987 http://www.ecst.csuchico.edu/~pizza/koth/ |/\| From: Franz Subject: Re: Java simulator Date: 1996/11/21 Message-ID: #1/1 references: <961116032706_102741.2022_GHT113-2@CompuServe.COM> <32946B24.15FB@ucl.ac.uk> newsgroups: rec.games.corewar > > I am mystified as to what would a Java simulator be for? > > > > After all, any computer that runs Netscape or Internet Explorer can > > certainly run pMARS... > > Wouldn't it be the final kick for your homepage to have some warriors > fighting in the background? this gives an idea to even a better thing ... how about adding such a thing to the plannar archive and you could just make your warriors fight those on plannar without pulling em in and doing all sorts of stuff ... yeah it would be slow but it might be kewl ... I finaly got the java binary support working on 2.1.11 linux, my modules are still broke though ... the price for being on the bleeding edge :) (well the only adventage is i now don't have to type appletviewer, but can run the html file as an executable :) so it would be kewl to also have a java version just for the kick of it ... btw ... has anybody tried the java on os/2 it's supposed to be native too ... though i don't see the big problem with that ... microsoft is late again ... Franz From: Franz Subject: Re: Tournament: final result was a tie Date: 1996/11/21 Message-ID: #1/1 references: newsgroups: rec.games.corewar > Boys you tied, 200 ties after 200 rounds, and BTW 500 ties after 500. hmmm lemme guess ... imps ???? > I don't think it's fair not to have a winner, so rematch next week, using > limited processes rules where it's a bit more difficult to tie. ahhhh .... i was hoping to see all the source code .... another week in the dark ... Franz From: Fowle Family Subject: Re: about Easy cash!! posters Date: 1996/11/22 Message-ID: <5755c6$ju3@boursy.news.erols.com>#1/1 references: <328fb69e.10306497@news.uquebec.ca> <574o7u$sfi@lyra.csx.cam.ac.uk> <32962064.5409@roanoke.infi.net> newsgroups: rec.games.computer.quake.editing,rec.games.computer.quake.playing,rec.games.computer.quake.servers,rec.games.computer.stars,rec.games.computer.xpilot,rec.games.design,rec.games.corewar,rec.games.go,rec.games.mecha,rec.games.misc,rec.games.mud.lp,rec.games.mud.tiny stop posting this shit all over the internet. We dont want to hear about this crap! No one gives a shit. Dont post this trash on the stars! newsgroup or Ill kick yer ass (can you say SPAM) From: pat rhodes Subject: Re: about Easy cash!! posters Date: 1996/11/22 Message-ID: <32962064.5409@roanoke.infi.net>#1/1 references: <328fb69e.10306497@news.uquebec.ca> <574o7u$sfi@lyra.csx.cam.ac.uk> newsgroups: rec.games.computer.quake.editing,rec.games.computer.quake.playing,rec.games.computer.quake.servers,rec.games.computer.stars,rec.games.computer.xpilot,rec.games.design,rec.games.corewar,rec.games.go,rec.games.mecha,rec.games.misc,rec.games.mud.lp,rec.games.mud.tiny Y. Tremblay wrote: > > Not my idea but I thought it could be phone: > Take the following names: (from a previous easy money post, any other > ones should do) > > 1) Stephanie Newsome > 3037 Crystal Springs #914 > Beyford, Tx. 76021 > > 2) Andres Linares > 7801, NW. 37th St. EPS#F-1365 > Miami, Fl. 33166 > > 3) Cuong Ho > 35-15 149th Place > Flushing, NY 11354 > > 4) Scottie Day > 100 Mill Pond Rd. #9 > Colchester, Vermont 05446 > > 5) Nancy Champagne > 630 ave. Duplessis > St-Etienne-des-Gres, PQ, Canada > G0X 2P0 > > Look in you junk mail for something that annoys you. Music club, book > club, "free samples but then you have to pay $50 afterward and we keep > hassling you". any other junk you feel like. > > Register them! > > I mean, if they can send us junk e-mail, they deserve to receive junk > mail. > > -- > Y. TremblayWhy waste your time! From: yt1@eng.cam.ac.uk (Y. Tremblay) Subject: about Easy cash!! posters Date: 1996/11/22 Message-ID: <574o7u$sfi@lyra.csx.cam.ac.uk>#1/1 references: <328fb69e.10306497@news.uquebec.ca> newsgroups: rec.games.computer.quake.editing,rec.games.computer.quake.playing,rec.games.computer.quake.servers,rec.games.computer.stars,rec.games.computer.xpilot,rec.games.design,rec.games.corewar,rec.games.go,rec.games.mecha,rec.games.misc,rec.games.mud.lp,rec.games.mud.tiny Not my idea but I thought it could be phone: Take the following names: (from a previous easy money post, any other ones should do) 1) Stephanie Newsome 3037 Crystal Springs #914 Beyford, Tx. 76021 2) Andres Linares 7801, NW. 37th St. EPS#F-1365 Miami, Fl. 33166 3) Cuong Ho 35-15 149th Place Flushing, NY 11354 4) Scottie Day 100 Mill Pond Rd. #9 Colchester, Vermont 05446 5) Nancy Champagne 630 ave. Duplessis St-Etienne-des-Gres, PQ, Canada G0X 2P0 Look in you junk mail for something that annoys you. Music club, book club, "free samples but then you have to pay $50 afterward and we keep hassling you". any other junk you feel like. Register them! I mean, if they can send us junk e-mail, they deserve to receive junk mail. -- Y. Tremblay From: Philip Kendall Subject: Re: Tournament: final result was a tie Date: 1996/11/23 Message-ID: <3296CE9C.1931@cam.ac.uk>#1/1 references: newsgroups: rec.games.corewar Franz wrote: > > > Boys you tied, 200 ties after 200 rounds, and BTW 500 ties after 500. > > hmmm lemme guess ... imps ???? > No, even better than than - two Die Hards :-) Phil -- / Philip Kendall (pak21@cam.ac.uk pak21@kendalls.demon.co.uk) \ | http://www.geocities.com/SiliconValley/Park/5427/spectrum.htm | | CSS FAQ: http://users.ox.ac.uk/~uzdm0006/Damien/speccy/faq.html | \ Looking for something?: http://drson.vse.cz/snapsearch/ / From: aid@ultragrafix.com Subject: 4 Internet Addresses Date: 1996/11/23 Message-ID: <19961122003705.bm8395.in@yoda.globaltech2000.com>#1/1 newsgroups: rec.games.corewar I found 4 Internet sites I think you'll enjoy: www.internet-aid.com www.home-email.com www.office-email.com www.theinternetaidclub.com What a great Holiday Season gift. E-mail for the children. The www.home-email.com people know how the children are always getting e-mail and now you can give them their own e-mail address for only $.64 per month. Now surprise everyone. Put your beloved children, precious pet, loving Mom & Dad, or the Grandparent's picture into your letters. Make them the wall paper on your computer, or design a special holiday card that you send to everyone. Send us your pictures and avoid the high cost of the local copy shop. We will scan your pictures into the computer then return them along with a PC disk containing your pictures ready to put into your computer. Simply send your pictures, a SASE (Self Addressed Stamped Envelope), and your check for $3.50 per picture to: Internet-Aid 4335 Bradfordville Rd Building B Tallahassee, FL 32308 Make your check payable to Internet-Aid Corp and be sure to put YOUR address in the To: and From: areas of the envelope. A $1.28 (4 32 cent stamps) postage will ensure the return of your pictures and disk(s). If you want to put your own site on the Interent the folks at www.interent-aid.com will give you personal web space for $5.00 per month. If you own your own business, or work for a company that needs web space, the company can get its own domain name hosted starting at $25.00 per month. Internet-Aid can design, write, and host your Internet web pages; after all, they provide a complete Internet management service. If you run a business your customers need to contact your employs; however, providing e-mail service for all your employs can be expensive. Www.office-email.com provides e-mail services to companies for only $.64 per month per employee. If you've been looking for an Internet Club check our www.theingernetaidclub.com Take a few minutes this evening and look at these 4 sites. You'll be surprised at how easily you can accomplish everything. Thomas W. Clark Internet-Aid Corp. (904) 894-3028 ************************************************************************ * Please Note - All remove requests will be honored and enforced by our postmaster. If you would like to be removed from all future mailings reply with "remove" in the subject field. Thank you. ************************************************************************ ------------------------------------------------------------------------ *** Note - If you are interested in advertising your product or service via email, please call Global Tech 2000 at (817) 472-9516. From: gooferx@satlink.com (Goofer) Subject: Re: intelligent robots ... Date: 1996/11/24 Message-ID: <57b6dm$jbg@un3.satlink.com>#1/1 references: <847397595.3012.1@ogham.demon.co.uk> <328C841B.167E@ucl.ac.uk> newsgroups: rec.games.corewar,sci.philosophy.meta,sci.philosophy.tech,comp.ai.alife,alt.philosophy.objectivism Bjoern Guenzel wrote: >This thread reminds me of another problem. I am thinking for example >about an automated contest (like Corewar), where only machines are >allowed to submit (for example the offspring of genetic algorithms). >Now, if it's for example all done via email, how can you be sure that it >is really a machine? That requires the opposite of a turing test... Of >course it is simple to think of tests that only computers can pass, like >some ultra-fast calculations, but how can you be sure it is not a human >using a Computer just for this partial task? Ask him:........Do you remember a turtle????? Long life to blade Runner!!!! hehehehe -------------------------------- Carlos Cardozo (Goofer Mimo) Gooferx@satlink.com Mendoza Argentina -------------------------------- From: in@earthstar.com Subject: Freedom Date: 1996/11/24 Message-ID: <199611241328.IAA29505@valhalla.stormking.com>#1/1 newsgroups: rec.games.corewar Please pardon the intrusion. If you find this info offensive, hit "reply", and type "remove". Thank you. --------------------------------------------------------------- Part of the American Dream is owning your own business, working from your home office, being your own boss, writing your own paycheck, getting paid what you're worth and having a flexible work schedule. In other words: FREEDOM With so many different opportunities out there today, which do you choose, where do you begin? Take the "mutual fund" approach to home-based business and develop multiple (20 or more) income streams with one single, focused, leveraged effort! START YOUR OWN BUSINESS! CONTROL YOUR OWN DESTINY! EARN BACK YOUR FREEDOM! WORK SMART, NOT HARD! BE A PART OF THE WINNINGEST TEAM OF ENTREPRENEURS EVER ASSEMBLED, EVER! YOU ARE AT THE RIGHT PLACE AT THE RIGHT TIME! Call 1-716-387-8688 anytime for a brief recorded overview. and/or send an email to our autoresponder: details@alliedsystems.com for more information. You'll be glad you did! Note: We are also giving away $1000 in FREE Long Distance Calls to all new start-ups! Write to: details@alliedsystems.com From: Franz Subject: Re: MARS Date: 1996/11/25 Message-ID: <329A8FE2.701DB444@azstarnet.com>#1/1 references: <57d3vf$plm@lastactionhero.rs.itd.umich.edu> newsgroups: rec.games.corewar > MARS has the potential to be the most interesting part of Core > War. Imagine a MARS where control was determined by which program gained > "root" status. Imagine a MARS with registers that where shared between > opposing programs. Imagine a MARS which ran continuously, and to which > Authors could summit programs at any time. Well ther could be a special instruction having to be executed after a program wins the game so that it gets points for the win ... lets say a WIN instruction, it has any arguments, which are evaluated but it WILL be the last instruction the simulator does so it does not matter ... if a program evaluates this instruction BEFORE the second program is dead it looses, if it does not execute the WIN instruction at all it's a tie ... the game would go on even with a single program until the cycles is up or a WIN is executed ... to illustrate how a simple porgram would do this is MOV -1,@where DJN -1,where WIN 0,0 where DAT -20 this would clear the core and then execute a win instruction, I know it's a terrible program but it works ... one problem with this is a WIN bomb ... bomb the enemy with WIN instruction to immediatelly kill him .. this could be cured though ... you would have some sort of WINKEY number in the source and only a WIN would do a WIN otherwise it would just be a NOP ... this would look like WINKEY 123 MOV -1,@where DJN -1,where WIN 993 ;this instruction has no effect WIN 123 where DAT -20 This could make a new type of scanner/bomber ... something like CIA well different but similiar idea ... scan locations for numbers and when it finds a non-zero number it sends a bomb (WIN bomb) with that number ... of course with the right WINKEY the program would die immediately since it's opponent is not dead yet .. of course this would be pretty inefective if you have the wrong number ... and the number would have to be 0-coresize, since it has to be store in core somewhere ... This would eliminate IMP's they have only one instructions and have no way of knowing when to end ... and probably papers, papers have also no way of knowing when they're done ... unless the papers had a counter that counted copies and then executed a WIN ... I think warriors would have to be smarter ... especially their endgame ... one way to do an imp with a win is to have a counter stashed away ... maybe as a self copying (gemini like) program ... as fast as the imp, so the imp would never catch it it would do some damage (maybe) and after a certain number of copies it would execute a WIN ... Franz From: jklewis@stimpy.us.itd.umich.edu (John K. Lewis) Subject: MARS Date: 1996/11/25 Message-ID: <57d3vf$plm@lastactionhero.rs.itd.umich.edu>#1/1 newsgroups: rec.games.corewar " Core War is a game played by two or more programs (and vicariously by their authors) written in an assembly language called Redcode and run in a virtual computer called MARS (for Memory Array Redcode Simulator). The object of the game is to cause all processes of the opposing program to terminate, leaving your program in sole possession of the machine. " --Core War FAQ (what is Core War) The purpose of this post is to start a discussion about the state of Core War and our enjoyment of the game with the intention of changing the game. It is not the intention of this post to cause change that is inconsistant with the original intent of the game. Core War requires three functioning parts. Authors, Redcode, and MARS. I will address each of these parts. Authors; The game could not exist without the support and interest of Authors. The catch-22 for enacting change in Core War is gain the support of Authors. Authors are generally not interested in exploring changes or modification to Core War because of the large learning curve required for competency. Authors play for enjoyment and competition, both suffer if the learning curve is too long. I should make a distinction here between learning curve and exploration. Most Authors enjoy exploration, which can only be achieved after competency. If radical change is to occur in Core War, the Authors must mandate that change. This can only occur through dialog. Redcode; Almost all changes that have been attempted to Core War have centered around the language, Redcode. While I think these have been well intentioned, they lacked a holistic view of the game. It's my suggestion that Redcode should be updated once a year, with old ideas falling away and new ones emerging. Redcode should be a living language. The advantage of a living language are many. With a slowly evolving Redcode, the exploration of Core War could happen indefinately without an undue learning curve. Each new version would open up new possibilities without fear of permenently damaging the environment. If a modification is created which unbalances play, then it can be removed from the language in the next version. This brings up two problems; backwards compatability and application size. Briefly addressed, backwards compatability can be maintained by scanning for the version of redcode being used. If none is accessed then the "Open", anything goes version is assumed. As for application size, (the size of Pmars), I feel this is an ideal place for Authors to show their abilities in programming. MARS; Probably the most ignored aspect of Core War. Currently the MARS consists of a series of lines (normally numbering 8000) which are sequential and unbounded. While there have been some experiments in changing the MARS, (ie; larger or smaller core, adding permanent space), these changes have only impacted Core War slightly. I feel that the MARS is the part of Core Wars which deserves the highest amount of attention in terms of changes. Currently a program is considered to have "sole possession of the machine" if it is the only process running. The concept is lacking in imagery. What good is controlling this virtual machine, if I'm using it to run imps around and around. MARS has the potential to be the most interesting part of Core War. Imagine a MARS where control was determined by which program gained "root" status. Imagine a MARS with registers that where shared between opposing programs. Imagine a MARS which ran continuously, and to which Authors could summit programs at any time. I share these ideas with you because I have a hope that Core War will continue to interest me. I first started playing Core War in 1987. Over time I have watched it evolve, slowly, into it's current form. I think this is only the first step in an evolution of programming games and I want to be there for the second and third steps. I am interested in you opinions and observation. I am interested in you input. I know you wont let me down. John - -- < john k. lewis > < jklewis@umich.edu > < 77325 > < sig.virus 1.5 > From: jklewis@stimpy.us.itd.umich.edu (John K. Lewis) Subject: FAQ Date: 1996/11/25 Message-ID: <57cur8$plm@lastactionhero.rs.itd.umich.edu> newsgroups: rec.games.corewar ----------------------------------------------------------------- Unofficially Updated FAQ ----------------------------------------------------------------- Archive-name: games/corewar-faq Last-Modified: 96/8/8 Version: 3.6 These are the Frequently Asked Questions (and answers) from the Usenet newsgroup rec.games.corewar. A plain text version of this document is posted every two weeks. The hypertext version is available as _________________________________________________________________ Table of Contents 1. What is Core War 2. Is it Core War or Core Wars? 3. Where can I find more information about Core War? 4. Core War has changed since Dewdney's articles. Where do I get a copy of the current instruction set? 5. What is ICWS'94? Which simulators support ICWS'94? 6. What is the ICWS? 7. What is Core Warrior? 8. Where are the Core War archives? 9. Where can I find a Core War system for ...? 10. I do not have FTP. How do I get all this great stuff? 11. I do not have access to Usenet. How do I post and receive news? 12. Are there any Core War related WWW sites? 13. What is KotH? How do I enter? 14. Is it DAT 0, 0 or DAT #0, #0? How do I compare to core? 15. How does SLT (Skip if Less Than) work? 16. What is the difference between in-register and in-memory evaluation? 17. What does (expression or term of your choice) mean? 18. Other questions? _________________________________________________________________ What is Core War? Core War is a game played by two or more programs (and vicariously by their authors) written in an assembly language called Redcode and run in a virtual computer called MARS (for Memory Array Redcode Simulator). The object of the game is to cause all processes of the opposing program to terminate, leaving your program in sole posession of the machine. There are Core War systems available for most computer platforms. Redcode has been standardized by the ICWS, and is therefore transportable between all standard Core War systems. [ToC] _________________________________________________________________ Is it "Core War" or "Core Wars"? Both terms are used. Early references were to Core War. Later references seem to use Core Wars. I prefer "Core War" to refer to the game in general, "core wars" to refer to more than one specific battle. [ToC] _________________________________________________________________ Where can I find more information about Core War? Core War was first described in the Core War Guidelines of March, 1984 by D. G. Jones and A. K. Dewdney of the Department of Computer Science at The University of Western Ontario (Canada). Dewdney wrote several "Computer Recreations" articles in Scientific American which discussed Core War, starting with the May 1984 article. Those articles are contained in two anthologies: Author: Dewdney, A. K. Title: The Armchair Universe: An Exploration of Computer Worlds Published: New York: W. H. Freeman (c) 1988 ISBN: 0-7167-1939-8 Library of Congress Call Number: QA76.6 .D517 1988 Author: Dewdney, A. K. Title: The Magic Machine: A Handbook of Computer Sorcery Published: New York: W. H. Freeman (c) 1990 ISBN: 0-7167-2125-2 (Hardcover), 0-7167-2144-9 (Paperback) Library of Congress Call Number: QA76.6 .D5173 1990 A.K. Dewdney's articles are still the most readable introduction to Core War, even though the Redcode dialect described in there is no longer current. [ToC] _________________________________________________________________ Core War has changed since Dewdney's articles. Where do I get a copy of the current instruction set? A lot has changed. The current competitions in Core War use an extended version of the 94 standard. The current version of PMARS contains text files explaining the changes. [ToC] _________________________________________________________________ What is ICWS'94? Which simulators support ICWS'94? There is an ongoing discussion about future enhancements to the Redcode language. A proposed new standard, dubbed ICWS'94, is currently being evaluated. A major change is the addition of "instruction modifiers" that allow instructions to modify A-field, B-field or both. Also new is a post-increment indirect addressing mode and unrestricted opcode and addressing mode combination ("no illegal instructions"). ICWS'94 is backwards compatible; i.e. ICWS'88 warriors will run correctly on an ICWS'94 system. Take a look at the ICWS'94 draft for more information. [ToC] _________________________________________________________________ What is the ICWS? About one year after Core War first appeared in Sci-Am, the "International Core War Society" (ICWS) was established. Since that time, the ICWS has been responsible for the creation and maintenance of Core War standards and the running of Core War tournaments. There have been six annual tournaments and two standards (ICWS'86 and ICWS'88). [ToC] _________________________________________________________________ What is Core Warrior? Following in the tradition of the Core War News Letter, Push Off, and The 94 Warrior, Core Warrior is a newsletter about strategies and current standings in Core War. Started in Oct.1995, back issues of Core Warrior (and the other newsletters) are available at . [ToC] _________________________________________________________________ Where are the Core War archives? Planar web page contains a large number of published warriors. Currently, all warriors published are included in this archive. [ToC] _________________________________________________________________ Where can I find a Core War system for . . . ? Core War systems are available via anonymous ftp from ftp.csua.berkeley.edu in the /pub/corewar/systems directory. Currently, there are UNIX, IBM PC-compatible, Macintosh, and Amiga Core War systems available there. It is a good idea to check for program updates first. CAUTION! There are many, many Core War systems available which are NOT ICWS'88 (or even ICWS'86) compatible available at various archive sites other than ftp.csua.berkeley.edu. Generally, the older the program - the less likely it will be ICWS compatible. Reviews of Core War systems would be greatly appreciated in the newsgroup and in the newsletter. Below is a not necessarily complete or up-to-date list of what's available at ftp.csua.berkeley.edu: MADgic41.lzh - corewar for the Amiga, v4.1 MAD4041.lzh - older version? MAD50B.lha - corewar for the Amiga, beta version 5.0 Redcoder-21.hqx - corewar for the Mac, supports ICWS'88 and '94 (without extensions) core-11.hqx - corewar for the Mac core-wars-simulator.hqx - same as core-11.hqx? corewar_unix_x11.tar.Z - corewar for UNIX/X-windows, ICWS'86 but not ICWS'88 compatible koth31.tar.Z - corewar for UNIX/X-windows. This program ran the former KotH server at intel.com koth.shar.Z - older version kothpc.zip - port of older version of KotH to the PC deluxe20c.tar.Z - corewar for UNIX (broken X-windows or curses) and PC mars.tar.Z - corewar for UNIX, likely not ICWS'88 compatible icons.zip - corewar icons for MS-Windows macrored.zip - a redcode macro-preprocessor (PC) c88v49.zip - PC corewar, textmode display mars88.zip - PC corewar, graphics mode display corwp302.zip - PC corewar, textmode display, slowish mercury2.zip - PC corewar written in assembly, fast! mtourn11.zip - tournament scheduler for mercury (req. 4DOS) pmars08s.zip - portable system, ICWS'88 and '94, runs on UNIX, PC, Mac, Amiga. C source archive pmars08s.tar.Z - same as above pmars08.zip - PC executables with graphics display, req 386+ macpmars02.sit.hqx - pMARS executable for Mac (port of version 0.2) buggy, no display MacpMARS1.99a.cpt.hqx - port of v0.8 for the Mac, with display and debugger MacpMARS1.0s.cpt.hqx - C source (MPW, ThinkC) for Mac frontend ApMARS03.lha - pMARS executable for Amiga (port of version 0.3.1) wincor11.zip - MS-Windows system, shareware ($15) [ToC] _________________________________________________________________ I do not have FTP. How do I get all this great stuff? There is an ftp email server at ftpmail@decwrl.dec.com. Send email with a subject and body text of "help" (without the quotes) for more information on its usage. If you don't have access to the net at all, send me a 3.5 '' diskette in a self-addressed disk mailer with postage and I will mail it back with an image of the Core War archives in PC format. My address is at the end of this post. [ToC] _________________________________________________________________ I do not have access to Usenet. How do I post and receive news? To receive rec.games.corewar articles by email, join the COREWAR-L list run on the Stormking.Com list processor. To join, send the message SUB COREWAR-L FirstName LastName to listproc@stormking.com. You can send mail to corewar-l@stormking.com to post even if you are not a member of the list. Responsible for the listserver is Scott J. Ellentuch (tuc@stormking.com). Another server that allows you to post (but not receive) articles is available. Email your post to rec-games-corewar@cs.utexas.edu and it will be automatically posted for you. [ToC] _________________________________________________________________ Are there any Core War related WWW sites? You bet. Each of the two KotH sites sport a world-wide web server. Stormking's Core War page is ; Pizza's is . Planars Page is With a US mirror at [ToC] _________________________________________________________________ What is KotH? How do I enter? King Of The Hill (KotH) is an ongoing Core War tournament available to anyone with email. You enter by submitting via email a Redcode program (warrior) with special comment lines. You will receive a reply indicating how well your program did against the current top programs "on the hill". There are two styles of KotH tournaments, "classical" and "multi-warrior". The "classical" KotH is a one-on-one tournament, your warrior battles against each of the 25 other programs currently on the Hill. You receive 3 points for each win and 1 point for each tie. (The existing programs do not replay each other, but their previous battles are recalled.) All scores are updated to reflect your battles and all 21 programs are ranked from high to low. If you are number 21 you are pushed off the Hill, if you are higher than 21 someone else is pushed off. In "multi-warrior" KotH, all warriors on the hill fight each other at the same time. Score calculation is a bit more complex than for the one-on-one tournament. Briefly, points are awarded based on how many warriors survive until the end of a round. A warrior that survives by itself gets more points than a warrior that survives together with other warriors. Points are calculated from the formula (W*W-1)/S, where W is the total number of warriors and S the number of surviving warriors. The pMARS documentation has more information on multi-warrior scoring. The idea for an email-based Core War server came from David Lee. The original KotH was developed and run by William Shubert at Intel starting in 1991, and discontinued after almost three years of service. Currently, KotHs based on Bill's UNIX scripts but offering a wider variety of hills are are running at three sites: "koth@koth.org" is maintained by Scott J. Ellentuch (tuc@stormking.com), "pizza@ecst.csuchico.edu" by Thomas H. Davies (sd@ecst.csuchico.edu) and "koth@wastedyouth.umich.edu" by Andrew Fabbro and Johk K. Lewis (koth@umich.edu).To conserve resources, the different hill types are divided up among the sites. The way you submit warriors to the KotHs is pretty much the same. Therefore, the entry rules described below apply to both "pizza", "stormking", and "wastedyouth" unless otherwise noted. Entry rules for King of the Hill Corewar: 1) Write a corewar program. KotH is fully ICWS '88 compatible, EXCEPT that a comma (",") is required between two arguments. 2) Put a line starting with ";redcode" (or ";redcode-94, etc., see below) at the top of your program. This MUST be the first line. Anything before it will be lost. If you wish to receive mail on every new entrant, use ";redcode verbose". Otherwise you will only receive mail if a challenger makes it onto the hill. Use ";redcode quiet" if you wish to receive mail only when you get shoved off the hill. (Also, see 5 below). Additionally, adding ";name " and ";author " will be helpful in the performance reports. Do NOT have a line beginning with ";address" in your code; this will confuse the mail daemon and you won't get mail back. In addition, it would be nice if you have lines beginning with ";strategy" that describe the algorithm you use. There are currently eight separate hills you can select by starting your program with ;redcode-b, ;redcode-94, ;redcode-94x, ;redcode, ;redcode-icws, ;redcode-94m, ;redcode-94xm, or ;recode-94lp. The former three run at "pizza", the next four at "stormking" and the last is on "wastedyouth". More information on these hills is listed below. 3) Mail this file to koth@koth.org, pizza@ecst.csuchico.edu or koth@wastedyouth.umich.edu. "Pizza" requires a subject of "koth" (use the -s flag on most mailers). 4) Within a few minutes you should get mail back telling you whether your program assembled correctly or not. If it did assemble correctly, sit back and wait; if not, make the change required and re-submit. 5) In an hour or so you should get more mail telling you how your program performed against the current top 25 (or 10) programs. If no news arrives during that time, don't worry; entries are put in a queue and run through the tournament one at a time. Most hills have some way of checking the queue. If your program makes it onto the hill, you will get mail every time a new program makes it onto the hill. If this is too much mail, you can use ";redcode[-??] quiet" when you first mail in your program; then you will only get mail when you make it on the top 25 list or when you are knocked off. Using ";redcode[-??] verbose" will give you even more mail; here you get mail every time a new challenger arrives, even if they don't make it onto the top 25 list. Often programmers want to try out slight variations in their programs. If you already have a program named "foo V1.0" on the hill, adding the line ";kill foo" to a new program will automatically bump foo 1.0 off the hill. Just ";kill" will remove all of your programs when you submit the new one. The server kills programs by assigning an impossibly low score; it may therefore take another successful challenge before a killed program is actually removed from the hill. SAMPLE ENTRY: ;redcode ;name Dwarf ;author A. K. Dewdney ;strategy Throw DAT bombs around memory, hitting every 4th memory cell. ;strategy This program was presented in the first Corewar article. bomb DAT #0 dwarf ADD #4, bomb MOV bomb, @bomb JMP dwarf END dwarf ; Programs start at the first line unless ; an "END start" pseudo-op appears to indicate ; the first logical instruction. Also, nothing ; after the END instruction will be assembled. Here are the Specs for the various hills: ICWS'88 Standard Hill Specs: (Accessed with ";redcode", available at "stormking") hillsize: 20 warriors rounds: 100 coresize: 8000 max. processes: 8000 duration: after 80,000 cycles, a tie is declared. max. entry length: 100 minimum distance: 100 instruction set: ICWS '88 ICWS Annual Tournament Hill Specs: (Accessed with ";redcode-icws", available at "stormking") hillsize: 20 warriors rounds: 100 coresize: 8192 instructions max. processes: 8000 per program duration: After 100,000 cycles, a tie is declared. max. entry length: 300 minimum distance: 300 instruction set: ICWS '88 ICWS'94 Draft Hill Specs: (Accessed with ";redcode-94", available at "pizza") hillsize: 25 warriors rounds: 100 coresize: 8000 max. processes: 8000 duration: after 80,000 cycles, a tie is declared. max. entry length: 100 minimum distance: 100 instruction set: extended ICWS '94 Draft ICWS'94 Beginner's Hill Specs: (Accessed with ";redcode-b", available at "pizza") hillsize: 25 warriors rounds: 100 coresize: 8000 max. processes: 8000 duration: after 80,000 cycles, a tie is declared. max. entry length: 100 minimum distance: 100 instruction set: extended ICWS '94 Draft max. age: after 100 successful challenges, warriors are retired. ICWS'94 Experimental (Big) Hill Specs: (Accessed with ";redcode-94x", available at "pizza") hillsize: 25 warriors rounds: 100 coresize: 55440 max. processes: 10000 duration: after 500,000 cycles, a tie is declared. max. entry length: 200 minimum distance: 200 instruction set: extended ICWS '94 Draft ICWS'94 Draft Multi-Warrior Hill Specs: (Accessed with ";redcode-94m", available at "stormking") hillsize: 10 warriors rounds: 200 coresize: 8000 max. processes: 8000 duration: after 80,000 cycles, a tie is declared. max. entry length: 100 minimum distance: 100 instruction set: extended ICWS '94 Draft ICWS'94 Experimental (Big) Multi-Warrior Hill Specs: (Accessed with ";redcode-94xm", available at "stormking") hillsize: 20 warriors rounds: 100 coresize: 55440 max. processes: 10000 duration: after 500,000 cycles, a tie is declared. max. entry length: 200 minimum distance: 200 instruction set: extended ICWS '94 Draft ICWS'94 Limited Process Hill: (Accessed with ";redcode-94lp", available at "wastedyouth") hillsize: 25 warriors rounds: 200 coresize: 8000 max. processes: 8 duration: after 800,000 cycles, a tie is declared. max. entry length: 200 minimum distance: 200 instruction set: extended ICWS '94 Draft If you just want to get a status report without actually challenging the hills, send email with ";status" as the message body (and don't forget "Subject: koth" for "pizza"). If you send mail to "pizza" with "Subject: koth help" you will receive instructions that may be more up to date than those contained in this document. At stormking, a message body with ";help" will return brief instructions. If you submit code containing a ";test" line, your warrior will be assembled but not actually pitted against the warriors on the hill. All hills run portable MARS (pMARS) version 0.8, a platform-independent corewar system available at ftp.csua.berkeley.edu. The '94 and '94x hills allow five experimental opcodes and three addressing modes currently not covered in the ICWS'94 draft document: LDP - Load P-Space STP - Store P-Space SEQ - Skip if EQual (synonym for CMP) SNE - Skip if Not Equal NOP - (No OPeration) * - indirect using A-field as pointer { - predecrement indirect using A-field } - postincrement indirect using A-field [ToC] _________________________________________________________________ Is it DAT 0, 0 or DAT #0, #0? How do I compare to core? Core is initialized to DAT 0, 0. This is an "illegal" instruction under ICWS'88 rules and strictly compliant assemblers (such as KotH or pmars -8) will not let you write a DAT 0, 0 instruction - only DAT #0, #0. So this begs the question, how to compare something to see if it is empty core. The answer is, most likely the instruction before your first instruction and the instruction after your last instruction are both DAT 0, 0. You can use them, or any other likely unmodified instructions, for comparison. Note that under ICWS'94, DAT 0, 0 is a legal instruction. [ToC] _________________________________________________________________ How does SLT (Skip if Less Than) work? SLT gives some people trouble because of the way modular arithmetic works. It is important to note that all negative numbers are converted to positive numbers before a battles begins. Example: (-1) becomes (M - 1) where M is the memory size. Once you realize that all numbers are treated as positive, it is clear what is meant by "less than". It should also be clear that no number is less than zero. [ToC] _________________________________________________________________ What is the difference between in-register and in-memory evaluation? These terms refer to the way instruction operands are evaluated. The '88 Redcode standard ICWS'88 is unclear about whether a simulator should "buffer" the result of A-operand evaluation before the B-operand is evaluated. Simulators that do buffer are said to use in-register evaluation, those that don't, in-memory evaluation. ICWS'94 clears this confusion by mandating in-register evaluation. Instructions that execute differently under these two forms of evaluation are MOV, ADD, SUB, MUL, DIV and MOD where the effective address of the A-operand is modified by evaluation of the B-operand. This is best illustrated by an example: L1 mov L2, mov.i #0,impsize Bootstrapping Strategy of copying the active portion of the program away from the initial location, leaving a decoy behind and making the relocated program as small as possible. B-Scanners Scanners which only recognize non-zero B-fields. example add #10,scan scan jmz example,10 C Measure of speed, equal to one location per cycle. Speed of light. CMP-Scanner A Scanner which uses a CMP instruction to look for opponents. example add step,scan scan cmp 10,30 jmp attack jmp example step dat #20,#20 Color Property of bombs making them visible to scanners, causing them to attack useless locations, thus slowing them down. example dat #100 Core-Clear code that sequentially overwrites core with DAT instructions; usually the last part of a program. Decoys Bogus or unused instructions meant to slow down Scanners. Typically, DATs with non-zero B-fields. DJN-Stream (also DJN-Train) Using a DJN command to rapidly decrement core locations. example ... ... djn example,<4000 Dwarf the prototypical small bomber. Gate-busting (also gate-crashing) technique to "interweave" a decrement-resistant imp-spiral (e.g. MOV 0, 2668) with a standard one to overrun imp-gates. Hybrids warriors that combine two or more of the basic strategies, either in sequence (e.g. stone->paper) or in parallel (e.g. imp/stone). Imp Program which only uses the MOV instruction. example MOV 0, 1 or example MOV 0, 2 MOV 0, 2 Imp-Gate A location in core which is bombed or decremented continuously so that an Imp can not pass. Also used to describe the program-code which maintains the gate. example ... ... SPL 0, mov.i #0,impsize Mirror see reflection. On-axis/off-axis On-axis scanners compare two locations M/2 apart, where M is the memory size. Off-axis scanners use some other separation. Optimal Constants (also optima-type constants) Bomb or scan increments chosen to cover core most effectively, i.e. leaving gaps of uniform size. Programs to calculate optimal constants and lists of optimal numbers are available at ftp.csua.berkeley.edu. Paper A Paper-like program. One which replicates itself many times. Part of the Scissors (beats) Paper (beats) Stone (beats Scissors) analogy. Pit-Trapper (also Slaver, Vampire). A program which enslaves another. Usually accomplished by bombing with JMPs to a SPL 0 pit with an optional core-clear routine. Quick Scan 2c scan of a set group of core locations with bombing if anything is found. Both of the following codes snips scan 16 locations and check for a find. If anything is found, it is attacked, otherwise 16 more locations are scanned. Example: start s1 for 8 ;'88 scan cmp start+100*s1, start+100*s1+4000 ;check two locations mov #start+100*s1-found, found ;they differ so set pointer rof jmn attack, found ;if we have something, get it s2 for 8 cmp start+100*(s2+6), start+100*(s2+6)+4000 mov #start+100*(s2+6)-found, found rof found jmz moveme, #0 ;skip attack if qscan found nothing attack cmp @found, start-1 ;does found points to empty space? add #4000, found ;no, so point to correct location mov start-1, @found ;move a bomb moveme jmp 0, 0 In ICWS'94, the quick scan code is more compact because of the SNE opcode: start ;'94 scan s1 for 4 sne start+400*s1, start+400*s1+100 ;check two locations seq start+400*s1+200, start+400*s1+300 ;check two locations mov #start+400*s1-found, found ;they differ so set pointer rof jmn which, found ;if we have something, get it s2 for 4 sne start+400*(s2+4), start+400*(s2+4)+100 seq start+400*(s2+4)+200, start+400*(s2+4)+300 mov #start+400*(s2+4)-found-100, found rof found jmz moveme, #0 ;skip attack if qscan found nothing add #100, -1 ;increment pointer till we get the which jmn -1, @found ;right place mov start-1, @found ;move a bomb moveme jmp 0, 0 Reflection Copy of a program or program part, positioned to make the active program invisible to a CMP-scanner. Replicator Generic for Paper. A program which makes many copies of itself, each copy also making copies. Self-Splitting Strategy of amplifying the number of processes executing a piece of code. example SPL 0 loop ADD #10, example MOV example, @example JMP loop Scanner A program which searches through core for an opponent rather than bombing blindly. Scissors A program designed to beat replicators, usually a (B-field scanning) vampire. Part of the Paper-Scissors-Stone analogy. Self-Repair Ability of a program to fix it's own code after attack. Silk A replicator which splits off a process to each new copy before actually copying the code. This allows it to replicate extremely quickly. This technique is only possible under the '94 draft, because it requires post-increment indirect addressing. Example: spl 1 mov.i -1, 0 spl 1 ;generate 6 consecutive processes silk spl 3620, #0 ;split to new copy mov.i >-1, }-1 ;copy self to new location mov.i bomb, >2000 ;linear bombing mov.i bomb, }2042 ;A-indirect bombing for anti-vamp jmp silk, {silk ;reset source pointer, make new copy bomb dat.f >2667, >5334 ;anti-imp bomb Slaver see Pit-Trapper. Stealth Property of programs, or program parts, which are invisible to scanners, accomplished by using zero B-fields and reflections. Stone A Stone-like program designed to be a small bomber. Part of the Paper-Scissors-Stone analogy. Stun A type of bomb which makes the opponent multiply useless processes, thus slowing it down. Example is referred to as a spl-jmp bomb. example spl 0 jmp -1 Two-Pass Core-Clear (also spl/dat Core-Clear) core clear that fills core first with SPL instructions, then with DATs. This is very effective in killing paper and certain imp-spiral variations. Vampire see Pit-Trapper. Vector Launch one of several means to start an imp-spiral running. As fast as Binary Launch, but requiring much less code. See also JMP/ADD Launch and Binary Launch. This example is one form of a Vector Launch: impsize equ 2667 example spl 1 ; extend by adding more spl 1's spl 1 djn.a @imp,#0 ; jmp @ a series of pointers dat #0,imp+(3*impsize) dat #0,imp+(2*impsize) dat #0,imp+(1*impsize) dat #0,imp+(0*impsize) imp mov.i #0,impsize [ToC] _________________________________________________________________ Other questions? Just ask in the rec.games.corewar newsgroup or contact me (address below). If you are shy, check out the Core War archives first to see if your question has been answered before. [ToC] _________________________________________________________________ Credits Additions, corrections, etc. to this document are solicited. Thanks in particular to the following people who have contributed major portions of this document: Paul Kline, Randy Graham. Mark Durham wrote the first version of the FAQ. The rec.games.corewar FAQ is Copyright 1995 and maintained by: Stefan Strack, PhD stst@vuse.vanderbilt.edu Dept. Molecular Physiol. and Biophysics stst@idnsun.gpct.vanderbilt.edu Rm. 762, MRB-1 stracks@vuctrvax.bitnet Vanderbilt Univ. Medical Center Voice: +615-322-4389 Nashville, TN 37232-6600, USA FAX: +615-322-7236 _________________________________________________________________ $Id: corewar-faq.html,v 3.6 1995/10/12 22:44:37 stst Exp stst $ From: Franz Subject: Re: 3D Date: 1996/11/25 Message-ID: #1/1 references: <32247905.5557641@news.demon.co.uk> <503oeo$2uc@mercury.hgmp.mrc.ac.uk> <56j8ll$4l9@dodgson.math.psu.edu> <472EBE33FF%mouse@cheesey.demon.co.uk> <32927FF5.96FAF2@azstarnet.com> <32955099.62FF@aimnet.com> <3299D55B.3C81@rsvl.unisys.com> newsgroups: comp.ai.alife,rec.games.corewar > > Thinking about 128X128X128, that is 4meg slots. > > maybe allow two bytes per slot. 8 meg ram > > is not big deal. > > I'd be inclined to use some sparse array technique, and only > hold data about slots that were actually occupied. well actually i think for corewar purposes it would be quite large, note that the coresize that is used more often is 8000 ... so I think 128X128X128 is quite large ... though i think programming such programs would be challenging since i don't see how to do a simple representation in a text file, by simple i mean human readable. And even for organisms i think 2d might be a realistic model too ... at least for organisms living on land :) ... of course for ai it does not matter how human readable it is ... anyway ... for ai how do you plan to do the "reproduction of organisms" I tried a similiar thing a while ago where the programs had a certain lifetime, the programs had a limit on number of proccesses they use to drive their own genetic code, and the older a stream got it would increase the chances of mutating instructions it was executing, this would eventually lead to death, another cause of death was not enough of "energy" on the execution point, energy was depleted by execution, and again the older the program got the more energy it needed to execute. so the programs had to create offsprings. Making an offspring required only one program and sufficent amount of energy. There were special instructions that had to be used for reproduction, the father organism had no idea where the offspring went, and it migth have created deficencies/fetures in the new program, if the program is old it's offsprings would have gotten some deficent code. this is not the best way to evolve since the evolution is entierly off mutation, and since i never got far in programming such a beast, i don't know how it would work ... But it at least created enviroment where the "mother earth" or in this case "mother simulator" had no control over how the programs evolved/reproduced Franz From: Mark K Vallevand Subject: Re: 3D Date: 1996/11/25 Message-ID: <3299D55B.3C81@rsvl.unisys.com>#1/1 references: <32247905.5557641@news.demon.co.uk> <503oeo$2uc@mercury.hgmp.mrc.ac.uk> <56j8ll$4l9@dodgson.math.psu.edu> <472EBE33FF%mouse@cheesey.demon.co.uk> <32927FF5.96FAF2@azstarnet.com> <32955099.62FF@aimnet.com> newsgroups: comp.ai.alife,rec.games.corewar Jim Lavery wrote: > Thinking about 128X128X128, that is 4meg slots. > maybe allow two bytes per slot. 8 meg ram > is not big deal. I'd be inclined to use some sparse array technique, and only hold data about slots that were actually occupied. -- Regards. Mark K Vallevand markus@rsvl.unisys.com (c)"Live fats. Die yo gnu." From: nilsp@stud.cs.uit.no (Nils Petter Vaskinn) Subject: Re: about Easy cash!! posters Date: 1996/11/25 Message-ID: <57ca43$kol@news.uit.no>#1/1 references: <328fb69e.10306497@news.uquebec.ca> newsgroups: rec.games.computer.quake.editing,rec.games.computer.quake.playing,rec.games.computer.quake.servers,rec.games.computer.stars,rec.games.computer.xpilot,rec.games.design,rec.games.corewar,rec.games.go,rec.games.mecha,rec.games.misc,rec.games.mud.lp,rec.games.mud.tiny [revenge against spammers suggestions deleted] You should realize that some of these easy money post's are FAKE. With the intention of having the poor individuals who get their names on the list become victims of such revenge. Rater than doing as the previous article suggests send a mail to postmaster@.... and explain that we don't want these easy money post's on our newsgroups. (look at message-ID in the header as this is harder to fake than the mailadress of the poster) This WORKS it tends to be easyer for a postmaster to cancel an account than to read through lot's of angry letters every day. Followup set to alt.test -- Nils Petter Vaskinn (nilsp@stud.cs.uit.no) (http://www.cs.uit.no/~nilsp/) +------------------------------------------------------------+ | It is not my intention to offend anybody with what I write | | If you are easily offended please read no more | +-------------------+--------------------+-------------------+ | No Easy Money ! | +-------------------+--------------------+-------------------+ | Walk beside me and you will be safe from all other harm. | +------------------------------------------------------------+ From: Bjoern Guenzel Subject: Re: about Easy cash!! posters Date: 1996/11/25 Message-ID: <329998B6.41C6@ucl.ac.uk>#1/1 references: <328fb69e.10306497@news.uquebec.ca> <574o7u$sfi@lyra.csx.cam.ac.uk> <32962064.5409@roanoke.infi.net> newsgroups: rec.games.computer.quake.editing,rec.games.computer.quake.playing,rec.games.computer.quake.servers,rec.games.computer.stars,rec.games.computer.xpilot,rec.games.design,rec.games.corewar,rec.games.go,rec.games.mecha,rec.games.misc,rec.games.mud.lp,rec.games.mud.tiny pat rhodes wrote: > > Y. Tremblay wrote: > > > > Not my idea but I thought it could be phone: > > Take the following names: (from a previous easy money post, any other > > ones should do) [...] (innocent victims deleted) > > Look in you junk mail for something that annoys you. Music club, book > > club, "free samples but then you have to pay $50 afterward and we keep > > hassling you". any other junk you feel like. > > > > Register them! > > > > I mean, if they can send us junk e-mail, they deserve to receive junk > > mail. Sorry, but that idea sounds very childish to me! > > > > -- > > Y. TremblayWhy waste your time! Bjoern Guenzel From: SKI Koth Server Subject: SKI-ICWS: Status - Multiwarrior Experimental 94 11/25/96 Date: 1996/11/25 Message-ID: <199611250500.AAA05621@asgard.ttsg.com>#1/1 newsgroups: rec.games.corewar Weekly Status on 11/25/96 ****** NOTICE ****** We have changed our name to koth.org ****** NOTICE ****** See up to the second scores and the latest Core War information at : http://www.koth.org/~koth *FAQ* http://www.koth.org/~koth/corewar-faq.html Current Status of the StormKing Industries MultiWarrior Experimental 94 CoreWar Hill: Last battle concluded at : Sun Nov 10 18:01:29 EST 1996 # Name Author Score Age 1 Evolve X John Wilkinson 5020 16 2 Test2 George Eadon 5020 36 3 jaded M R Bremer 5020 47 4 TimeScapeX (0.1) J. Pohjalainen 5020 76 5 Fork v0.2-9p/51b Christoph C. Birk 5020 18 6 This is Test1 Kurt Franke 5020 41 7 U-Lat II Zul Nadzri 5020 3 8 U-lat Zul Nadzri 5020 7 9 Paper8 G. Eadon 5020 42 10 Victim 16 Pedro 5020 6 11 U-lat II Zul Nadzri 5020 2 12 Wax Zul Nadzri 5020 4 13 Stamp II Franz 5020 9 14 Chain 4 Pedro 5020 1 15 Newest test Pedro 4998 15 16 Paperone Beppe Bezzi 4998 61 17 Stamp Franz 4998 10 18 Papyrus 4 Justin Kao 4998 14 19 tRASH Franz 4976 5 20 Saat V2.01 S. Schroeder 4976 30 21 NoName Pedro 4976 12 From: SKI Koth Server Subject: SKI-ICWS: Status - Standard 11/25/96 Date: 1996/11/25 Message-ID: <199611250500.AAA05608@asgard.ttsg.com>#1/1 newsgroups: rec.games.corewar Weekly Status on 11/25/96 ****** NOTICE ****** We have changed our name to koth.org ****** NOTICE ****** See up to the second scores and the latest Core War information at : http://www.koth.org/ *FAQ* http://www.koth.org/corewar-faq.html Current Status of the StormKing Industries Standard KotH CoreWar Hill : Last battle concluded at : Thu Nov 21 21:24:27 EST 1996 # %W/ %L/ %T Name Author Score Age 1 41/ 30/ 29 Leapfrog David Moore 152 1 2 42/ 42/ 16 Blur '88 Anton Marsden 143 10 3 39/ 37/ 24 Tangle Trap David Moore 141 46 4 38/ 37/ 25 PacMan David Moore 139 2 5 25/ 16/ 58 Test I Ian Oversby 134 29 6 26/ 17/ 57 ttti nandor sieben 134 154 7 37/ 42/ 21 Gisela 609 Andrzej Maciejczak 133 42 8 26/ 20/ 55 Evoltmp 88 John K W 132 23 9 31/ 31/ 37 Yop La Boum v2.1 P.E.M & E.C. 131 104 10 26/ 22/ 51 CAPS KEY IS STUCK AGAIN Steven Morrell 130 170 11 38/ 46/ 16 Iron Gate Wayne Sheppard 129 298 12 36/ 43/ 21 Stasis David Moore 129 80 13 27/ 27/ 46 Test Wayne Sheppard 128 193 14 22/ 18/ 60 Rosebud 88 Beppe 126 35 15 23/ 19/ 58 Cannonade P.Kline 126 204 16 24/ 23/ 53 Simple '88 Ian Oversby 126 59 17 25/ 25/ 50 K-test P.E.M 124 76 18 34/ 44/ 21 Beholder's Eye V1.7 W. Mintardjo 124 248 19 15/ 8/ 77 Evolve '88 John K Wilkinson 122 60 20 33/ 44/ 23 Gisela 3G6 Andrzej Maciejczak 121 67 21 34/ 53/ 13 Scanner test Zul Nadzri 116 0 From: SKI Koth Server Subject: SKI-ICWS: Status - MultiWarrior 94 11/25/96 Date: 1996/11/25 Message-ID: <199611250500.AAA05617@asgard.ttsg.com>#1/1 newsgroups: rec.games.corewar Weekly Status on 11/25/96 ****** NOTICE ****** We have changed our name to koth.org ****** NOTICE ****** See up to the second scores and the latest Core War information at : http://www.koth.org/~koth *FAQ* http://www.koth.org/~koth/corewar-faq.html Current Status of the StormKing Industries Multiwarrior 94 CoreWar Hill: Last battle concluded at : Tue Nov 12 02:57:21 EST 1996 # Name Author Score Age 1 Super Evol Cap John Wilkinson 5060 29 2 Son of Imp Steven Morrell 5048 65 3 Get Even II Robert Macrae 5048 4 4 Die Hard P.Kline 5036 52 5 Get Even Robert Macrae 5036 5 6 IMPossible! Maurizio Vittuari 5024 11 7 Aulder Man Ian Oversby 5024 6 8 IMPossible! Maurizio Vittuari 5024 19 9 U-lat II Zul Nadzri 5012 1 10 Get Even II Robert Macrae 5000 3 11 Get Evener Robert Macrae 4988 2 From: SKI Koth Server Subject: SKI-ICWS: Status - ICWS Tournament 11/25/96 Date: 1996/11/25 Message-ID: <199611250500.AAA05613@asgard.ttsg.com>#1/1 newsgroups: rec.games.corewar Weekly Status on 11/25/96 ****** NOTICE ****** We have changed our name to koth.org ****** NOTICE ****** See up to the second scores and the latest Core War information at : http://www.koth.org/~koth *FAQ* http://www.koth.org/~koth/corewar-faq.html Current Status of the StormKing Industries Annual ICWS Tournament CoreWar Hill: Last battle concluded at : Mon Oct 28 14:22:53 EST 1996 # %W/ %L/ %T Name Author Score Age 1 38/ 16/ 46 Cannonade Paul Kline 161 100 2 49/ 37/ 14 Miss Carefree Derek Ross 161 32 3 51/ 42/ 7 Agony T Stefan Strack 159 101 4 45/ 39/ 16 Old Tire Swing Randy Graham 150 57 5 43/ 37/ 20 Giskard v0.5 Ken Mitton 149 73 6 38/ 29/ 33 Pommes-Ketchup V1.35 S. Schroeder 148 13 7 33/ 19/ 48 Turkey Beppe Bezzi 146 16 8 30/ 16/ 54 Nothing Special G. Eadon 143 15 9 42/ 44/ 14 Miss Carry Derek Ross 141 64 10 41/ 45/ 14 test88 P.Kline 138 19 11 41/ 45/ 14 Slaver v1.1i Christoph C. Birk 137 61 12 40/ 46/ 15 Gisela 6928 Andrzej Maciejczak 134 4 13 40/ 47/ 13 Gisela 6927 Andrzej Maciejczak 133 5 14 36/ 39/ 26 Beauty 1000 v 0.0 Pedro 133 7 15 40/ 47/ 13 Gisela 6029 Andrzej Maciejczak 133 1 16 39/ 49/ 12 Traper3_t Waldemar Bartolik 128 10 17 38/ 48/ 14 DoubleStone v0.7 Christoph C. Birk 127 43 18 34/ 43/ 23 Yop La Boum v2.1 P.E.M & E.C. 124 30 19 26/ 28/ 46 One Fat Lady Robert Macrae 123 17 20 39/ 57/ 4 xtc stefan roettger 120 105 21 3/ 0/ 1 Gisela 6028 Andrzej Maciejczak 11 2 From: SKI Koth Server Subject: SKI-ICWS: Status - ICWS Experimental 94 11/25/96 Date: 1996/11/25 Message-ID: <199611250500.AAA05626@asgard.ttsg.com>#1/1 newsgroups: rec.games.corewar Weekly Status on 11/25/96 ****** NOTICE ****** We have changed our name to koth.org ****** NOTICE ****** See up to the second scores and the latest Core War information at : http://www.koth.org/~koth *FAQ* http://www.koth.org/~koth/corewar-faq.html Current Status of the StormKing Industries ICWS Experimental 94 CoreWar Hill: Last battle concluded at : Sat Nov 23 06:59:59 EST 1996 # %W/ %L/ %T Name Author Score Age 1 35/ 5/ 60 Evol Cap 4 X John Wilkinson 166 31 2 46/ 34/ 20 Dr. Gate X Franz 158 2 3 36/ 15/ 49 Rosebud Beppe 158 10 4 47/ 40/ 13 Memories Beppe Bezzi 153 38 5 39/ 27/ 34 Falcon v0.3 X Ian Oversby 151 4 6 42/ 33/ 25 Dr. Recover Franz 150 1 7 42/ 35/ 24 BigBoy Robert Macrae 148 56 8 45/ 42/ 13 Tsunami v0.1 Ian Oversby 148 9 9 43/ 41/ 16 Stepping Stone 94x Kurt Franke 145 17 10 43/ 41/ 17 Illusion-94/55 Randy Graham 144 13 11 38/ 34/ 28 Lithium X 8 John K Wilkinson 143 22 12 39/ 36/ 24 Derision M R Bremer 142 48 13 42/ 42/ 16 Frontwards v2 Steven Morrell 141 61 14 42/ 44/ 14 Pagan John K W 139 16 15 39/ 42/ 19 Fire Master Xv1 JS Pulido 136 53 16 36/ 36/ 27 Tornado 2.0 x Beppe Bezzi 136 55 17 42/ 49/ 9 S.E.T.I. 4-X JKW 135 32 18 43/ 51/ 6 dodger component M R Bremer 135 3 19 31/ 28/ 41 Variation M-1 Jay Han 134 11 20 28/ 24/ 48 Hector 2 Kurt Franke 131 51 21 0/ 87/ 13 Try9 Chris Stubbs 14 0 From: stst@vuse.vanderbilt.edu (Stefan Strack) Subject: Core War Frequently Asked Questions (rec.games.corewar FAQ) Date: 1996/11/25 Message-ID: newsgroups: rec.games.corewar,rec.answers,news.answers Archive-name: games/corewar-faq Last-Modified: 95/10/12 Version: 3.6 These are the Frequently Asked Questions (and answers) from the Usenet newsgroup rec.games.corewar. A plain text version of this document is posted every two weeks. The hypertext version is available as _________________________________________________________________ Table of Contents 1. What is Core War 2. Is it Core War or Core Wars? 3. Where can I find more information about Core War? 4. Core War has changed since Dewdney's articles. Where do I get a copy of the current instruction set? 5. What is ICWS'94? Which simulators support ICWS'94? 6. What is the ICWS? 7. What is TCWN? 8. How do I join? 9. What is the EBS? 10. Where are the Core War archives? 11. Where can I find a Core War system for ...? 12. I do not have FTP. How do I get all this great stuff? 13. I do not have access to Usenet. How do I post and receive news? 14. Are there any Core War related WWW sites? 15. When is the next tournament? 16. What is KotH? How do I enter? 17. Is it DAT 0, 0 or DAT #0, #0? How do I compare to core? 18. How does SLT (Skip if Less Than) work? 19. What is the difference between in-register and in-memory evaluation? 20. What does (expression or term of your choice) mean? 21. Other questions? _________________________________________________________________ What is Core War? Core War is a game played by two or more programs (and vicariously by their authors) written in an assembly language called Redcode and run in a virtual computer called MARS (for Memory Array Redcode Simulator). The object of the game is to cause all processes of the opposing program to terminate, leaving your program in sole posession of the machine. There are Core War systems available for most computer platforms. Redcode has been standardized by the ICWS, and is therefore transportable between all standard Core War systems. [ToC] _________________________________________________________________ Is it "Core War" or "Core Wars"? Both terms are used. Early references were to Core War. Later references seem to use Core Wars. I prefer "Core War" to refer to the game in general, "core wars" to refer to more than one specific battle. [ToC] _________________________________________________________________ Where can I find more information about Core War? Core War was first described in the Core War Guidelines of March, 1984 by D. G. Jones and A. K. Dewdney of the Department of Computer Science at The University of Western Ontario (Canada). Dewdney wrote several "Computer Recreations" articles in Scientific American which discussed Core War, starting with the May 1984 article. Those articles are contained in two anthologies: Author: Dewdney, A. K. Title: The Armchair Universe: An Exploration of Computer Worlds Published: New York: W. H. Freeman (c) 1988 ISBN: 0-7167-1939-8 Library of Congress Call Number: QA76.6 .D517 1988 Author: Dewdney, A. K. Title: The Magic Machine: A Handbook of Computer Sorcery Published: New York: W. H. Freeman (c) 1990 ISBN: 0-7167-2125-2 (Hardcover), 0-7167-2144-9 (Paperback) Library of Congress Call Number: QA76.6 .D5173 1990 A.K. Dewdney's articles are still the most readable introduction to Core War, even though the Redcode dialect described in there is no longer current. [ToC] _________________________________________________________________ Core War has changed since Dewdney's articles. Where do I get a copy of the current instruction set? A draft of the official standard (ICWS'88) is available as . This document is formatted awkwardly and contains ambiguous statements. For a more approachable intro to Redcode, take a look at Mark Durham's tutorial, and . Steven Morrell (morrell@math.utah.edu) is preparing a more practically oriented Redcode tutorial that discusses different warrior classes with lots of example code. Mail him for a preliminary version. Michael Constant (mconst@csua.berkeley.edu) is reportedly working on a beginner's introduction. [ToC] _________________________________________________________________ What is ICWS'94? Which simulators support ICWS'94? There is an ongoing discussion about future enhancements to the Redcode language. A proposed new standard, dubbed ICWS'94, is currently being evaluated. A major change is the addition of "instruction modifiers" that allow instructions to modify A-field, B-field or both. Also new is a post-increment indirect addressing mode and unrestricted opcode and addressing mode combination ("no illegal instructions"). ICWS'94 is backwards compatible; i.e. ICWS'88 warriors will run correctly on an ICWS'94 system. Take a look at the ICWS'94 draft for more information. You can try out the new standard by submitting warriors to the '94 hills of the KotH servers. Two corewar systems currently support ICWS'94, pMARS (many platforms) and Redcoder (Mac), both available at ftp.csua.berkeley.edu. [ToC] _________________________________________________________________ What is the ICWS? About one year after Core War first appeared in Sci-Am, the "International Core War Society" (ICWS) was established. Since that time, the ICWS has been responsible for the creation and maintenance of Core War standards and the running of Core War tournaments. There have been six annual tournaments and two standards (ICWS'86 and ICWS'88). [ToC] _________________________________________________________________ What is TCWN? Since March of 1987, "The Core War Newsletter" (TCWN) has been the official newsletter of the ICWS. It is published quarterly and recent issues are also available as Encapsulated PostScript files. [ToC] _________________________________________________________________ How do I join? For more information about joining the ICWS (which includes a subscription to TCWN), or to contribute an article, review, cartoon, letter, joke, rumor, etc. to TCWN, please contact: Jon Newman 13824 NE 87th Street Redmond, WA 98052-1959 email: jonn@microsoft.com (Note: Microsoft has NO affiliation with Core War. Jon Newman just happens to work there, and we want to keep it that way!) Current annual dues are $15.00 in US currency. [ToC] _________________________________________________________________ What is the EBS? The Electronic Branch Section (EBS) of the ICWS is a group of Core War enthusiasts with access to electronic mail. There are no fees associated with being a member of the EBS, and members do reap some of the benefits of full ICWS membership without the expense. For instance, the ten best warriors submitted to the EBS tournament are entered into the annual ICWS tournament. All EBS business is conducted in the rec.games.corewar newsgroup. The current goal of the EBS is to be at the forefront of Core War by writing and implementing new standards and test suites. [ToC] _________________________________________________________________ Where are the Core War archives? Many documents such as the guidelines and the ICWS standards along with previous tournament Redcode entries and complete Core War systems are available via anonymous ftp from (128.32.149.19) in the /pub/corewar directories. Also, most of past rec.games.corewar postings (including Redcode source listings) are archived there. Jon Blow (blojo@csua.berkeley.edu) is the archive administrator. When uploading to /pub/corewar/incoming, ask Jon to move your upload to the appropriate directory and announce it on the net. Much of what is available on soda is also available on the German archive at iraun1.ira.uka.de (129.13.10.90) in the /pub/x11/corewars directory. The plain text version of this FAQ is automatically archived by news.answers. [ToC] _________________________________________________________________ Where can I find a Core War system for . . . ? Core War systems are available via anonymous ftp from ftp.csua.berkeley.edu in the /pub/corewar/systems directory. Currently, there are UNIX, IBM PC-compatible, Macintosh, and Amiga Core War systems available there. It is a good idea to check for program updates first. CAUTION! There are many, many Core War systems available which are NOT ICWS'88 (or even ICWS'86) compatible available at various archive sites other than ftp.csua.berkeley.edu. Generally, the older the program - the less likely it will be ICWS compatible. Reviews of Core War systems would be greatly appreciated in the newsgroup and in the newsletter. Below is a not necessarily complete or up-to-date list of what's available at ftp.csua.berkeley.edu: MADgic41.lzh - corewar for the Amiga, v4.1 MAD4041.lzh - older version? MAD50B.lha - corewar for the Amiga, beta version 5.0 Redcoder-21.hqx - corewar for the Mac, supports ICWS'88 and '94 (without extensions) core-11.hqx - corewar for the Mac core-wars-simulator.hqx - same as core-11.hqx? corewar_unix_x11.tar.Z - corewar for UNIX/X-windows, ICWS'86 but not ICWS'88 compatible koth31.tar.Z - corewar for UNIX/X-windows. This program ran the former KotH server at intel.com koth.shar.Z - older version kothpc.zip - port of older version of KotH to the PC deluxe20c.tar.Z - corewar for UNIX (broken X-windows or curses) and PC mars.tar.Z - corewar for UNIX, likely not ICWS'88 compatible icons.zip - corewar icons for MS-Windows macrored.zip - a redcode macro-preprocessor (PC) c88v49.zip - PC corewar, textmode display mars88.zip - PC corewar, graphics mode display corwp302.zip - PC corewar, textmode display, slowish mercury2.zip - PC corewar written in assembly, fast! mtourn11.zip - tournament scheduler for mercury (req. 4DOS) pmars08s.zip - portable system, ICWS'88 and '94, runs on UNIX, PC, Mac, Amiga. C source archive pmars08s.tar.Z - same as above pmars08.zip - PC executables with graphics display, req 386+ macpmars02.sit.hqx - pMARS executable for Mac (port of version 0.2) buggy, no display MacpMARS1.99a.cpt.hqx - port of v0.8 for the Mac, with display and debugger MacpMARS1.0s.cpt.hqx - C source (MPW, ThinkC) for Mac frontend ApMARS03.lha - pMARS executable for Amiga (port of version 0.3.1) wincor11.zip - MS-Windows system, shareware ($15) [ToC] _________________________________________________________________ I do not have FTP. How do I get all this great stuff? There is an ftp email server at ftpmail@decwrl.dec.com. Send email with a subject and body text of "help" (without the quotes) for more information on its usage. If you don't have access to the net at all, send me a 3.5 '' diskette in a self-addressed disk mailer with postage and I will mail it back with an image of the Core War archives in PC format. My address is at the end of this post. [ToC] _________________________________________________________________ I do not have access to Usenet. How do I post and receive news? To receive rec.games.corewar articles by email, join the COREWAR-L list run on the Stormking.Com list processor. To join, send the message SUB COREWAR-L FirstName LastName to listproc@stormking.com. You can send mail to corewar-l@stormking.com to post even if you are not a member of the list. Responsible for the listserver is Scott J. Ellentuch (tuc@stormking.com). Another server that allows you to post (but not receive) articles is available. Email your post to rec-games-corewar@cs.utexas.edu and it will be automatically posted for you. [ToC] _________________________________________________________________ Are there any Core War related WWW sites? You bet. Each of the two KotH sites sport a world-wide web server. Stormking's Core War page is ; pizza's is . A third WWW site is in Koeln, Germany: . Last but not least, Stephen Beitzel's "Unofficial Core War Page" is . All site are in varying stages of construction, so it would be futile to list here what they have to offer. [ToC] _________________________________________________________________ When is the next tournament? The ICWS holds an annual tournament. Traditionally, the deadline for entering is the 15th of December. The EBS usually holds a preliminary tournament around the 15th of November and sends the top finishers on to the ICWS tournament. Informal double-elimination and other types of tournaments are held frequently among readers of the newsgroup; watch there for announcements or contact me. [ToC] _________________________________________________________________ What is KotH? How do I enter? King Of The Hill (KotH) is an ongoing Core War tournament available to anyone with email. You enter by submitting via email a Redcode program (warrior) with special comment lines. You will receive a reply indicating how well your program did against the current top programs "on the hill". There are two styles of KotH tournaments, "classical" and "multi-warrior". The "classical" KotH is a one-on-one tournament, that is your warrior will play 100 battles against each of the 20 other programs currently on the Hill. You receive 3 points for each win and 1 point for each tie. (The existing programs do not replay each other, but their previous battles are recalled.) All scores are updated to reflect your battles and all 21 programs are ranked from high to low. If you are number 21 you are pushed off the Hill, if you are higher than 21 someone else is pushed off. In "multi-warrior" KotH, all warriors on the hill fight each other at the same time. Score calculation is a bit more complex than for the one-on-one tournament. Briefly, points are awarded based on how many warriors survive until the end of a round. A warrior that survives by itself gets more points than a warrior that survives together with other warriors. Points are calculated from the formula (W*W-1)/S, where W is the total number of warriors and S the number of surviving warriors. The pMARS documentation has more information on multi-warrior scoring. The idea for an email-based Core War server came from David Lee. The original KotH was developed and run by William Shubert at Intel starting in 1991, and discontinued after almost three years of service. Currently, KotHs based on Bill's UNIX scripts but offering a wider variety of hills are are running at two sites: "koth@stormking.com" is maintained by Scott J. Ellentuch (tuc@stormking.com) and "pizza@ecst.csuchico.edu" by Thomas H. Davies (sd@ecst.csuchico.edu). Up until May '95, the two sites provided overlapping services, i.e. the some of the hill types were offered by both "pizza" and "stormking". To conserve resources, the different hill types are now divided up among the sites. The way you submit warriors to both KotHs is pretty much the same. Therefore, the entry rules described below apply to both "pizza" and "stormking" unless otherwise noted. Entry rules for King of the Hill Corewar: 1) Write a corewar program. KotH is fully ICWS '88 compatible, EXCEPT that a comma (",") is required between two arguments. 2) Put a line starting with ";redcode" (or ";redcode-94, etc., see below) at the top of your program. This MUST be the first line. Anything before it will be lost. If you wish to receive mail on every new entrant, use ";redcode verbose". Otherwise you will only receive mail if a challenger makes it onto the hill. Use ";redcode quiet" if you wish to receive mail only when you get shoved off the hill. (Also, see 5 below). Additionally, adding ";name " and ";author " will be helpful in the performance reports. Do NOT have a line beginning with ";address" in your code; this will confuse the mail daemon and you won't get mail back. In addition, it would be nice if you have lines beginning with ";strategy" that describe the algorithm you use. There are currently seven separate hills you can select by starting your program with ;redcode-b, ;redcode-94, ;redcode-94x, ;redcode, ;redcode-icws, ;redcode-94m or ;redcode-94xm. The former three run at "pizza", the latter four at "stormking". More information on these hills is listed below. 3) Mail this file to koth@stormking.com or pizza@ecst.csuchico.edu. "Pizza" requires a subject of "koth" (use the -s flag on most mailers). 4) Within a few minutes you should get mail back telling you whether your program assembled correctly or not. If it did assemble correctly, sit back and wait; if not, make the change required and re-submit. 5) In an hour or so you should get more mail telling you how your program performed against the current top 20 (or 10) programs. If no news arrives during that time, don't worry; entries are put in a queue and run through the tournament one at a time. A backlog may develop. Be patient. If your program makes it onto the hill, you will get mail every time a new program makes it onto the hill. If this is too much mail, you can use ";redcode[-??] quiet" when you first mail in your program; then you will only get mail when you make it on the top 20 list or when you are knocked off. Using ";redcode[-??] verbose" will give you even more mail; here you get mail every time a new challenger arrives, even if they don't make it onto the top 20 list. Often programmers want to try out slight variations in their programs. If you already have a program named "foo V1.0" on the hill, adding the line ";kill foo" to a new program will automatically bump foo 1.0 off the hill. Just ";kill" will remove all of your programs when you submit the new one. The server kills programs by assigning an impossibly low score; it may therefore take another successful challenge before a killed program is actually removed from the hill. SAMPLE ENTRY: ;redcode ;name Dwarf ;author A. K. Dewdney ;strategy Throw DAT bombs around memory, hitting every 4th memory cell. ;strategy This program was presented in the first Corewar article. bomb DAT #0 dwarf ADD #4, bomb MOV bomb, @bomb JMP dwarf END dwarf ; Programs start at the first line unless ; an "END start" pseudo-op appears to indicate ; the first logical instruction. Also, nothing ; after the END instruction will be assembled. Here are the Specs for the various hills: ICWS'88 Standard Hill Specs: (Accessed with ";redcode", available at "stormking") hillsize: 20 warriors rounds: 100 coresize: 8000 max. processes: 8000 duration: after 80,000 cycles, a tie is declared. max. entry length: 100 minimum distance: 100 instruction set: ICWS '88 ICWS Annual Tournament Hill Specs: (Accessed with ";redcode-icws", available at "stormking") hillsize: 20 warriors rounds: 100 coresize: 8192 instructions max. processes: 8000 per program duration: After 100,000 cycles, a tie is declared. max. entry length: 300 minimum distance: 300 instruction set: ICWS '88 ICWS'94 Draft Hill Specs: (Accessed with ";redcode-94", available at "pizza") hillsize: 20 warriors rounds: 100 coresize: 8000 max. processes: 8000 duration: after 80,000 cycles, a tie is declared. max. entry length: 100 minimum distance: 100 instruction set: extended ICWS '94 Draft ICWS'94 Beginner's Hill Specs: (Accessed with ";redcode-b", available at "pizza") hillsize: 20 warriors rounds: 100 coresize: 8000 max. processes: 8000 duration: after 80,000 cycles, a tie is declared. max. entry length: 100 minimum distance: 100 instruction set: extended ICWS '94 Draft max. age: after 100 successful challenges, warriors are retired. ICWS'94 Experimental (Big) Hill Specs: (Accessed with ";redcode-94x", available at "pizza") hillsize: 20 warriors rounds: 100 coresize: 55440 max. processes: 10000 duration: after 500,000 cycles, a tie is declared. max. entry length: 200 minimum distance: 200 instruction set: extended ICWS '94 Draft ICWS'94 Draft Multi-Warrior Hill Specs: (Accessed with ";redcode-94m", available at "stormking") hillsize: 10 warriors rounds: 200 coresize: 8000 max. processes: 8000 duration: after 80,000 cycles, a tie is declared. max. entry length: 100 minimum distance: 100 instruction set: extended ICWS '94 Draft ICWS'94 Experimental (Big) Multi-Warrior Hill Specs: (Accessed with ";redcode-94xm", available at "stormking") hillsize: 20 warriors rounds: 100 coresize: 55440 max. processes: 10000 duration: after 500,000 cycles, a tie is declared. max. entry length: 200 minimum distance: 200 instruction set: extended ICWS '94 Draft If you just want to get a status report without actually challenging the hills, send email with ";status" as the message body (and don't forget "Subject: koth" for "pizza"). If you send mail to "pizza" with "Subject: koth help" you will receive instructions that may be more up to date than those contained in this document. At stormking, a message body with ";help" will return brief instructions. If you submit code containing a ";test" line, your warrior will be assembled but not actually pitted against the warriors on the hill. All hills run portable MARS (pMARS) version 0.8, a platform-independent corewar system available at ftp.csua.berkeley.edu. The '94 and '94x hills allow three experimental opcodes and addressing modes currently not covered in the ICWS'94 draft document: SEQ - Skip if EQual (synonym for CMP) SNE - Skip if Not Equal NOP - (No OPeration) * - indirect using A-field as pointer { - predecrement indirect using A-field } - postincrement indirect using A-field [ToC] _________________________________________________________________ Is it DAT 0, 0 or DAT #0, #0? How do I compare to core? Core is initialized to DAT 0, 0. This is an "illegal" instruction under ICWS'88 rules and strictly compliant assemblers (such as KotH or pmars -8) will not let you write a DAT 0, 0 instruction - only DAT #0, #0. So this begs the question, how to compare something to see if it is empty core. The answer is, most likely the instruction before your first instruction and the instruction after your last instruction are both DAT 0, 0. You can use them, or any other likely unmodified instructions, for comparison. Note that under ICWS'94, DAT 0, 0 is a legal instruction. [ToC] _________________________________________________________________ How does SLT (Skip if Less Than) work? SLT gives some people trouble because of the way modular arithmetic works. It is important to note that all negative numbers are converted to positive numbers before a battles begins. Example: (-1) becomes (M - 1) where M is the memory size. Once you realize that all numbers are treated as positive, it is clear what is meant by "less than". It should also be clear that no number is less than zero. [ToC] _________________________________________________________________ What is the difference between in-register and in-memory evaluation? These terms refer to the way instruction operands are evaluated. The '88 Redcode standard ICWS'88 is unclear about whether a simulator should "buffer" the result of A-operand evaluation before the B-operand is evaluated. Simulators that do buffer are said to use in-register evaluation, those that don't, in-memory evaluation. ICWS'94 clears this confusion by mandating in-register evaluation. Instructions that execute differently under these two forms of evaluation are MOV, ADD, SUB, MUL, DIV and MOD where the effective address of the A-operand is modified by evaluation of the B-operand. This is best illustrated by an example: L1 mov L2, mov.i #0,impsize Bootstrapping Strategy of copying the active portion of the program away from the initial location, leaving a decoy behind and making the relocated program as small as possible. B-Scanners Scanners which only recognize non-zero B-fields. example add #10,scan scan jmz example,10 C Measure of speed, equal to one location per cycle. Speed of light. CMP-Scanner A Scanner which uses a CMP instruction to look for opponents. example add step,scan scan cmp 10,30 jmp attack jmp example step dat #20,#20 Color Property of bombs making them visible to scanners, causing them to attack useless locations, thus slowing them down. example dat #100 Core-Clear code that sequentially overwrites core with DAT instructions; usually the last part of a program. Decoys Bogus or unused instructions meant to slow down Scanners. Typically, DATs with non-zero B-fields. DJN-Stream (also DJN-Train) Using a DJN command to rapidly decrement core locations. example ... ... djn example,<4000 Dwarf the prototypical small bomber. Gate-busting (also gate-crashing) technique to "interweave" a decrement-resistant imp-spiral (e.g. MOV 0, 2668) with a standard one to overrun imp-gates. Hybrids warriors that combine two or more of the basic strategies, either in sequence (e.g. stone->paper) or in parallel (e.g. imp/stone). Imp Program which only uses the MOV instruction. example MOV 0, 1 or example MOV 0, 2 MOV 0, 2 Imp-Gate A location in core which is bombed or decremented continuously so that an Imp can not pass. Also used to describe the program-code which maintains the gate. example ... ... SPL 0, mov.i #0,impsize Mirror see reflection. On-axis/off-axis On-axis scanners compare two locations M/2 apart, where M is the memory size. Off-axis scanners use some other separation. Optimal Constants (also optima-type constants) Bomb or scan increments chosen to cover core most effectively, i.e. leaving gaps of uniform size. Programs to calculate optimal constants and lists of optimal numbers are available at ftp.csua.berkeley.edu. Paper A Paper-like program. One which replicates itself many times. Part of the Scissors (beats) Paper (beats) Stone (beats Scissors) analogy. Pit-Trapper (also Slaver, Vampire). A program which enslaves another. Usually accomplished by bombing with JMPs to a SPL 0 pit with an optional core-clear routine. Quick Scan 2c scan of a set group of core locations with bombing if anything is found. Both of the following codes snips scan 16 locations and check for a find. If anything is found, it is attacked, otherwise 16 more locations are scanned. Example: start s1 for 8 ;'88 scan cmp start+100*s1, start+100*s1+4000 ;check two locations mov #start+100*s1-found, found ;they differ so set pointer rof jmn attack, found ;if we have something, get it s2 for 8 cmp start+100*(s2+6), start+100*(s2+6)+4000 mov #start+100*(s2+6)-found, found rof found jmz moveme, #0 ;skip attack if qscan found nothing attack cmp @found, start-1 ;does found points to empty space? add #4000, found ;no, so point to correct location mov start-1, @found ;move a bomb moveme jmp 0, 0 In ICWS'94, the quick scan code is more compact because of the SNE opcode: start ;'94 scan s1 for 4 sne start+400*s1, start+400*s1+100 ;check two locations seq start+400*s1+200, start+400*s1+300 ;check two locations mov #start+400*s1-found, found ;they differ so set pointer rof jmn which, found ;if we have something, get it s2 for 4 sne start+400*(s2+4), start+400*(s2+4)+100 seq start+400*(s2+4)+200, start+400*(s2+4)+300 mov #start+400*(s2+4)-found-100, found rof found jmz moveme, #0 ;skip attack if qscan found nothing add #100, -1 ;increment pointer till we get the which jmn -1, @found ;right place mov start-1, @found ;move a bomb moveme jmp 0, 0 Reflection Copy of a program or program part, positioned to make the active program invisible to a CMP-scanner. Replicator Generic for Paper. A program which makes many copies of itself, each copy also making copies. Self-Splitting Strategy of amplifying the number of processes executing a piece of code. example SPL 0 loop ADD #10, example MOV example, @example JMP loop Scanner A program which searches through core for an opponent rather than bombing blindly. Scissors A program designed to beat replicators, usually a (B-field scanning) vampire. Part of the Paper-Scissors-Stone analogy. Self-Repair Ability of a program to fix it's own code after attack. Silk A replicator which splits off a process to each new copy before actually copying the code. This allows it to replicate extremely quickly. This technique is only possible under the '94 draft, because it requires post-increment indirect addressing. Example: spl 1 mov.i -1, 0 spl 1 ;generate 6 consecutive processes silk spl 3620, #0 ;split to new copy mov.i >-1, }-1 ;copy self to new location mov.i bomb, >2000 ;linear bombing mov.i bomb, }2042 ;A-indirect bombing for anti-vamp jmp silk, {silk ;reset source pointer, make new copy bomb dat.f >2667, >5334 ;anti-imp bomb Slaver see Pit-Trapper. Stealth Property of programs, or program parts, which are invisible to scanners, accomplished by using zero B-fields and reflections. Stone A Stone-like program designed to be a small bomber. Part of the Paper-Scissors-Stone analogy. Stun A type of bomb which makes the opponent multiply useless processes, thus slowing it down. Example is referred to as a spl-jmp bomb. example spl 0 jmp -1 Two-Pass Core-Clear (also spl/dat Core-Clear) core clear that fills core first with SPL instructions, then with DATs. This is very effective in killing paper and certain imp-spiral variations. Vampire see Pit-Trapper. Vector Launch one of several means to start an imp-spiral running. As fast as Binary Launch, but requiring much less code. See also JMP/ADD Launch and Binary Launch. This example is one form of a Vector Launch: impsize equ 2667 example spl 1 ; extend by adding more spl 1's spl 1 djn.a @imp,#0 ; jmp @ a series of pointers dat #0,imp+(3*impsize) dat #0,imp+(2*impsize) dat #0,imp+(1*impsize) dat #0,imp+(0*impsize) imp mov.i #0,impsize [ToC] _________________________________________________________________ Other questions? Just ask in the rec.games.corewar newsgroup or contact me (address below). If you are shy, check out the Core War archives first to see if your question has been answered before. [ToC] _________________________________________________________________ Credits Additions, corrections, etc. to this document are solicited. Thanks in particular to the following people who have contributed major portions of this document: Paul Kline, Randy Graham. Mark Durham wrote the first version of the FAQ. The rec.games.corewar FAQ is Copyright 1995 and maintained by: Stefan Strack, PhD stst@vuse.vanderbilt.edu Dept. Molecular Physiol. and Biophysics stst@idnsun.gpct.vanderbilt.edu Rm. 762, MRB-1 stracks@vuctrvax.bitnet Vanderbilt Univ. Medical Center Voice: +615-322-4389 Nashville, TN 37232-6600, USA FAX: +615-322-7236 _________________________________________________________________ $Id: corewar-faq.html,v 3.6 1995/10/12 22:44:37 stst Exp stst $ From: John Rieffel Subject: Redcode Tutorial and berkely ftp site Date: 1996/11/26 Message-ID: <329B3EF6.FE5@cc.swarthmore.edu>#1/1 newsgroups: rec.games.corewar Hi Guys, I'm in the midst of teaching myself redcode and getting into the swing of the Core Wars thing. Despite my extensive browsing I couldn't find a single online (i.e. web) documentation/explanation of the redcode commands. Moreover, it appears that the max number of users (80) have been logged onto berkeley's ftp site continuously for the past 24 hours. Suggestions? Thanks, John Rieffel Swarthmore College From: Franz Subject: Re: Redcode Tutorial and berkely ftp site Date: 1996/11/26 Message-ID: <329B53D0.76DD898B@azstarnet.com>#1/1 references: <329B3EF6.FE5@cc.swarthmore.edu> newsgroups: rec.games.corewar > I'm in the midst of teaching myself redcode and getting into the swing > of the Core Wars thing. Despite my extensive browsing I couldn't find a > single online (i.e. web) documentation/explanation of the redcode > commands. > Moreover, it appears that the max number of users (80) have been logged > onto berkeley's ftp site continuously for the past 24 hours. > Suggestions? which pages have you checked ... http://www.koth.org has extensive documentation on CoreWar ... and don't worry if you can't find anything good on the extended 94 stnadard ... such a doc does not exist. Just read the '88 standards first and most of the tutorials deal with '88 code ... then look at the 94 draft to find out what those modifier thingies are and then look at pmars documentation to see what p-space is and what new addressing modes there are ... once you know all that ... go look at the corewarrior archive at the plannar page (there is a link from www.koth.org) ... or just skip all the speps go directly to plannar archive and stare at a bunch of warriors a LONG time and hope it all sinks in ... (I tried it ... dodn't work for me too well :) once you know the basic opcodes you can read warriors and learn about strategies ... that's the hardest part of corewar ... incorporating strategies efficently and optimize for speed/size as much as you can ... Franz From: bremermr@cartoon.ecn.purdue.edu (Myer R. Bremer) Subject: Core Warrior 51 Date: 1996/11/26 Message-ID: <57fjr1$3os@mozo.cc.purdue.edu> newsgroups: rec.games.corewar .xX$$x. .x$$$$$$$x. d$$$$$$$$$$$ ,$$$$$$$P' `P' , . $$$$$$P' ' .d b $$$$$P b ,$$x ,$$x ,$$x ,$$b $$. Y$$$$' `$. $$$$$$. $$$$$$ $$P~d$. d$$$b d d$$$ `$$$$ ,$$ $$$$$$$b $$$P `$ $$$b.$$b `Y$$$d$d$$$' . . a . a a .aa . a `$$$ ,$$$,$$' `$$$ $$$' ' $$P$XX$' `$$$$$$$$$ .dP' `$'$ `$'$ , $''$ `$'$ `Y$b ,d$$$P `$b,d$P' `$$. `$$. , `$$P $$$' Y $. $ $ $ Y..P $ `$$$$$$$' $$$P' `$$b `$$$P `P `$' `Y'k. $. $. $. $$' $. Issue 51 25 November, 1996 ______________________________________________________________________________ Core Warrior is a weekly newsletter promoting the game of corewar. Emphasis is placed on the most active hills--currently the '94 draft hill and the beginner hill. Coverage will follow where ever the action is. If you have no clue what I'm talking about then check out these five-star internet locals for more information: FAQs are available by anonymous FTP from rtfm.mit.edu as pub/usenet/news.answers/games/corewar-faq.Z FTP site is: ftp.csua.berkeley.edu /pub/corewar Web pages are at: (Please note new Stormking's address) http://www.koth.org/ ;Stormking http://www.ecst.csuchico.edu/~pizza/koth ;Pizza http://pauillac.inria.fr/~doligez/corewar/ ;Planar Newbies should check the stormking page for the FAQ, language specification, guides, and tutorials. Post questions to rec.games.corewar. All new players are infinitely welcome! If ftp.csua.berkeley.edu is unreachable, you can download pMARS at: Terry's web page--http://www.infi.net/~wtnewton/corewar/ Planar ftp site--ftp://ftp.inria.fr/INRIA/Projects/para/doligez/cw/pmars Fechter ftp site--ftp://members.aol.com/ofechner/corewar A collection of Bezzi's hints in the first issues is available at: ftp://ftp.volftp.vol.it/pub/pc/msdos/games/solutions/bbhints.zip Beppe Bezzi web page - http://www.aspide.it/freeweb/Bezzi ______________________________________________________________________________ Greetings. In case you haven't heard, the pizza hills are down till Wednesday or so. Thos has promised to bring everything back online as soon as possible. --M R Bremer ______________________________________________________________________________ Current Status of the Internet Pizza Server ICWS '94 Draft Hill: Hill Specs: coresize: 8000 max. processes: 8000 duration: after 80,000 cycles, a tie is declared. max. entry length: 100 minimum distance: 100 rounds fought: 200 instruction set: ICWS '94 Draft The current ICWS '94 Draft hill: # %W / %L / %T Name Author Score Age 1 30.8/ 12.6/ 56.6 Return Of The Jedimp John K W 148.9 135 2 35.5/ 24.3/ 40.2 unrequited love kafka 146.7 233 3 42.7/ 39.6/ 17.7 The Machine Anton Marsden 145.9 41 4 30.6/ 16.4/ 52.9 Trident^2 John K W 144.9 65 5 34.6/ 25.2/ 40.2 Gigolo Core Warrior staff 144.1 189 6 40.6/ 40.5/ 18.9 Silver Talon 1.2 Edgar 140.8 22 7 39.8/ 38.8/ 21.4 Damage Incorporated Anton Marsden 140.8 176 8 40.5/ 40.8/ 18.7 Probe Anton Marsden 140.2 313 9 43.1/ 46.7/ 10.2 Memories Beppe 139.5 49 10 40.3/ 42.3/ 17.4 Control Steven Morrell 138.4 1 11 36.0/ 34.1/ 29.9 Tiberius 3.1 Franz 137.9 52 12 40.7/ 44.3/ 15.1 Blur 2 Anton Marsden 137.1 312 13 42.0/ 48.0/ 10.0 Q^2 Miro Anders Ivner 135.9 363 14 28.4/ 22.3/ 49.3 Impish v0.2 Ian Oversby 134.5 174 15 37.8/ 41.3/ 20.9 Instant Wolf 3.4 Edgar 134.2 196 16 37.8/ 42.9/ 19.3 vamp 0.2b bjoern guenzel 132.8 12 17 33.1/ 34.4/ 32.5 Nine Seven Six M R bremer 131.9 25 18 28.7/ 25.9/ 45.4 Rosebud Beppe 131.5 986 19 38.4/ 45.8/ 15.8 AK-47 Franz 131.1 27 20 38.8/ 46.6/ 14.6 Mostly Harmless v1.1 Justin Kao 131.0 10 21 32.5/ 34.9/ 32.5 Falcon v0.3 Ian Oversby 130.1 218 22 33.8/ 38.3/ 27.9 CC Paper 2 Franz 129.3 24 23 37.7/ 46.5/ 15.8 Goothmonger v1.4 Ian Sutton 128.8 4 24 29.9/ 31.0/ 39.1 delay 0.02b 50 bjoern guenzel 128.8 16 25 33.7/ 38.7/ 27.6 Scanitator 2.4 Christian Schmidt 128.7 6 Weekly age: 11 this week ( 5 last issue, 15 the week before ) New warriors: 4 Turnover/age rate 36% Average age: 145 ( 146 last issue, 152 the week before ) Average score: 137 ( 143 last issue, 138 the week before ) The top 25 warriors are represented by 14 independent authors: Marsden with 4; Franz with 3; JKW, Bezzi, Oversby, and Guenzel with 2. Welcome to Ian Sutton with Goothmonger v1.4. ______________________________________________________________________________ 94 - What's New ( or this week: the uplook ) # %W / %L / %T Name Author Score Age 18 32.3/ 32.2/ 35.5 spTest P.Kline 132.4 1 25 25.0/ 31.8/ 43.3 delay 0.03b 50/16 bjoern guenzel 118.2 1 12 39.1/ 42.3/ 18.5 Flicker Ian Oversby 136.0 1 22 39.1/ 46.5/ 14.4 Mostly Harmless v1.1 Justin Kao 131.6 1 25 37.8/ 47.1/ 15.1 Goothmonger v1.2 Ian Sutton 128.6 1 23 37.4/ 47.1/ 15.5 Goothmonger v1.3 Ian Sutton 127.6 1 25 37.8/ 48.8/ 13.4 Golden Gate v4 Franz 126.8 1 11 36.9/ 37.1/ 26.0 Scanitator 2.4 Christian Schmidt 136.6 1 25 31.3/ 55.0/ 13.7 ciTest-17 P.Kline 107.6 1 25 32.7/ 54.9/ 12.4 ciTest-17 P.Kline 110.5 1 25 26.5/ 59.9/ 13.6 Mist P.Kline 93.1 1 25 17.2/ 62.5/ 20.3 Mist P.Kline 72.0 1 25 0.9/ 54.6/ 44.5 nTest P.Kline 47.2 1 25 13.5/ 45.0/ 41.5 Leaping Flame Ilmari Karonen 82.1 1 25 27.6/ 60.9/ 11.6 mTest P.Kline 94.2 1 24 33.4/ 45.1/ 21.4 mTest P.Kline 121.8 1 25 33.1/ 54.6/ 12.3 Hologram Philip Kendall 111.7 1 25 37.6/ 47.0/ 15.4 Goothmonger v1.4 Ian Sutton 128.1 1 7 39.2/ 36.9/ 24.0 Test Anton Marsden 141.4 1 25 19.6/ 15.4/ 65.0 U-lat II Zul Nadzri 123.8 1 25 36.3/ 48.2/ 15.5 Flicker Ian Oversby 124.5 1 25 36.2/ 50.2/ 13.6 Flicker Ian Oversby 122.2 1 25 34.9/ 44.1/ 21.0 Test Ian Sutton 125.7 1 25 36.6/ 52.5/ 10.9 tnTest P.Kline 120.7 1 25 36.2/ 50.2/ 13.6 Flicker Ian Oversby 122.2 1 22 32.8/ 36.7/ 30.4 No Vice Ian Oversby 128.9 1 10 37.1/ 37.0/ 25.9 Test Anton Marsden 137.2 1 10 40.3/ 42.3/ 17.4 Control Steven Morrell 138.4 1 These four are the new warriors on the hill at this point in time. Schmidt and Morrel entering close to single digit rankings. Scanitator marries a Q^2 scan to pspace logic. Interesting. # %W / %L / %T Name Author Score Age 22 39.1/ 46.5/ 14.4 Mostly Harmless v1.1 Justin Kao 131.6 1 11 36.9/ 37.1/ 26.0 Scanitator 2.4 Christian Schmidt 136.6 1 25 37.6/ 47.0/ 15.4 Goothmonger v1.4 Ian Sutton 128.1 1 10 40.3/ 42.3/ 17.4 Control Steven Morrell 138.4 1 ______________________________________________________________________________ 94 - What's No More ( or this week: the outlook ) # %W / %L / %T Name Author Score Age 26 36.8/ 45.8/ 17.4 Dr. Gate Q Franz 127.8 8 26 1.0/ 0.7/ 2.3 delay 0.02b 50 bjoern guenzel 5.3 6 26 36.2/ 45.8/ 18.0 Goldfinch P.Kline 126.6 244 26 36.6/ 46.0/ 17.4 Dr. Gate Q Franz 127.2 9 26 38.0/ 48.3/ 13.6 Flamberge 13.4 Matt Lewinski 127.7 6 26 2.0/ 2.0/ 0.0 Goothmonger v1.2 Ian Sutton 6.1 2 26 36.9/ 47.5/ 15.6 Goothmonger v1.3 Ian Sutton 126.3 2 26 2.0/ 1.6/ 0.4 Scanitator 2.1 Christian Schmidt 6.4 8 26 1.5/ 2.0/ 0.5 Flicker Ian Oversby 5.0 7 26 1.5/ 2.0/ 0.5 Flicker Ian Oversby 5.0 7 26 1.8/ 1.4/ 0.8 Flicker Ian Oversby 6.3 7 26 2.2/ 0.0/ 1.8 Flicker Ian Oversby 8.5 7 26 2.4/ 0.0/ 1.6 Flicker Ian Oversby 8.9 7 26 1.9/ 0.5/ 1.6 Flicker Ian Oversby 7.3 7 26 1.9/ 1.9/ 0.2 Flicker Ian Oversby 5.9 7 26 1.6/ 2.1/ 0.4 Flicker Ian Oversby 5.0 7 26 2.8/ 1.0/ 0.2 Flicker Ian Oversby 8.6 7 26 33.7/ 54.1/ 12.2 Hologram Philip Kendall 113.2 2 26 36.1/ 47.8/ 16.1 Goothmonger v1.4 Ian Sutton 124.3 2 26 36.4/ 50.2/ 13.4 Golden Gate v4 Franz 122.6 5 26 17.5/ 17.0/ 65.5 U-lat II Zul Nadzri 118.1 2 26 17.4/ 17.2/ 65.4 U-lat II Zul Nadzri 117.7 2 26 16.7/ 15.6/ 67.6 U-lat II Zul Nadzri 117.8 2 26 17.5/ 17.3/ 65.2 U-lat II Zul Nadzri 117.6 2 26 17.4/ 17.2/ 65.4 U-lat II Zul Nadzri 117.7 2 26 16.8/ 17.0/ 66.2 U-lat II Zul Nadzri 116.7 2 26 32.4/ 37.4/ 30.2 No Vice Ian Oversby 127.4 2 26 32.3/ 38.2/ 29.4 No Vice Ian Oversby 126.4 2 The bottom four warriors from last week's issue all were pushed off the hill. # %W / %L / %T Name Author Score Age 26 36.2/ 45.8/ 18.0 Goldfinch P.Kline 126.6 244 26 36.6/ 46.0/ 17.4 Dr. Gate Q Franz 127.2 9 26 38.0/ 48.3/ 13.6 Flamberge 13.4 Matt Lewinski 127.7 6 26 2.0/ 1.6/ 0.4 Scanitator 2.1 Christian Schmidt 6.4 8 ______________________________________________________________________________ 94 - What's Old # %W / %L / %T Name Author Score Age 14 32.3/ 24.0/ 43.7 Rosebud Beppe 140.7 986 18 42.6/ 47.6/ 9.8 Q^2 Miro Anders Ivner 137.7 363 7 42.2/ 39.7/ 18.1 Probe Anton Marsden 144.7 313 9 42.9/ 41.8/ 15.3 Blur 2 Anton Marsden 144.1 312 1 40.0/ 21.7/ 38.2 unrequited love kafka 158.4 233 19 35.3/ 33.3/ 31.3 Falcon v0.3 Ian Oversby 137.3 218 The hill becomes even younger with the loss of Kline's Goldfinch. ______________________________________________________________________________ HALL OF FAME * means the warrior is still active. Pos Name Author Age Strategy 1 Thermite II Robert Macrae 2262 Qscan -> bomber 2 Impfinity v4g1 Planar 1993 Stone/ imp 3 Jack in the box Beppe Bezzi 1620 P-warrior 4 Tornado 3.0 Beppe Bezzi 1567 Bomber 5 Torch t18 P.Kline 1539 Bomber 6 Chameleon Myer R Bremer 1437 P-warrior 7 Frontwards v2 Steven Morrell 1420 One shot scanner 8 Evol Cap 6.6 John Wilkinson 1299 Imp / stone 9 quiz Schitzo 1262 Scanner/ bomber 10 T.N.T. Maurizio Vittuari 1204 Bomber 11 Grilled Octopus v0.5 David Boeren 1154 P-warrior 12 Hazy Shade II John Wilkinson 1102 P-warrior 13 Stepping Stone Kurt Franke 1049 Qscan -> Vampire 14 Rosebud Beppe Bezzi 986 * Stone/ imp 15 Iron Gate 1.5 Wayne Sheppard 926 CMP scanner 16 T.N.T. pro Maurizio Vittuari 925 Bomber 17 Agony II Stefan Strack 912 CMP scanner 18 Barrage Anton Marsden 876 Qscan -> replicator 19 Blue Funk Steven Morrell 869 Stone/ imp 20 Flurry Anton Marsden 835 Qscan -> pwarrior 21 Thermite 1.0 Robert Macrae 802 Qscan -> bomber 22 Blue Funk 3 Steven Morrell 766 Stone/ imp 23 Night Train Karl Lewin 755 Replicator 24 Mirage 1.5 Anton Marsden 736 Scanner/ bomber 25 Blizzard Anton Marsden 713 Qscan -> replicator No changes. Rosebud continues its slow, deliberate climb. ______________________________________________________________________________ Current Status of the Internet Pizza Server Beginner's Hill: Hill Specs: coresize: 8000 max. processes: 8000 duration: after 80,000 cycles, a tie is declared. max. entry length: 100 minimum distance: 100 maximum age: At age 100, warriors are retired. rounds fought: 200 instruction set: ICWS '94 Draft # %W / %L / %T Name Author Score Age I was unable to collect data for the beginner's hill due to the shutdown at pizza. ______________________________________________________________________________ The Hint by M R Bremer I've been working very sporadically on some warriors in between time spent on my compiler project, interviews, and office visits. Here are some little hints that may or may not help you. I'm using this bombing code in my warrior Nine Seven Six. The bomber throws spl and dat instructions around in core until the spl lands on the djn instruction. A d-clear follows. Normally in a bomber, I could use the spl operands as my increment. However, I wanted a perfect d-clear gate so the b-operand was unavailable to me. Instead of creating a bogus dat instruction containing the necessary data, I simply used my djn line as my increment. I got the idea from an old warrior by Paul Kline called Scimitar. Kline used the bomb itself, dat <4, STEP*2, as the increment in his bomber. first spl #STEP, >gate-loop mov.i }-2200, *loop+STEP*2 mov.i first, @-1 add.f 1, -2 loop djn.f -3, gate last djn.f -1, >gate Booting away warriors was also giving me a minor problem. Booting is very easy to do if all the code is going to be placed sequentially in core. You can do it in linear time with just one boot pointer. However, once you start setting up pointers or gates for your warriors, or you need to jump to the middle of your code, additional pointers are needed. Additional pointers take additional code and additional time to delete them. I wanted to set up a d-clear with the gate two core locations above the split. Instead of using two pointers or extra instructions, I split to my code before the total boot is finished. And then I decrement the boot pointer in my split. Due to the nature of the splitting process, mov.i will execute before the instruction at ptr+2234. Therefore, all my code is placed before the warrior is started. mov.i {gate, {ptr djn.b -1, #4 ptr spl 2234, {ptr mov.i gate, {ptr Similar to silk replicators, you can use this technique to place even more code. In the extreme case, a warrior can split to an empty core location while the boot builds the warrior right under the new process. Of course none of the executing instructions could depend on instructions that have not been booted into place yet. Even more time and space can be saved by having the pointers bombed very early in the bombing run instead of adding div or mov instructions to explicitly destroy them. ______________________________________________________________________________ Questions? Concerns? Comments? Complaints? Mail them to people who care. authors: Beppe Bezzi or Myer Bremer or Anton Marsden From: mooredav@cps.msu.edu (David Matthew Moore) Subject: Re: MARS Date: 1996/11/26 Message-ID: <57fiat$1qap@msunews.cl.msu.edu>#1/1 references: <57d3vf$plm@lastactionhero.rs.itd.umich.edu> newsgroups: rec.games.corewar John K. Lewis (jklewis@stimpy.us.itd.umich.edu) wrote: : Redcode; : Almost all changes that have been attempted to Core War have centered : around the language, Redcode. While I think these have been well : intentioned, they lacked a holistic view of the game. It's my : suggestion that Redcode should be updated once a year, with old ideas : falling away and new ones emerging. Redcode should be a living language. Hmmm.... My philosophy behind corewar: I would like to keep redcode a RISC language. I like to have a small instruction set that has so many interesting properties that you could study them forever. The trick is to get exactly the right set of instructions so that you can do this. What's the problem with having too many instructions? It's hard to say, but it's real. The learning curve is one problem. Another reason to keep a small instruction set: the imagery. I always thought that the games with the best imagery were simple-to-learn, lifetime-to-master type games. There's been a lot of experimentation (i.e. the 94 draft). I'm glad to see it. However, we should compile these various extensions into a new standard that has a similar level of compactness, but also has entirely new implications for play. I think that it is important to find these small but interesting sets; these sets will become the standards. : The advantage of a living language are many. With a slowly evolving : Redcode, the exploration of Core War could happen indefinately : without an undue learning curve. Each new version would open up new : possibilities without fear of permenently damaging the environment. If a : modification is created which unbalances play, then it can be removed from : the language in the next version. This brings up two problems; backwards : compatability and application size. : Briefly addressed, backwards compatability can be maintained by scanning : for the version of redcode being used. If none is accessed then the : "Open", anything goes version is assumed. As for application size, (the : size of Pmars), I feel this is an ideal place for Authors to show their : abilities in programming. I don't see much point in preserving compatibility between standards. You can learn from the older warriors by watching them in their native environment, but I don't think that they can be compared to the newer ones. "Mount Olympus" on Planar's page is an example of this. 88 and 94 warriors fight together on the same hill. I had a look at the scores for my 88 warriors. I see that my scanner is getting spanked by silks. Nothing wrong with it against 88 papers, but it clears the core too early for 94 silks. My point is that warriors are optimized to fight warriors from the same standard. : MARS; : Probably the most ignored aspect of Core War. Currently the MARS consists : of a series of lines (normally numbering 8000) which are sequential and : unbounded. While there have been some experiments in changing the MARS, : (ie; larger or smaller core, adding permanent space), these changes have : only impacted Core War slightly. Arithmetic in the integers mod 8000 has plenty of interesting mathematical content. It's also very simple, so you don't have to do a lot of number crunching if you don't want to. : I feel that the MARS is the part of Core Wars which deserves the highest : amount of attention in terms of changes. Currently a program is : considered to have "sole possession of the machine" if it is the only : process running. The concept is lacking in imagery. What good is : controlling this virtual machine, if I'm using it to run imps around and : around. : MARS has the potential to be the most interesting part of Core : War. Imagine a MARS where control was determined by which program gained : "root" status. Imagine a MARS with registers that where shared between : opposing programs. Imagine a MARS which ran continuously, and to which : Authors could summit programs at any time. I like the imagery of the current game. I don't think that you can make it any more suggestive by explicitly saying what it should be. : I share these ideas with you because I have a hope that Core War will : continue to interest me. I first started playing Core War in 1987. Over : time I have watched it evolve, slowly, into it's current form. I think : this is only the first step in an evolution of programming games and I want : to be there for the second and third steps. I am interested in you : opinions and observation. I am interested in you input. I know you wont : let me down. : John - : -- : < john k. lewis > < jklewis@umich.edu > < 77325 > < sig.virus 1.5 > David Moore mooredav@cps.msu.edu From: Beppe Bezzi Subject: Tournament: Final result we have a winner this time Date: 1996/11/26 Message-ID: #1/1 newsgroups: rec.games.corewar After a long elimination phase. After a semifinal round. After a first final ending in a tie We have a winner of the tournament Twin Flame by Ian Oversby scores 267 Judgement Day by Philip Kendall scores 306 Results: 80 93 27 Congratulations to: ************************************************* * * * P H I L I P K E N D A L L * * * ************************************************* The winner will receive ASAP the code of Gigolo, and immediatly my nomination for the Hall of Fame, nomination extended to Ian too Full results of the tournament and code of the warriors will be published in my web page http://www.aspide.it/freeweb/Bezzi I'm not sure I can keep them here for long because I have a limited space and soon I'll need it. Thank you to you all for playing. Please send me, or better to the newsgroup, your comments about it. -Beppe -------------- -Beppe Bezzi http://www.aspide.it/freeweb/Bezzi From: Franz Subject: Re: 3D Date: 1996/11/26 Message-ID: #1/1 references: <32247905.5557641@news.demon.co.uk> <503oeo$2uc@mercury.hgmp.mrc.ac.uk> <56j8ll$4l9@dodgson.math.psu.edu> <472EBE33FF%mouse@cheesey.demon.co.uk> <32927FF5.96FAF2@azstarnet.com> <32955099.62FF@aimnet.com> <329f2b9b.18945609@news.demon.co.uk> newsgroups: rec.games.corewar >Would you, or anyone else, be interested in implementing a general >2D/3D Corewar type environment? I'm definatly interested but i don't have much time .. but i would "lend a hand" > >Francis. > Franz From: Franz Subject: Re: MARS Date: 1996/11/26 Message-ID: #1/1 references: <57d3vf$plm@lastactionhero.rs.itd.umich.edu> <329A8FE2.701DB444@azstarnet.com> <57f8od$iv2@lastactionhero.rs.itd.umich.edu> newsgroups: rec.games.corewar >: Well ther could be a special instruction having to be executed after a >: program wins the game so that it gets points for the win ... lets say a >: WIN instruction, it has any arguments, which are evaluated but it WILL >: be the last instruction the simulator does so it does not matter ... if >: a program evaluates this instruction BEFORE the second program is dead >: it looses, if it does not execute the WIN instruction at all it's a tie >: ... the game would go on even with a single program until the cycles is >: up or a WIN is executed ... to illustrate how a simple porgram would do >: this is > >It's interesting to me that you created a Redcode change. I think most >Authors will tend to think in these terms initially. > >This section was in regards to changes to the MARS. An example would be a >register which both programs could access. Players would be attempting to >set this register to their number. The winner would be the program with >it's number in the register at the end of play. well it would be a change to MARS ... and actually it would be very similiar to setting reagister .. you have to execute a WIN instruction with your number ... any MARS change requires a change to Redcode ... since you have to provide a way to access that change ... but MARS is the computer that runs the two programs, so IT decides which won ... so making the rules for winning different is a definate change to MARS ... another thing that sounded really interesting to me was the neverending battle ... something like a multiwarrior hill that would be allways fighting .. when your program dies you are sent an e-mail ... for this i think the core would have to be great and the rules of MARS AND REDCODE would have to be greatly changed to allow a long time execution ... though maybe if the core was really HUGE then programs of type radar could survive a long time ... I would though prohibit a lot of proccesses to disallow papers just spreading everywhere ... >John - Franz From: PK6811S@ACAD.DRAKE.EDU Subject: Re: MARS Date: 1996/11/26 Message-ID: <01ICANEHT72E005H4Z@ACAD.DRAKE.EDU>#1/1 newsgroups: rec.games.corewar >It is not the intention of this post to cause change that is inconsistant >with the original intent of the game. There are those who enjoy playing the game, those who enjoy playing with the tools of the game (pMars, hills, etc..), and those who enjoy playing with the rules of the game. I'm mostly in the first, with a little in the second. However I support the discussion of a new game which implements the 'orginial intent' in a different form. Decide the overall form of the game (rules, goals, scoring, etc..), agree on an underlying coding scheme, and go for it. Just give it a different name :-) Let's agree that no amount of tinkering will make CoreWar into 'the perfect game' that is interesting and challenging to everyone, and let it spawn a set of related games that people can choose to play. Like soccer, rugby, and American football. Some things that make CoreWar work: 1. Authors can create and test code on their own machines. 2. Standing hills permit 24-hour 7-day access for international participation. 3. Tournaments to boost interest and try out rules varations. 4. Active newsgroup. 5. Supporting web sites with archives and documentation. 6. Standard, portable simulator. 7. Interesting, intelligent participants. We could make a case for keeping CoreWar in its present form (94 extended rules with p-logic) as a link to the original Dewdney's articles, and to the early years of the International CoreWars Society, its newsletters and tournaments. And create new games - OpWar, RootWar, whatever. Don't be afraid that people will not support the new games. After all nobody was playing CoreWar when Dewdney first published. New games have to snowball on their own merits, not dragging old players along but catching the interest of new players. Set up a 'capture the root' game and post a notice on Unix-interest group boards. Bet you'll get a lot of interest. Paul Kline pk6811s@acad.drake.edu From: francis.irving@vegauk.co.uk (Francis Irving) Subject: Re: Tierra and redcode Date: 1996/11/26 Message-ID: <329c26f7.17758405@news.demon.co.uk>#1/1 references: newsgroups: rec.games.corewar On Tue, 19 Nov 1996 22:04:26 -0400, bushbo@xtdl.com (Brian O. Bush) wrote: >from the comp.ai.alife group: >> actually long long time ago there was a discussion about 2 or 3 >> dimensional redcode > >speaking of 2D instruction sets, how would one go about implementing a >2D instruction. Take for example MOV #4, $4 >How would one interpret this in a 2D environment? There are eight possible >directions to move around any one cell. I am trying to basically implement >a 2D corewars system (evolutionary, of course), in a similar vein to >VENUS. > >thanks, >Brian The obvious way is to have two relative addresses instead of one. i.e. one for each dimension. I'm not sure if that would be any good for evolution, though. Constants cause problems anyway, and that just doubles the problem... Francis. From: francis.irving@vegauk.co.uk (Francis Irving) Subject: Re: 3D Date: 1996/11/26 Message-ID: <329f2b9b.18945609@news.demon.co.uk>#1/1 references: <32247905.5557641@news.demon.co.uk> <503oeo$2uc@mercury.hgmp.mrc.ac.uk> <56j8ll$4l9@dodgson.math.psu.edu> <472EBE33FF%mouse@cheesey.demon.co.uk> <32927FF5.96FAF2@azstarnet.com> <32955099.62FF@aimnet.com> newsgroups: rec.games.corewar On Thu, 21 Nov 1996 23:04:57 -0800, Jim Lavery wrote: >I was thinking last night about a three dimension space. >Given modern machines with 32Meg plus perhaps swap space >3D is tractable. > >at 100X100X100 that is "only" 1,000,000 >actually 128 (or 256) would be beter since >address computations are quicker > >I would be willing to lend a hand at doing something to advance the >art. My background is math/physics. I have been a programmer >since '75. > 3D sounds a bit scary! Each dimension (well, the first few anyway) added will make the character of the game very different. It would be incredibly hard to find the enemy in a 3D environment - I think results from random walk theory would be relevant here. Would you, or anyone else, be interested in implementing a general 2D/3D Corewar type environment? Francis. From: francis.irving@vegauk.co.uk (Francis Irving) Subject: Re: Tierra, Redcode, toleration and mutation Date: 1996/11/26 Message-ID: <329b261a.17536783@news.demon.co.uk>#1/1 references: <19199603.Amiga@sci.fi> newsgroups: rec.games.corewar On Tue, 19 Nov 1996 19:22:54 GMT, iltzu@sci.fi (Ilmari Karonen) wrote: >Rik Griffin (mouse@cheesey.demon.co.uk) wrote: >Well, the natural way to represent core would be a circle, but that's >not exactly the most efficient way to use the display area. =) I don't >think there's any other efficient way to represent 1-dimensional space >on a 2d display than just letting it wrap around. But if you want to >have a bit more intuitive display than just stuffing it all together, >I'd suggest leaving more space between the lines than between pixels on >a single line. That'd reduce the false illusion of closeness, like > > #####::::::##::::::::::::#:#######:::###:::::###:## > > ######::#:::#:::::::###:###::::::::::::##:::::::### > > ::####::#:::###:::::::::::#:#######::#:::::::####:: > >looks better than > > #####::::::##::::::::::::#:#######:::###:::::###:## > ######::#:::#:::::::###:###::::::::::::##:::::::### > ::####::#:::###:::::::::::#:#######::#:::::::####:: > > Or even the snake-like: #####::::::##::::::::::::#:#######:::###:::::###:## # ######::#:::#:::::::###:###::::::::::::##:::::::### : ::####::#:::###:::::::::::#:#######::#:::::::####:: ... which I guess might be a bit confusing. Francis. From: jklewis@ren.us.itd.umich.edu (John K. Lewis) Subject: Re: MARS Date: 1996/11/26 Message-ID: <57f8od$iv2@lastactionhero.rs.itd.umich.edu>#1/1 references: <57d3vf$plm@lastactionhero.rs.itd.umich.edu> <329A8FE2.701DB444@azstarnet.com> newsgroups: rec.games.corewar Franz (franz@azstarnet.com) wrote: : > MARS has the potential to be the most interesting part of Core : > War. Imagine a MARS where control was determined by which program gained : > "root" status. Imagine a MARS with registers that where shared between : > opposing programs. Imagine a MARS which ran continuously, and to which : > Authors could summit programs at any time. : : Well ther could be a special instruction having to be executed after a : program wins the game so that it gets points for the win ... lets say a : WIN instruction, it has any arguments, which are evaluated but it WILL : be the last instruction the simulator does so it does not matter ... if : a program evaluates this instruction BEFORE the second program is dead : it looses, if it does not execute the WIN instruction at all it's a tie : ... the game would go on even with a single program until the cycles is : up or a WIN is executed ... to illustrate how a simple porgram would do : this is It's interesting to me that you created a Redcode change. I think most Authors will tend to think in these terms initially. This section was in regards to changes to the MARS. An example would be a register which both programs could access. Players would be attempting to set this register to their number. The winner would be the program with it's number in the register at the end of play. John - -- < john k. lewis > < jklewis@umich.edu > < 77325 > < sig.virus 1.5 > From: netbiz@telysis.telysis.com Subject: Hello Date: 1996/11/26 Message-ID: #1/1 newsgroups: rec.games.corewar *** I CAN INEXPENSIVELY SCAN YOUR PHOTOS AND SEND THE IMAGES DIRECTLY TO YOUR COMPUTER VIA E-MAIL ATTACHMENT*** 3 for $5 8 for $10 * PORTRAITS * SNAPSHOTS / POLAROIDS * PORTFOLIOS * ADULT-ORIENTED PHOTOS * PRODUCT / COMMERCIAL-TYPE PHOTOS * SKETCHES / DRAWINGS / ARTWORK * TEAMS / SPORTS PHOTOS * WEDDING PHOTOS * High Resolution / Excellent Quality ** All images are scanned and e-mailed to you the SAME DAY they are received. Please visit my website to view sample photos and receive ordering information: http://www.tristate-mall.com/users/greg Or, to receive complete ordering information via E-Mail, please reply to: photos@telysis.com From: master_splinter@tunnels.com Subject: This Works $$$ Date: 1996/11/26 Message-ID: <329a5599.31284420@news.inet-direct.com> newsgroups: rec.games.corewar *** EASY MONEY - FAST!!! *** THIS IS THE FAIREST MOST HONEST WAY I KNOW TO SHARE THE WEALTH! Would you like to make thousands of dollars, quick, legally, with NO CATCH? Then keep reading....please take five minutes to read this article it will change your life, just like it did mine. It's true! You can make up to or over $50,000 dollars in 4-6 weeks, maybe sooner! I SWEAR I'M NOT LYING TO YOU, AND THIS IS NOT A SCAM! If you're interested, keep reading; if you're not, I apologize for wasting your time. Here we go. A little while back, I was browsing through these newsgroups, just like you are now, and came across an article similar to this that said you could make thousands of dollars in weeks with only an initial investment of $5! So, I thought, "Yeah, right, must be a scam", but I was curious, like most of us, so I kept reading. Anyway, it said that you send $1 to each of the 5 names and addresses stated in the article. You then place your own name and address in the article at the bottom of the list at #5, and post the article in at least 200 newsgroups (there are thousands). No catch, that was it! So after thinking it over, talking to a few people first, I tried it. I figured what have I got to lose except for 5 stamps and $5, right? Well, guess what... within 7 days, I started getting money in the mail! I was shocked! I still figured it would end soon, and didn't give it another thought. But then money kept coming IN, tripling in size and multiplying by 10-20 times the amount that I got the first week! In my first week I made about 20 to 30 dollars. But by the end of the second week, I had made a total of over $1,000!!!! In the third week, I had over $10,000 dollars, and it's still growing. This is my fourth week and I've made about $42,000 TOTAL, and the money is still coming in..... Let me tell you how this works and most importantly, WHY it works... also, make sure you print a copy of the article NOW, so you get the informatoin off of it, and begin making money. The process is very simple, and it consists of 3 EASY steps: STEP 1: Get 5 seperate pieces of paper and write the following on each sheet of paper..."PLEASE PUT ME ON YOUR MAILING LIST. YOU ARE NUMBER 4." Get five $1 bills and place ONE inside each piece of paper that you just wrote on, and fold each piece of paper so the bill will not be seen in the envelope (otherwise, nosey people who like to steal envelopes with money in it will get yours). Put one paper inside the envelope and seal it. Do the same for all 5. You should now have 5 envelopes sealed, EACH have a piece of paper AND a $1 bill stuffed inside of the paper. Make sure those words that were stated above are stated on each paper. What you are doing is creating a service by this, this is PERFECTLY LEGAL. Now then, mail the 5 envelopes with the paper and $1 in each to the following 5 addresses: 1. N. Johnson 3849 Klahanie Dr SE #3-304 Issaquah, WA 98029 2. Nancy Shain Rt 3 Box 3396 Poplar Bluff, MO 63901 3. Jeremiah Stuppy 467 Enders Rd Halifax, PA 17032 4. Dan Wood 1201 #A Anderson St San Clemente, CA 92672 5. S. Stapleton 6329 Hwy 135 N. Lake City, AR 72401 STEP 2: Now take the #1 name off the list that you see above, move the other 4 names up (5 becoming 4, 4 becoming 3, ect.) and put YOUR NAME as number 5 on the list. You can slightly alter this article if you need to, editing what you need to edit. STEP 3: Post your amended article (with your name at #5) to at least 200 news groups (I think there are close to 18,000 of them). All you need is say, at least 200. HOW TO DO THIS: If you have Netscape 3.0 do EXACTLY the following: 1) Click on any news group like normal, THEN click on 'TO NEWS', which is on the far left when you're in the newsgroups page. This will bring up a box to type a message in. 2) Leave the newsgroup box like it is, CHANGE the subject box to something flashy, like, "NEED CASH $$$ READ HERE $$$" or "FAST CASH"!!! 3) Tab once and you should be ready to type. Now, retype (only once) THIS whole article WORD FOR WORD, except to insert your name at #5, and to remove #1 off the list, plus any other small changes you think you need to make. Keep almost all of it the SAME! 4) When you're done typing the WHOLE article, click on FILE in THIS BOX, RIGHT ABOUVE SEND, NOT WHERE IT SAYS NETSCAPE NEWS ON THE FIRST BOX. Click on SAVE AS when you're under FILE. Save your article as a text file to your C: or A: drive. DO NOT SEND OR POST YOUR ARTICLE UNTIL YOU DO THIS. Once saved, move on to number 5 below. 5) If you still have all of your text, send or post to this newsgroup now by just clicking send, which is right below FILE, and right above Cc: . 6)Here's where you're going to post all 200. OK, click on any news group then click on 'TO NEWS', again in the top left corner. Leave the NEWSGROUPS BOX alone again, put a flashy subject title in the SUBJECT BOX, hit TAB once you're in the body of the message, and then click on ATTACHMENTS, which is below the SUBJECT BOX. You will get another box to come up. Click on ATTACH FILE, then find YOUR file that you saved; click once on the file, and then click OPEN' now click on OK; if you did this right, you should see your file name in the attachments box, and it will be shaded green. IF YOU USE IE EXPLORER IT'S JUST AS EASY... HOLDING DOWN THE LEFT MOUSE BUTTON, HIGHLIGHT THIS ARTICLE. THEN PRESS THE "CRTL" KEY AND THE "C" KEY AT THE SAME TIME TO COPY THIS ARTICLE. THEN PRINT THIS ARTICLE FOR YOUR RECORDS TO HAVE THE NAMES OF THOSE YOU WILL BE SENDING $1 BILLS TO. NEXT GO TO THE NEWS GROUPS AND PRESS "POST AN ARTICLE", A WINDOW WILL OPEN. TYPE YOUR HEADLINE IN THE SUBJECT AREA AND THEN CLICK IN THE LARGE WINDOW BELOW. PRESS "CRTL" AND THEN "V" AND THE ARTICLE WILL BE PLACED IN THE WINDOW. IF YOU WANT TO EDIT THE ARTICLE, DO SO AND THEN HIGHLIGHT AND COPY IT AGAIN. NOW EVERYTIME YOU POST THE ARTICLE IN A NEW NEWSGROUP YOU ONLY HAVE TO REPEAT "CTRL" AND "V" AND PRESS POST. 7)That's it. Each time you do this, all you have to do is type in a different newsgroup, so that way, it posts to 200 DIFFERENT newsgroups, you see? Now you just have 199 to go!! (Don't worry, each one takes about 30 seconds, once you get used to it) REMEMBER 200 IS THE MINIMUM. The more you post the more money you will make. AND THAT'S IT!!! THAT'S THE ONLY 3 STEPS THERE IS!!! You are now in the mail order business and will start recieving your $1 envelopes from various people all over the world within days. HINT: THE MORE NEWSGROUPS YOU POST TO, THE MORE MONEY YOU WILL MAKE. You may want to rent a PO Box eventually because of all the mail. Just make sure all the addresses are CORRECT, please. LET ME TELL YOU WHY THIS SYSTEM WORKS!!!! Out of every 200 postings, let's say I ONLY receive 5 replies, which is actually VERY LOW. So I made 5 dollars with my name at #5. Now then, each person who just sent me $1 makes, say only 200 postings, now with your name at number 4, WHICH IS A TOTAL OF 1000 POSTINGS, not including yours too. 50 people send you $1 now; thats $50 you just made! Now, then your new 50 agents post 200 each with YOUR NAME AT NUMBER 3, OR 10,000 POSTING (50x200). Average return is 500 at $1 each is $500. They make 200 postings, which is 5,000 returns at $1 each, which is $5000 dollars! And finally, 5000 people make 200 postings wach with YOUR NAME AT NUMBER 1. YOU NOW GET A RETURN OF $50,000 BEFORE YOUR NAME DROPS OFF THE LIST. AND THAT'S IF EVERYONE MAKES 200 POSTINGS ONLY, AND IF ONLY 5 PERSONS RESPOND!!!!! When your name is no longer on the list, you just take the latest posting that is appearing in the newsgroups, and SEND OUT ANOTHER $5 TO THE NAMES ON THE LIST, PUTTING YOUR NAME AT 5 AGAIN. And start posting again. The thing to remember is, do you realize that THOUSANDS OF PEOPLE ALL OVER THE WORLD ARE JOINING THE INTERNET AND READING THESE ARTICLES EVERY DAY, JUST LIKE YOU ARE RIGHT NOW!!! So can afford $5 dollars to see if it really works? I think so..... People have said, "What if the plan is played out and no one sends you the money?" So what! What are the chances of that happening when there are TONS OF NEW HONEST USERS AND NEW HONEST PEOPLE who are joining the Internet and newsgroups everyday and are willing to give it a try? Estimates are at 20,000 to 50,000 new users, every day, with THOUSANDS of those joing the actual Internet. Remember, play FAIRLY and HONESTLY and this WILL WORK, I PROMISE YOU!!! You just have to be honest. Make sure you print this article out RIGHT NOW, also, try to keep a list of everyone that sends you money and always keep an eye on the newsgroups to make sure everyone is playing fairly. REMEMBER, HONESTY IS THE BEST POLICY. YOU DON'T NEED TO CHEAT THE BASIC IDEA TO MAKE MONEY!! GOOD LUCK TO ALL AND PLEASE PLAY FAIRLY AND YOU WILL REAP THE HUGE REWARDS FROM THIS, WHICH IS TONS OF EXTRA CASH!!! **By the way, if you try to decieve people by posting the messages with your name on the list and not sending the money to the people already on the list, you will not get much. Someone I talKed to knew someone who did that and he only made $150 dollars, and that's AFTER seven or eight weeks! Then he sent the 5 $1 bills, people added him to their lists, and in 4-5 weeks, he had over $10K. THIS IS THE FAIREST AND MOST HONEST WAY I HAVE EVER SEEN TO SHARE THE WEALTH OF THE WORLD WITHOUT COSTING ANYTHING BUT OUR TIME!!! From: Franz Subject: Re: 3D Date: 1996/11/27 Message-ID: #1/1 references: <199611270522.XAA09101@mail.utexas.edu> newsgroups: rec.games.corewar >>I'm definatly interested but i don't have much time .. but i would "lend a >>hand" > >Well... the dimension could be expanded as far as you want, obviously... >but I would recommend looking into the feasability of 2D first. :) I don't think that would be the problem, I think that 2D is quite different and in my point of view not that hard to implement. anyway .. I think it won't be hard for the simulator ... but imagine how hard will it be to write 3D warriors ... 2D you can do easily ... Franz From: rics@dcs.ed.ac.uk (Richard Smith) Subject: Re: about Easy cash!! posters Date: 1996/11/27 Message-ID: #1/1 references: <328fb69e.10306497@news.uquebec.ca> <574o7u$sfi@lyra.csx.cam.ac.uk> <32962064.5409@roanoke.infi.net> <329998B6.41C6@ucl.ac.uk> <57ca43$kol@news.uit.no> newsgroups: rec.games.computer.quake.editing,rec.games.computer.quake.playing,rec.games.computer.quake.servers,rec.games.computer.stars,rec.games.computer.xpilot,rec.games.design,rec.games.corewar,rec.games.go,rec.games.mecha,rec.games.misc,rec.games.mud.lp,rec.games.mu How about some way of sending articles with huge threads like these to a "special" newsgroup like alt.twats.spammers or alt.if_you_know_this_person_shoot_him.revengers? It's a bit revolutionary but it might just work. "You mess with me, you mess with my internet discussion group." Cry of the New Age Mafia From: jwilkinson@mail.utexas.edu Subject: Re: 3D Date: 1996/11/27 Message-ID: <199611270522.XAA09101@mail.utexas.edu>#1/1 newsgroups: rec.games.corewar >>Would you, or anyone else, be interested in implementing a general >>2D/3D Corewar type environment? > >I'm definatly interested but i don't have much time .. but i would "lend a >hand" Well... the dimension could be expanded as far as you want, obviously... but I would recommend looking into the feasability of 2D first. :) From: Jeff Jacob Subject: Re: MARS Date: 1996/11/27 Message-ID: #1/1 newsgroups: rec.games.corewar > MARS has the potential to be the most interesting part of Core > War. Imagine a MARS where control was determined by which program gained > "root" status. Imagine a MARS with registers that where shared between > opposing programs. Imagine a MARS which ran continuously, and to which > Authors could summit programs at any time. > > > I share these ideas with you because I have a hope that Core War will > continue to interest me. I first started playing Core War in 1987. Over > time I have watched it evolve, slowly, into it's current form. I think > this is only the first step in an evolution of programming games and I want > to be there for the second and third steps. I am interested in you > opinions and observation. I am interested in you input. I know you wont > let me down. > > John - > > -- > < john k. lewis > < jklewis@umich.edu > < 77325 > < sig.virus 1.5 > > Here is an idea for a new programing came I think that should be made (by me if I get time.) It works on a flat surface where each person prgrams a robot with properties of movemnet and attack. The object would be to destroy the outher robots by tracking them down by a homing beakon they broduce that can be called by other robots to get eather the distance or the direction of the other robot. It woul;d have to take so many clycles each. The robots wound have to be programed with manevering tactics to avoid the othes wepons. All lnes of code would taek a certain amout of time and wepons would do the same anout of damage for every hit. Posibly base it in object oriented code or have two iffernt one with object orient code and one with asmler like code. Tell me what you think. Signed Jeff Jacob The greatest programing progect ever took 6 days and 6 nights, We've been trying to debug the bloody think ever sence. From: icculus1@aol.com Subject: Make Cash $$$ Date: 1996/11/27 Message-ID: <19961127011600.UAA18878@ladder01.news.aol.com> newsgroups: rec.games.corewar THIS IS THE FAIREST MOST HONEST WAY I KNOW TO SHARE THE WEALTH! Hello!! Would you like to make thousands of dollars, quickly, legally, with NO CATCH? Then keep reading......please take five minutes to read this article- it will change your life, just like it did mine. It's true! you can make up to or over $50,000 dollars in 4-6 weeks, maybe sooner! I SWEAR I'M NOT LYING TO YOU, AND THIS IS NOT A SCAM! If you're interested, keep reading; if you're not, I apologize for wasting your time. Here we go, A little while back, I was browsing through these newsgroups, just like you are now, and came across an article similar to this that said you could make thousands of dollars in weeks, with only an initial investment of $5! So, I thought, "Yeah, right, must be a scam". but I was curious, like most of us, so I kept reading. Anyway, it said that you send $1 to each of the 5 names and addresses stated in the article. You then place your own name and address in the article at the bottom of the list at #5, and post the article in at least 200 newsgroups (there are thousands). No catch, that was it! So after thinking it over, talking to a few people first, I tried it. I figured what have I got to lose except for 5 stamps and $5, right? Well, guess what....within 7 days, I started getting money in the mail! I was shocked! I still figured it would end soon, and didn't give it another thought. But then money kept coming IN, tripling in size and multiplying by 10-20 times the amount that I got the first week! In my first week I made about 2- to 30 dollars. But by the end of the second week, I had made a total of over $1,000!!!!!! In the third week, I had over $10,000 dollars, and it's still growing! This is my fourth week (Nov 13) and I've made about $42,000 TOTAL, and believe it or not the money is still coming in....... Let me tell you how this works and most importantly, WHY it works...also, make sure you print a copy of this article NOW so you get the information from it, and begin making money. The Process is very simple, and it consists of 3 EASY steps: STEP 1: Get 5 seperate pieces of paper and write the following on each sheet of paper..."PLEASE PUT ME ON YOUR MAILING LIST". YOU ARE NUMBER 4. get five $1 bills, and place ONE inside each piece of paper that you have just written on, and fold each piece of paper so the bill will not be seen in the envelope (otherwise, nosey people who like to steal envelopes with money in it will get yours). Put one paper inside the envelope and seal it. Do the same for all 5. You should now have 5 envelopes sealed, EACH having a piece of paper and the $1 bill inside. NOTE: make sure those words that were stated above are written on each piece of paper. What you are doing is creating a service by this. This is PERFECTLY LEGAL. Now, mail the 5 envelopes with the paper and $1 in each to the following 5 addresses. 1. Lars Westin Bj rkv gen 3 740 12 Knutby SWEDEN 2. D. Hill, 4280 150 6 Ave. S.W., Calgery, AB, Canada T2P 3Y7 3. Mattias W sernanders v g 1 rum 535 752 61 Uppsala Sweden 4. Jeff Boldrick, RR#2 Tweed, Ontario K0K3J0 5. W Adams 13 Springdale Lane , Spartanburg , SC , 29302 STEP 2: Now take the #1 name off the list that you see above, move the other 4 names up (5 becoming 4, 4 becoming 3, etc.) editing what you need to edit. STEP 3: Post your amended article ( with your name at #5) to at least 200 news groups ( there are around 10,000 of them!!). All you need is say, at least 200. HOW TO DO THIS: If you have netscape 3.0 do EXACTLY the following: 1) click on any news group like normal, THEN click on 'TO NEWS', which is on the far left when you're in the newsgroups page. This will bring up a box to type a message in. 2) Leave the newsgroup box as it is, but CHANGE the subject box to somehting eye-catching, like, "NEED CASH $$$ READ HERE" $$$ or "FAST CASH" !!! 3) Tab once and you should be ready to type. Now, Copy and paste or retype (only once) THIS WHOLE ARTICLE, word for word, except to insert your name at #5, and to remove #1 off the list, plus any other small changes you think you need to make. Keep almost all of it the same. 4) When you're done typing(Copy/Paste) the whole article, click on FILE in THIS BOX, right above send, NOT where it says netscape news on the first box. Click on SAVE AS when you're under FILE. Save your article as a Text file to our c: or A: drive. DO NOT SEND OR POST YOUR ARTICLE UNTILL YOU HAVE SAVED IT. Once saved, move on to number 5 below. 5) If you still have all of our text. send or post to this newsgroup now by simply clicking send, which is right below AFILE, and right above the Cc: button. 6) Here's where you're going to post all 200. OK, click on any newsgroups then click on 'TO NEWS', again (in the top left hand corner of your netscape navigator. Leave the newsgroups box alone again, put your eye-catching title in the SUBJECT BOX, hit tab once you're in the body of the message, and then click on ATTACHMENT, which is below the subject box. You will get another box to come up. Click on ATTACH FILE, then find YOUR FILE THAT YOU HAVE SAVED; click once on this file, and then click OPEN. NOw click on OK. If you did this right, you should see our file name in the attachments box, and it will be shaded green. IF YOU USE I.E EXPLORER, IT'S JUST AS EASY: Holding down the left mouse button, highlight this article. Then press the "CTRL" key and the "C" key at the same, to copy this article. Then print this article for your records to have the names of those you will be sending $1 bills to. Next, go to the news groups and press "POST AN ARTICLE". A window will open. Type in your headlines in the subject area and then click in the large windows below. If you want to edit the article, do so and then highlight and copy it again. Now everytime you post the article in a newsgroup all you have to reat is "CTRL" and "V" and press POST. 7) That's it! Each time you do this, all you have to do is type in a different newsgroup, so that way, it posts to 200 DIFFERENT newsgroups. You See? Now you just have 100 to go!! (Don't worry, each one takes about 30 seconds, once you get used to it). REMEMBER, 200 IS THE MINIMUM. The more you post, the more money you will make. You are now in the mail-order business and will start receivng your $1 enveloopes from various people all over the world, within days! HINT: THE MORE NEWSGROUPS YOU POST TOK THE MORE MONEY YOU WILL MAKE. You may want to rent a PO Box eventualy, because of all the mail. If you wish to stay anonymouse, you can come up with a name, such as "manager" or " investor". Just make sure all the address that you have typed in for the 4 people plus yourself are correct, please. LET ME TELL YOU WHY THIS SYSTEM WORKS! Out of every 200 posting, let's say I ONLY receive 5 replies, which is actually VERY LOW. So I made 5 dollars with my name at #5. Now, each person who just sent me $1 makes, say, only 200 posting, now with your name at number 4, WHICH IS A TOTAL OF 1000 POSTINGS, not including yours too. So people send you $1 now-that's $50 you have just made! Next, your new 50 agens each post 200 newsgroups with your name at number #3, or 10,000 POSTINGS (50x200 = 10,000). The average return is 500 at $1 each, so $500. They make 200 postings, which is 5,000 returns at $1 each, which is $5,000 dollars! and finally, 5,000 people make 200 postings with YOUR NAME AT NUMBER 1. YOU NOW GET A RETURN OF $50,000 BEFROE YOUR NAME DROPS OFF THE LIST. AND THAT'S IF EVERYONE ONLY MAKES 200 POSTINGS, AND IF ONLY 5 PEOPLE RESPOND!!!!!! When your name is no longer on the list, you simply take the latest posting that is appearing in the newsgroups, and SEND OUT ANOTHER $5 TO THE NAMES ON THE LIST. PUTTING YOUR NAME AT #5 AGAIN. And start posting again. The thing to remember is, THOUSANDS OF PEOPLE ALL OVER THE WORLD ARE JOINING THE INTERNET AND READING THESE ARTICLES EVERY DAY- just like you are right now!!! So can you aford $5 to see if it really works? I think so................... People have said, "What if the plan is played out and no one sends you the money?" So what! What are the chances of that happening when there are TONS OF NEW HONEST USERS AND NEW HONEST PEOPLE who are joining the internet and newsgroups every day and are willing to give it a try? Estimates are at 20,000 to 50,000 new users, every day with THOUSANDS of those actually joining the internet. Remember, PLAY FAIRLY, AND HONESTLY, and this WILL WORK, I promise you!!!! You just to be honest. Make sure yhou print this article RIGHT NOW. Also, try to keep a list of everyone that sends you money and always keep an eye on the newsgroups to make sure everyone is playing fairly. REMEMBER: HONESTY IS THE BEST POLICY! You don't need to cheat the back idea is to make money! GOOD LUCK TO ALL PLEASE PLAY FAIRLY, AND YOU WILL REAP THE HUGE REWARDS FROM THIS-TONS OF EXTRA CASH!!!! One last note: If you try to deceive people by posting the messages with your name on the list and not sending the money to the poeple already on the list you won't get much. Someone I talked to knew someone who did that and he only made $150 dollars, and that's after seven or eight weeks! Then he sent the 5 $1 bills, people added his to their list, and in 4-5 weeks he had over $10,000!!! THIS IS THE FAIREST AND MOST HONEST WAY I HAVE EVER SEEN TO SHARE THE WEALTH OF THE WORLD WITHOUT COSTING US ANYTHING BUT OUR TIME, $5 AND FIVE POSTAGE STAMPS! From: Joachim Pileborg Subject: A small question... Date: 1996/11/27 Message-ID: <329B7D74.372E@pt.hk-r.se>#1/1 newsgroups: rec.games.corewar Is this the right place to ask questions about CRobots? If so, is there a UNIX version of CRobots availible? With source? / Joachim -- ------------------------------------------------------------------------ The Arrow Arrow@Shadow World - mud.fukt.hk-r.se 4000 Joachim Pileborg Email: pilen@fukt.hk-r.se Svarvarev�gen 5 37230 Ronneby http://www.fukt.hk-r.se/~pilen/ SWEDEN ------------------------------------------------------------------------ From: Yvan Brandsteert Subject: Re: MARS Date: 1996/11/28 Message-ID: <329D85BF.6E2@swn.sni.be>#1/1 references: newsgroups: rec.games.corewar Jeff Jacob wrote: > Here is an idea for a new programing came I think that should be made (by > me if I get time.) It works on a flat surface where each person prgrams a > robot with properties of movemnet and attack. The object would be to > destroy the outher robots by tracking them down by a homing beakon they > broduce that can be called by other robots to get eather the distance or > the direction of the other robot. It woul;d have to take so many clycles > each. The robots wound have to be programed with manevering tactics to > avoid the othes wepons. All lnes of code would taek a certain amout of > time and wepons would do the same anout of damage for every hit. Posibly > base it in object oriented code or have two iffernt one with object > orient code and one with asmler like code. > Such a game already exists for the Macintosh; it is called RoboWar. You can find more information at the following URL: http://www-leland.stanford.edu/~harrisd/robowar.html Here is an excerpt from the home page: "RoboWar is a shareware game for the Macintosh in which you program robots, then turn them loose in the arena for animated combat to the death. RoboWar features a complete programming environment for its unique language, RoboTalk; a Hardware Store, Icon Factory, and Recording Studio in which you can equip your robot and add pictures and sounds; and the Arena with a sophisticated robot simulator." Try it if you can; it's really a great game ! Yvan Brandsteert From: FREE GIFT Subject: (UEC) FREE!!! Date: 1996/11/29 Message-ID: <199611292021.PAA12279@Arl-Mail-Svc-1.compuserve.com>#1/1 newsgroups: rec.games.corewar Hi: I am sending you this message because I want to give you a FREE GIFT!! - If you don't want to receive a NO OBLIGATION FREEBIE, then this message reached you in error. Please just delete it and move on. If you would like to receive a NO OBLIGATION FREE GIFT - then read on... First I would like to ask you a question... What Will it Take For YOU To Seriously Look At Your Nutrition??? Arthritis? Stroke? Cancer? Heart Disease? High blood pressure? Dr. Linus Pauling (winner of two Nobel prizes) says "you can trace every sickness, disease or ailment in the human body to a nutritional deficiency." You can either head towards a more vital state of health or you can stay on the path many people are treading--the path that leads to, you know where�.disease!! It is YOUR choice and YOU have the answer right here! Dr. Joel Wallach, (Nobel Prize nominee in medicine, Dr. of Veterinary Medicine and Dr. of Medicine) found, that in the 20,500 autopsies he performed on people and animals, all who died of natural causes had a nutritional deficiency! To get your FREE GIFT - the well-known audio tape "Dead Doctors Don't Lie", reply to this message with your name and street mailing address After you get it, LISTEN TO IT IMMEDIATELY. We think you will agree that the product discussed will put you on the right path to a healthy body and help you ward off some of the common diseases we face today. Sincerely wishing YOU vibrant health, Suzanne & Associates P.S. if you know someone who would benefit from receiving this vital information, please forward this message to them. ********************************************************************* If you would like to be REMOVED from this list Just REPLY with "REMOVE" in the SUBJECT area. You will be promptly REMOVED! From: Scott Manley Subject: Re: MARS Date: 1996/11/29 Message-ID: <9611291059.AA03364@alpha3.arm.ac.uk>#1/1 newsgroups: rec.games.corewar Out of interest, Has anyone looked at the various Borg Client tournaments which happen from time to time in games like X-Pilot, NetTrek and most Recently Quake. Survival of the best artificial intelligence. -- Scott Manley (aka Szyzyg) /------ _@/ Mail -----\ ___ _ _ __ __ _ | Armagh Observatory | / __| __ ___| |_| |_ | \/ |__ _ _ _ | |___ _ _ | Armagh | \__ \/ _/ _ \ _| _| | |\/| / _` | ' \| / -_) || | | Northern Ireland | |___/\__\___/\__|\__| |_| |_\__,_|_||_|_\___|\_, | | BT61 9DG. | http://star.arm.ac.uk/~spm/welcome.html |__/ \=====================/ From: Martin Moller Pedersen Subject: Re: A small question... Date: 1996/11/29 Message-ID: <199611281903.UAA10188@lithium.daimi.aau.dk>#1/1 newsgroups: rec.games.corewar -> Is this the right place to ask questions about CRobots? yes. -> If so, is there a UNIX version of CRobots availible? With source? -> -> / Joachim -> maybe. Try my homepage at http://www.daimi.aau.dk/~tusk/pbmserv/crobots/ Cheers Martin M. Pedersen -> -- -> ------------------------------------------------------------------------ -> The Arrow Arrow@Shadow World - mud.fukt.hk-r.se 4000 -> -> Joachim Pileborg Email: pilen@fukt.hk-r.se -> Svarvarevdgen 5 -> 37230 Ronneby http://www.fukt.hk-r.se/~pilen/ -> SWEDEN -> ------------------------------------------------------------------------ -> -- / \__/ \__/ \__/ \__/ \ | _|@ @ __ | \________/ | | \________/ __/ _/ /o)(o _/ \____/ From: Justin Kao <102741.2022@CompuServe.COM> Subject: multiwarrior experimental hill Date: 1996/11/30 Message-ID: <961130014354_102741.2022_GHT115-1@CompuServe.COM>#1/1 newsgroups: rec.games.corewar Just recieved from the multiwarrior experimental hill: [snip] # Name Author Score Age 1 Evolve X John Wilkinson 5010 18 2 Victim 16 Pedro 5010 8 3 Wax Zul Nadzri 5010 6 4 Chain 4 Pedro 5010 3 5 Newest test Pedro 5010 17 6 Paperone Beppe Bezzi 5010 63 7 Test2 George Eadon 5010 38 8 A Big Milk Shake Christian Schmidt 5010 2 9 jaded M R Bremer 5010 49 10 U-lat Zul Nadzri 5010 9 11 Papyrus 4 Justin Kao 5010 16 12 TimeScapeX (0.1) J. Pohjalainen 5010 78 13 Paper8 G. Eadon 5010 44 14 Fork v0.2-9p/51b Christoph C. Birk 5010 20 15 Stamp II Franz 5010 11 16 Simply Everywhere D. D. Randel 5010 1 17 U-lat II Zul Nadzri 4988 4 18 Stamp Franz 4988 12 19 tRASH Franz 4988 7 20 This is Test1 Kurt Franke 4988 43 21 U-Lat II Zul Nadzri 4988 5 This is ridiculous! Justin From: cwhizard@aol.com Subject: Re: intelligent robots ... Date: 1996/11/30 Message-ID: <19961130200200.PAA00393@ladder01.news.aol.com>#1/1 references: <57b6dm$jbg@un3.satlink.com> newsgroups: rec.games.corewar In article <57b6dm$jbg@un3.satlink.com>, gooferx@satlink.com (Goofer) writes: > > >Ask him:........Do you remember a turtle????? > > And the human could simply pass the message on to the computer and provide its reply. The turing test only works to prove that something is at least so complex. I don't think it is possibe to create a test that a more complex mind will fail and a less complex mind will pass, since the definition of being more complex is the ability to mimic lesser minds. From: Franz Subject: Re: multiwarrior experimental hill Date: 1996/11/30 Message-ID: #1/1 references: <961130014354_102741.2022_GHT115-1@CompuServe.COM> newsgroups: rec.games.corewar > This is ridiculous! yup .. isn't there something wrong .. or definately something wrong with the scoring formula ... there has to be a better way to score so that you have more then two unique scores on the hill :) Franz