anchor.diff:  type
     TStepDirection = (sdNone, sdUp, sdRight, sdDown, sdLeft);
   var
  -  PrevStep, NextStep: TStepDirection;
  +  NextStep: TStepDirection;
     SizeX, SizeY: Word;
   
     procedure Step(X,Y: SmallInt);
  
positive.code:         aMap[aY,aX] := 255; //Mark unpassable but visited
      end;
    var
      State: Byte;
    begin
      prevStep := nextStep;
  
      //Assemble bitmask
      State :=  Byte(IsTilePassable(X  ,Y  )) +
  
negative.code:   begin
      X := aStartX;
      Y := aStartY;
      NextStep := sdNone;
  
      SetLength(aOutlines.Shape, aOutlines.Count + 1);
      aOutlines.Shape[aOutlines.Count].Count := 0;
  