A secret witness denies lying to help convict David Tamihere of the Swedish backpacker murders.
Witness C is on trial for perjury because he later retracted his evidence that Tamihere confessed to him, but the witness says he did it because his life had been threatened.
In court on Wednesday, name and identity suppressed, Witness C said he stood by his evidence from 27 years ago.
He had said when he met Tamihere in Paremoremo Prison, Tamihere confessed to sexually assaulting and killing Swedish backpackers Heidi Paakonen and Sven Urban Hoglin.
"I was disgusted, I am no saint but I was disgusted," the witness said.
"I had difficulty comprehending how he could be boasting of such things."
Witness C became a police informant but six years later, he phoned Tamihere's brother John and swore an affidavit his evidence was false.
Witness C says he was forced to do that by two inmates.
"And that's when they had an iron bar and a metal blade and made threats," he said in court.
A year later, Witness C also retracted his evidence in an interview with the late broadcaster Paul Holmes.
Fast forward 12 years to 2007 and Witness C retracts his evidence again, this time in a letter to Tamihere. Again he says he was forced to do it by the same two inmates.
"They were same ones, they came into my cell wanting me to write this letter," he said.
Yet when prosecutor Murray Gibson asked who these men were, Witness C was reluctant to name them, fearing further repercussions.
It led to a tense exchange between the two, where Mr Gibson told him: "This is your time to man up [redacted], to confirm you fabricated that evidence in that trial."
But Witness C refused.
"Not at all, everything I said in that trial he said to me."
Witness C's testimony was the last bit of evidence in his defence of eight perjury charges and one of perverting the course of justice.
Prosecution and defence lawyers will sum their cases up tomorrow before Judge Whata makes his final address to the jury.