Melt the butter in a large frying pan and fry the onion and garlic until just colored.
Add the meat, chicken, bacon and mushrooms (if using) and fry until the meat is browned all over.
Stir in the barley and 3/4 for the remaining ingredients. Add enough water to cover everything and bring it to a boil.
Reduce to a simmer, cover and cook gently for 90 minutes.
Now add the rest of the ingredients, season and return to a simmer. Cook covered for 30 minutes.
Season with some extra black pepper and ladled into bowls.