;redcode-94 ;name run and hit ;author Beppe Bezzi ;contact bezzi@iol.it ;NSFCWT round 7 entry ;assert CORESIZE == 8000 && MINDIST == 4000 ;strategy flee then shot (not always :-) org start RES equ #0 STR equ #299 vstep equ 8 proc equ 8 disp1 equ 0 disp2 equ 70 disp3 equ 140 disp4 equ 210 disp5 equ 280 disp6 equ 350 disp7 equ 420 disp8 equ -100 spacer equ 0 A0 equ 1800 A1 equ 3740 A2 equ -2024 ;Tornado equ step equ 95 count equ 530 away equ 4456 djnoff equ -2000 ;juliet equs ptr EQU -1333 ;Paper equ dest0 equ 2200 dest1 equ 3740 dest2 equ -1278 range equ 933 ;vector bomber equ target equ (zero+4000+20) zero q for 20 dat q%7, 1 rof point1 dat vbomb, vbomb+A0 vboot spl 1, 0, @vector1-A0 mov >0, @vector2-A0 mov >0, @vector3-A0 mov >0, @vector4-A0 mov >0, @vector5-A0 mov >0, @vector6-A0 mov >0, @vector7-A0 ;vector bombing ;break jmp clear1+A2-A0-5 vbomb dat 10, 10 point2 dat clear1+4,A2 bclear mov {point2,-5 djn.f -1, <-100 vector1 s for proc jmp pit-zero+4000-vstep-disp1,zero+4000+s*vstep+disp1 rof vector2 s for proc jmp pit-zero+4000-vstep-disp2,zero+4000+s*vstep+disp2 rof vector3 s for proc jmp pit-zero+4000-vstep-disp3,zero+4000+s*vstep+disp3 rof vector4 s for proc jmp pit-zero+4000-vstep-disp4,zero+4000+s*vstep+disp4 rof vector5 s for proc jmp pit-zero+4000-vstep-disp5,zero+4000+s*vstep+disp5 rof vector6 s for proc jmp pit-zero+4000-vstep-disp6,zero+4000+s*vstep+disp6 rof vector7 s for proc jmp pit-zero+4000-vstep-disp7,zero+4000+s*vstep+disp7 rof vector8 s for proc jmp pit-zero+4000-vstep-disp8,zero+4000+s*vstep+disp8 rof pit mov -1000, gate djmp djn.f clr, {gate-20 wip dat <2667, <20 split spl #wip-gate, #wip-gate+5 bombs spl #step, #1 ;break bombm mov step, 1 for 50 dat zero, zero+500 rof ;juliet storm (sorry Myer I'm very short of time :-) jgate dat <-445, <-446 s spl #445, <-445 spl #0, <-446 mov {445-1, -445+2 add -3, -1 djn.f -2, <-2667-500 mov 32, <-20 go dat #0, #ptr juliet mov {-1, <-1 mov {-2, <-2 mov {-3, <-3 mov {-4, <-4 mov {-5, <-5 mov {-6, <-6 mov jgate, ptr+24 mov jgate, ptr+24 jmp @go, <4000 for 50 dat 1,1 rof paper spl 1, <300 ;\ spl 1, <400 ;-> generate 8 consecutive processes spl 1, <500 silk spl @0, {dest0 mov.i }-1, >-1 silk1 spl @0, -1 ;copy self to new location mov.i bomba, }range mov {silk1, dest2 bomba dat <2667, <1 ;linear vector bomber vector mov