The Raptors didn't need any magic tricks to get the better of the Wizards last night.

All they needed was Mike James to come up huge in the final minute of the game, a red-hot Chris Bosh and a large contribution from rookie Charlie Villanueva to defeat Washington 117-112.

Bosh was dominant, picking up his 20th double-double of the season, with 33 points, the first time he has scored better than 30 or better at home, and 13 rebounds.

James added 29 points while Villanueva off the bench contributed 18 points and nine boards, including a thunderous put-back to put Toronto up 100-82 with just under seven minutes left.

Villanueva was selected yesterday to play in the T-Mobile Rookie Challenge at the All-Star Weekend on Feb. 17.

"We'll take it," a relieved Raptors head coach Sam Mitchell said, after his club held off the charging Wizards in the last minute. "We'll take everyone we can get ... ugly, good, whatever. There's no such thing as a bad win."

It was a big effort as the 16-30 Raptors, who won their second in a row, beat the 21-23 Wizards for the first time in three attempts this season.

Too bad there was hardly anyone at the Air Canada Centre to see it.

The announced crowd of 13,640 was the smallest to watch a Raptors home game, prompting one scribe to quip: "This never would have happened during the Rob Babcock era."

Babcock, of course, was fired as the team's GM last week. The previous low was 13,863 on Nov. 7, 2004, against the Portland Trail Blazers.

The Raptors led by as much as 18 with less than six minutes left, but allowed the Wizards back into the game. Antonio Daniels cut the lead to 109-105 with a layup and free. Toronto's Morris Peterson then turned the ball over, allowing Gilbert Arenas to score a three, making the game 109-108 with 1:25 on the clock. Just 38 seconds after that, Arenas scored on a layup to make it 112-110.

But sandwiched between Arenas' layup, James nailed back-to-back threes from 25-feet out for the Raptors to preserve the much-needed victory.

"I shoot a hundred, a thousand of these things every day (in practice) ... I do the work," said James, who was 5-for-7 from beyond the arc.

"And if I can't carry over what I'm doing in practice to the game, then there's no point in me being in the NBA. When I shoot those shots, I know that nine times out of 10, they're going in."

Arenas ended the game with 35 points, the 21st time this season he has scored 30 or better. He also shot 5-for-10 from three-point range. Antawn Jamison added 22 for Washington.

Starting centre Pape Sow made his presence felt, doing a nice job guarding Washington stud Brendan Haywood while contributing five rebounds. Haywood obviously didn't appreciate the youngster's efforts, hammering Sow with a vicious elbow in the head early in the first quarter.