On 03/02/16 20:58, Alyssa Milburn wrote:
On Wed, Feb 03, 2016 at 03:36:52PM -0500, Programmingkid wrote:
Is it possible the invalid/unsupported opcode errors are PowerPC instructions that are not implemented? Or do you think the processor is executing memory it should not be executing? The message "qemu: fatal: Trying to execute code outside RAM or ROM at 0xfdfdfdfc", was it shown when you used your patch? If it was then there is some kind of address calculation error possibly taking place.
There's some kind of weird memory corruption going on during the Mac OS 9 boot for me, and making small changes (even changing the available RAM) makes things behave differently. A jump to some arbitrary address (often NULL) is a pretty common result, and annoyingly at that point no amount of hunting around with MacsBug seems to let me work out what's going on. Maybe the crash here is/was another instance of this?
Usually I manage to get through the whole boot process and then it crashes after the menu bar has appeared inside something like the Control Strip code. Sometimes it even boots. It makes it pretty frustrating to debug though, since you can't just randomly remove resources (e.g. patches) and check whether that fixed it or not. Maybe I'm doing something really stupid though, so I'll post this in this thread and see if anyone has suggestions..!
It seems that there are about 3 or 4 extensions on a vanilla 9.2.2 ISO that will crash QEMU. Currently I've taken the hfsplus ISO, mounted it, and removed all extensions except for OT and OT ASLM modules to ensure that any crashes I get are only caused by OT and not one of the other extensions that tends to break QEMU, e.g. MultiProcessing.
But yes, as you point out this is necessary because extensions tend to load in an asynchronous and non-deterministic manner in OS 9 under QEMU...
ATB,
Mark.