Using 1 interrupt routine, 2 counters, and look at Direct Port Output = Arduino Reference - Arduino Reference =
And you might take a look at this thread = http://arduino.cc/forum/index.php/topic,84809.0.html = It is how to code a stepper driver - the code is interrupt driven, 1 axis, goes through several stages, Starts out using digitalwrite, goes to direct port manipulation and finishes up being done completely in assembly. look at the first 2 steps and it should give you some ideas. Adding a couple of counter variables, when they hit some target number, do the next step and reset the counter.
Remeber - in an interrupt keep the code tight. Nothing unnecesary.