Canadian TV actor Donnelly Rhodes, best known for his roles in ABC comedy "Soap" and cult hit "Battlestar Galactica," has died aged 80. Rhodes, who most recently starred in "The Flash" and "Legends of Tomorrow" as Agent Smith, reportedly died of cancer at the Baillie House Hospice in Maple Ridge, British Columbia, according to talent agency Northern Exposure.

Widely considered one of Canada’s leading character actors, Rhodes appeared in more than 160 films and TV series over the last 60 years. Born and raised in Winnipeg, Canada, he became an actor after training to be a warden in the National Park Service in Manitoba and joining the Royal Canadian Air Force as an airman-mechanic.

The Winnipeg-born actor received numerous awards over the years including a Gemini award for his role as Det. Leo Shannon in Canadian drama Da Vinci’s Inquest in 2002 and a Lifetime Achievement Award in 2006.

Stars we've lost in recent years

He played dim-witted escaped con Dutch in the ABC soap opera spoof "Soap," which ran for four seasons between 1978 and 1981, and Dr Cottle in Ronald D Moore’s sci-fi hit "Battlestar Galactica." He also had small roles on shows including "Mister Ed," "The Alfred Hitchcock Hour," "The Girl From U.N.C.L.E," "Cheers," "Taxi," "Hill Street Blues," "Golden Girls," "Murder She Wrote," "The X-Files," "The L Word," "Smallville" and "Tron: Legacy."

Rhodes is survived by his wife, Sarah, his daughter and his son.

Moore paid tribute to the actor in a tweet: