Actually, a bus error does not mean that you are having a hardware problem.
One of the most common causes of a bus error is a word or long word instruction
being executed on an odd address. Another common cause is a program accessing
an address in the range of addresses belonging to NuBus. Usually, the slot
owning this address will not have a card in it.
Check the calls being made to the Menu Manager -- if you suspect these calls.
Specifically, passing an invalid handle to one of the calls could definitely
cause this error.
Try stepping through the code using the debugger and the variable watcher.
Find the exact point where the error occurs and work your way back until
you find the culprit.