anchor.diff:      function TileIsGold(X, Y: Word): Byte;
       function TileIsCornField(Loc: TKMPoint): Boolean;
       function TileIsWineField(Loc: TKMPoint): Boolean;
  +    function TileIsWalkableRoad(Loc: TKMPoint): Boolean;
       function TileIsLocked(aLoc: TKMPoint): Boolean;
       function UnitsHitTest(X, Y: Word): Pointer;
       function UnitsHitTestF(aLoc: TKMPointF): Pointer;
  
positive.code:   end;
  
  var I, J: Integer;
      T: TKMTerrainTileBrief;
      Rect, HeightRect: TKMRect;
      DiagonalChangedTotal, DiagChanged: Boolean;
      BackupLand: array of array of TKMTerrainTile;
  
negative.code:   procedure UpdateRect(var aRect: TKMRect; X, Y: Integer);
    begin
      if KMSameRect(aRect, KMRECT_INVALID_TILES) then
        aRect := KMRect(X, Y, X, Y)
      else
        KMRectIncludePoint(aRect, X, Y);
    end;
  
  