bigmessowires
Well-known member
The flash tool program that I developed for the Mac Plus ROM adapter doesn't work under System 3.2 - it bombs with error ID = 12, which seems to mean I called a trap routine that's not implemented in that version of the system. I fixed one instance of this by changing the program to use GetNextEvent() instead of WaitNextEvent(), so now at least the program starts up and shows the dialog box. But if you select a file to use as the ROM image, it bombs again with ID = 12, and I can't figure out why.
From experiments with commenting out parts of the code, it looks like calls to FSOpen() and GetDialogItem() both cause an ID = 12 bomb. But FSOpen() appears in Inside Macintosh Volume II, which means it's been available since the earliest days of the Mac. I don't know why it would bomb. GetDialogItem() is a renamed version of GetDItem(), which appears in Inside Macintosh Volume I. Again, it's been there since forever, and shouldn't bomb under old System versions.
Here is the code where the bombs occur when running under System 3.2, inside the if (repl.good) block. There are some references to global variables declared outside this function.
Any ideas why System 3.2 would choke on this code, and how to fix it?
From experiments with commenting out parts of the code, it looks like calls to FSOpen() and GetDialogItem() both cause an ID = 12 bomb. But FSOpen() appears in Inside Macintosh Volume II, which means it's been available since the earliest days of the Mac. I don't know why it would bomb. GetDialogItem() is a renamed version of GetDItem(), which appears in Inside Macintosh Volume I. Again, it's been there since forever, and shouldn't bomb under old System versions.
Here is the code where the bombs occur when running under System 3.2, inside the if (repl.good) block. There are some references to global variables declared outside this function.
Any ideas why System 3.2 would choke on this code, and how to fix it?
Last edited by a moderator: