Cut bacon into about 1cm (1/2 in) strips. Heat a large frying pan over medium high heat and fry bacon for 5 minutes. Add minced beef and fry for another 5 minutes stirring frequently to break up the meat.
Crumble onion and beef stock cubes into the meat. Stir in flour and cook gently for 2 to 3 minutes. Add 150ml (1/4 pt) water and all of the tomatoes. Stir in a shake of garlic salt, pepper, sage and mixed spice. Bring to the boil, stirring continuously. Cover and simmer for 10 to 15 minutes.
Cook spaghetti in plenty of salted boiling water for about 15 minutes until al dente. Drain and rinse in hot water. Return to the large hot saucepan and add meat sauce.
Drain franks and cut into 1cm (1/2 in) slices. Add to the pasta. Pour into a deep 2.5L (4 pt) casserole. Drain mushrooms and arrange around the edges of the dish. Sprinkle grated cheese over and grill under hot grill until golden. Garnish with chopped parsley.