British actor Roger Moore, who played James Bond over two decades with a suave wit, dies aged 89, drawing tributes for his portrayal of the womanising superspy as well as for his charity work.