A 32-year-old cold case murder has been solved after the suspect turned himself in because he wants to “right the wrong that he has done.”

Glenn Adams, 58, was charged with first-degree murder and robbery Friday after he walked into the Cowlitz County Hall of Justice in Kelso, Washington and confessed to the 1986 killing of Russell Haines.

Haines was found strangled in his room at the Oregon Way Hotel after what officials suspected was an ambush and robbery.

Adams was living at the hotel, a men’s only hotel often used as temporary or low-income housing, at the time, but there were no suspects or witnesses.

According to court documents, Adams told police he needed money and knew Haines kept large amounts of cash on him.

44-YEAR-OLD COLD CASE APPARENTLY SOLVED IN CALIFORNIA

Adams reportedly said he waited for Haines to get home from the grocery store and, when Haines arrived, Adams put him in a chokehold, knocking him out.

When Haines began to wake up, Adams told police he tied a cloth around his neck, strangled him, and left. He made off with $400.

“Thirty years in the making, it got solved relatively easily,” Sgt. Chris Blanchard, a spokesperson for Longview Police Department, told KATU News. “We didn’t have any suspects that had sufficient evidence to charge at that point. The case was cold for the last 30 years.”

CALIFORNIA COPS USE FIRST-PERSON TWEETS IN BID TO SOLVE DECADES-OLD COLD CASE

Adams, who is currently homeless and has lived in California, Oregon and Washington, had attempted to turn himself in for the killing before. In July 2017, he went to police in Santa Barbara, California, intending to turn himself in but got cold feet about confessing to the cold case and left before officers could interview him.

Upon learning of this incident, Blanchard told KATU that they reopened the case.

Two months later, Longview investigators interviewed Adams while he was jailed on an unrelated matter.

At that point, he told them specific details about the murder and gave them a DNA sample but said he was not ready to provide a full confession because he wanted to speak to his brother.

On Friday, he finally confessed.

“He just wants to right the wrong that he has done,” Blanchard said.

During his first court appearance on Monday, Adams said he intended to plead guilty. His next court date is Thursday.

Longview police are currently reviewing the case for any additional information or evidence.