He's the illegal immigrant who won praise a year ago for helping Charlotte stop a rogue police officer who had been sexually assaulting women.

But on Christmas Eve, Moreno got into trouble himself: He was arrested for drunken driving - and ended up in a Georgia prison facing deportation.

Moreno, 30, spent most of the last four months in a cell, worrying that he had blown his chance to stay in the United States.

But Moreno won a reprieve.

He was awarded a special visa for helping authorities prosecute former Charlotte-Mecklenburg police Officer Marcus Jackson, who sexually assaulted six women - including Moreno's girlfriend.

Moreno played a key role in the case, risking his freedom to challenge the officer's behavior during a traffic stop.

He returned to Charlotte recently to resume the life he has built over the last seven years.

"I'm ready to confront my errors," Moreno told the Observer in a phone interview. "I want to be forgiven. I want to do something with my life."

Moreno says he wants to rekindle friendships and get his job back as a busboy at a Charlotte restaurant, so he can start sending money again to help his parents in Mexico.

He knows it was wrong to drink and drive, he says. He also knows many aren't sympathetic to an immigrant who came to Charlotte illegally, then broke the law.

"I just hope people can forgive me," Moreno says. "I did something stupid that I don't do."

Moreno grew up poor in a small community outside Acapulco, where there was little work and low pay. He came to the United States in 2004, crossing an Arizona desert on foot and making his way to North Carolina.

Moreno soon met a girl and landed a job at a nice restaurant. It was a better life, and he regularly wired money to his family.

Then, on the night of Dec. 29, 2009, Moreno was following his girlfriend home when a police officer pulled her over. It was the same officer, Marcus Jackson, who she said had pulled her over weeks earlier and fondled her breast.

This time, Moreno was there and confronted Jackson when he touched her again. Moreno called 911, knowing that responding officers might discover his illegal status.

Talking to dispatchers, Moreno protested the search, saying the officer is "grabbing" his girlfriend.

In the background, Jackson twice ordered: "Hang up the phone."

The call ended.

Jackson then arrested Moreno on a resisting charge and put him in jail.

Moreno later said he couldn't just stand by as the officer assaulted his girlfriend.

"She was crying. I felt so bad that this was happening," he said. "I didn't care about the risks."

The resisting charge was eventually dropped, but Moreno was identified as an illegal immigrant through the Mecklenburg jail's 287(g) program. He was targeted for deportation but was soon released for his assistance in the Jackson case and allowed to seek a special "U-visa" for immigrants who are crime victims or witnesses who can help prosecute a criminal.

Moreno never expected the notoriety he received in newspapers and on TV.

As immigration officials considered his visa request, he carried on his life. He was in the courtroom when Jackson pleaded guilty - frustrated that the disgraced officer got just two years in prison but glad he could help bring some justice.

Then, last Christmas Eve, Moreno went out drinking with friends and got into his Chevy Tahoe to go see his girlfriend.

As he drove in east Charlotte around 10 p.m., Moreno ran off the residential road and hit a tree and a telephone pole, a police report says. People in a house nearby ran out to help when they heard the crash.

When they asked if he was OK, Moreno took off on foot, witnesses told police. But officers found him, his forehead bleeding, and took him to Presbyterian Hospital.

Moreno told police he tried to dodge another car when he crashed and said he had been drinking beer.

Police charged him with driving while impaired, driving without an operator's license, and hit and run - and Moreno went back to the Mecklenburg jail.

Before his DWI case could come to court, immigration officials sent Moreno to Stewart Detention Center in Lumpkin, Ga., in January.

With no word on his visa request, Moreno was again placed in removal proceedings - just as 10,000 other immigrants that Mecklenburg has identified as being here illegally have been. Like Moreno, about 1 in 5 of them were stopped for drunken driving.

Moreno passed his four months in prison drawing landscapes, and chastising himself for what he calls the worst mistake of his life.

His girlfriend felt useless: "I wish I could help him like he helped me."

With Moreno unavailable, his DWI charge was dismissed in February.

Then, two weeks ago, Moreno got word: His visa had been granted. He can stay in America legally for three years - then can apply for permanent residency.

He'll have to stay clean, he says, and lead a constructive life.

Moreno arrived in Charlotte last month.

He left a message for his previous employer, then picked up his visa.

"I couldn't sleep at all because of everything that has happened," he said. "I can't believe that I'm here."