Ed Miliband has said Labour will not strike an "agreement" with the Scottish National Party following the May 7 General Election, as he declared himself a unionist and accused David Cameron of stirring up English "hatred" of the Scots.

The Labour leader's comments, in an interview on BBC Radio 2's Jeremy Vine show, appear to go further than his previous pledge not to form a formal coalition with the SNP.

Meanwhile, Mr Cameron said voters would be "shocked" by film of former SNP leader Alex Salmond claiming that he would write Labour's budget if Mr Miliband won power.

The footage, apparently filmed at an SNP meeting on April 13, showed Mr Salmond saying he had heard a Labour spokesman say that Scottish Labour leader Jim Murphy would not be writing the party's budget.

To laughter from activists, Mr Salmond - standing for election as MP for Gordon on May 7 - continued: "I knew that already, because I'm writing the Labour Party budget."

In an apparent reference to a Conservative poster warning that Mr Miliband would be in Mr Salmond's pocket if the two parties did a post-election deal, the smiling former SNP leader added: "I'll just check my top pocket."

Sending copies of the film to his Twitter followers, Mr Cameron said: "This footage will shock you: Alex Salmond laughs and boasts he'll write Labour's budget. Vote Conservative to stop it."

But Mr Miliband told Jeremy Vine: "If you want to ask who is going to write Labour's first Queen's Speech, who is going to write Labour's first Budget, it is the Labour Party, not the SNP."

Asked if Labour would do a deal with the SNP in the event of a hung parliament, Mr Miliband said: "There isn't going to be a coalition."

And pressed on whether there would be "an agreement", he replied: "There isn't going to be that."

Mr Miliband said there were "real differences" between Labour and the SNP on the deficit, public spending cuts, the nuclear deterrent and the continued existence of the United Kingdom.

And he asked: "Who is really standing up to the SNP and who is talking up the SNP? The Prime Minister is spending his time trying to set one part of the United Kingdom against another. He is trying to stir up English hatred of the Scots and Scottish resentment against the English.

"There is a character issue here, which people are going to have to make a judgment about. We have got David Cameron, whose campaign has shrivelled so much he is reduced to talking about one thing only, which is the SNP. He is supposed to be the leader of the Conservative and Unionist Party. He is supposed to be defending the United Kingdom.

"I think working people right across the UK have a lot more in common than divides us, and I am happy to be the person defending the United Kingdom and defending the idea that we can stand up for working people everywhere.

"It is not some competition for resources across this United Kingdom - that's a nationalist argument, not a unionist argument, and I am a unionist."

Mr Cameron has repeatedly warned that a government partnership between Labour and the SNP would result in a "coalition of chaos", and was backed yesterday by former prime minister Sir John Major, who warned of "mayhem" if a minority Miliband administration was propped up by nationalists.

But the tactic of targeting the SNP has caused some unease in Tory ranks, with former Scotland secretary Lord Forsyth describing it as "short-term and dangerous" and former chairman Lord Tebbit saying the "puzzling" focus on the SNP was not helping the "prime task" of securing a majority.

Mr Miliband's comments came after he visited the wards of Addenbrooke's Hospital, Cambridge, to highlight a pledge to increase testing by GPs and replace ageing radiotherapy machines, as part of a pledge to cut waits for cancer test results to one week.

Mr Cameron used a speech in Bedford to promote a pledge to double the free childcare allocation for three and four-year-olds from 15 to 30 hours per week, then visited a school in south London with mayor and Tory election candidate Boris Johnson.

Meanwhile, Liberal Democrat leader Nick Clegg promised "a light at the end of the tunnel" for public sector workers after years of real-term wage cuts. Under Lib Dem plans, wages would rise with inflation until the deficit is eliminated, at which point there could be real-terms increases.

A fortnight before the final full day of campaigning, polls continued to show no clear advantage for either of the main parties.

But Ukip's Nigel Farage rejected suggestions that his party's support was on a downward trend, insisting it was holding up "extremely well".

Mr Farage, who has been forced to campaign hard for the Thanet South seat in Kent, told BBC1's Breakfast: "Our vote is firming over the course of the last couple of weeks. In our target seats we are doing well ... All the so-called experts have underplayed us over the last few years. They have underestimated our potential, they are doing so again, and I think we are going to surprise people."

Responding to Mr Cameron's comments, Mr Salmond said: "Instead of a few carefully stage-managed appearances, David Cameron should try holding a few public meetings and meeting real people - and develop a sense of humour.

"The point made in a light-hearted way was that Scottish Labour leader Jim Murphy had been slapped down by his party bosses at Westminster and told that he would have no role in a Labour budget. David Cameron is clearly a Prime Minister with both a people bypass and a sense of humour bypass"

But Chancellor George Osborne said in a message on Twitter: "Salmond remarks confirm that weak Miliband + SNP in charge = economic chaos for UK. Two big risks of election have just collided."