;redcode-94x ;name Fire and Ice II ;author David Moore ;strategy anti-imp scanner or stone with airbag ;assert CORESIZE==55440 org start ;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ; ; ; airbag stone + dclear ; ; ; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;; dDist equ (dBoot+43990) dGate equ -5 dStep equ 53421 ;dStep % 3 == 0 dbPos equ 11 dBoot spl dBoot2, >dDist+(dPtr-dTop)+dStep*1030 spl 1, >dDist+(dPtr-dTop)+dStep*1033 mov.i {0, #0 mov {dSpl, dBoot2 dAway1 dat dDist+1, dDist+(dLast-dTop)+1 dat 0, 0 dat 0, 0 dDat dat <27721, 5-dGate dSpl spl #dLast+1, {dSpl+dGate+2 mov dSpl+dGate+1, >dSpl+dGate djn.f -1, >dSpl+dGate dTop add.ab #dStep*2, dPtr mov >2, @dPtr dPtr mov <1, *(dStep*2) jmn.b dTop, dTop+dbPos dLast jmp dPtr+dStep, dAway1, sTop jmn.f -1, @sTop mov sWash, >sTop sGate slt.ab @sI1, #27 sI3 jmn.f sPtr, @sI2 sMain add.a #sStep-1, sPtr sStart jmz.f -1, }sPtr mov.a sPtr, @sI1 jmn.a sGate, *sI3 sSpl spl #0, 0 mov 2, >sGate djn.f -1, {sGate sBP dat sPtr, 3-sGate sWash stp.ab >0, #0 dat 0, 0 sBoot mov }sBP, >sAway mov }sBP, >sAway mov }sBP, >sAway mov }sBP, >sAway mov }sBP, >sAway djn sBoot, #4 spl *sAway, >sBoot sAway mod.f #sDist+(sStart-sPtr), #sDist dat 0, 0 end