Cook spaghetti according to package directions; drain. Meanwhile, heat oil and butter in a large skillet. Saute onion until translucent; add ham and bacon, if using. Cook until meat is done; quickly stir in seasonings. Remove ham mixture from skillet and keep warm. Add spaghetti to skillet; tom with ham mixture. Let fry without stirring until spaghetti turns golden on bottom. Stir from bottom, mixing everything together; fry until heated through. Just before serving, reduce heat to low and pour in eggs. Stir and cook 3 to 5 minutes, until eggs are cooked. Serve with catsup, if desired.