I have used the L297/L298 driver ICs before for my projects.
They are OK for most applications but unfortunately they occupy quite a lot of PCB space as the translator and the control ICs are seperate, and so may not be an ideal choice for a microcontroller based project.
A better alternative is the SLA 7062 driver ICs from Sanken Electronics, Only one single driver IC is required, the basic operations like motion selection (1/2 step, 1/4 or 1/8 step) , clockwise/anticlockwise rotation are all very easily implemented. The best feature is that the translator and the control ICs are all integrated in one IC, unlike the L297/L298.