Heat a tablespoon of the oil in a large frying pan or sauté pan that has a lid. Fry the sausage balls until they have browned on all sides, then add a tablespoon of the HP sauce.
Stir to coat the sausage balls and keep stirring until they look caramelised, then remove them from the pan and set aside.
Deglaze the pan with a little water and pour this over the sausages. Add the remaining oil to the pan. Fry the bacon, onion and mushrooms together until the bacon has rendered its fat and is crisping up.
The onion should have started to soften and brown around the edges.
If using black pudding, crumble it up and fry it very briefly. Put the sausages back in the pan with everything else. Add the tomatoes and the remaining HP sauce, together with the beans and about 200ml of water, then stir to deglaze the base of the pan.
Season with salt and pepper, bring to the boil, then turn down the heat and cover the pan. Cook for 10 minutes.
Make wells in the mixture and break the eggs into them. Cover the pan and cook for a few minutes until the whites are just set and the egg yolks are runny. Serve with hot buttered toast.