The rounded consonants W, WH, and QU caused A to become an O sound sometime in Middle English:

mat, bat, sat - but what, Watt, squat
man, bad, rasp - but wan, squad, wasp

This effect is sometimes disguised by other sound changes, e.g. it did not happen before the velar K, G sounds:

rack, tack, lag - but also whack, wax, wag

And it always happened before L, regardless of the preceding:

ball, tall, malt - and also wall, squall


While wa > wo was going on, the original wo- was shifting to wu-:

woman, wolf, would, worm, word, worth

Actually the second one isn't that simple because in Old English this sometimes came from other sounds, not original wo-: wifmann, wulf.

The resultant -ur- of wurk, wurd was originally a different sound from the -er- of herd and the -ir- of bird, but all three have since collapsed together into this sound peculiar to English.