mkelly@cs.uoregon.edu (Michael A. Kelly) (03/14/91)
This is my second plea for help! I have received two responses so far, both asking me to forward any replies to them. Help! Someone suggested that certain programming problems resulting in the above error were discussed 'recently' in MacTutor. I can't seem to find said discussions in my back issues. Could someone please point me to the right place? (I'm getting this error message only on a IIfx running 6.0.7 - the program works fine on a IIx and a IIcx - haven't tried anything else. BTW, the program was written in THINK C, compiled with the coprocessor option off.) Thanks in advance, Mike. -- _____________________________________________________________________________ Michael A. Kelly America Online: Michael792 mkelly@cs.uoregon.edu Compu$erve: 73567,1651 _____________________________________________________________________________
bskendig@phoenix.Princeton.EDU (Brian Kendig) (03/14/91)
In article <1991Mar14.011721.13837@cs.uoregon.edu> mkelly@cs.uoregon.edu (Michael A. Kelly) writes: >Help! Someone suggested that certain programming problems resulting in the >above error were discussed 'recently' in MacTutor. I can't seem to find >said discussions in my back issues. Could someone please point me to the >right place? I don't read MacTutor, so I can't help you there, but maybe I can help explain the `coprocessor not installed' error some. >(I'm getting this error message only on a IIfx running 6.0.7 - the program >works fine on a IIx and a IIcx - haven't tried anything else. BTW, the >program was written in THINK C, compiled with the coprocessor option off.) Well, let's think about the problem for a bit. Apple added the error messages to the system bomb dialogs starting with System 6.0.7. Now, whenever there's a system crash, your machine will consult some sort of table to retrieve the text to show you in an attempt to explain what happened. Now, more often than not it seems, the machine's not very good at figuring out exactly how it died (if somebody killed *you*, would *you* be very good at sleuthing out your murderer?). Either the state of the machine becomes so screwed up that it thinks there was some sort of math call that didn't make it to a coprocessor, or the error "coprocessor not installed" is only one of several unrelated errors that can result in the same error code. In either case, the message obviously doesn't mean that the program crashed because you don't have a coprocessor installed, because you do have one installed. Thus the error means: something made your machine crash. (As if it wasn't obvious beforehand.) All I can suggest is that, if you wrote the program or have the source code and a good understanding of how it works, you might want to make liberal use of MacsBug. When your IIfx dies, you should be able to snoop around the current state of the machine to figure out what happened. Good luck with it! << Brian >> | Brian S. Kendig \ Macintosh | Engineering, | bskendig | | Computer Engineering |\ Thought | USS Enterprise | @phoenix.Princeton.EDU | Princeton University |_\ Police | -= NCC-1701-D =- | @PUCC.BITNET | "It's not that I don't HAVE the work to *do* -- I don't DO the work I *have*."
d88-jwa@byse.nada.kth.se (Jon W{tte) (03/15/91)
In either case, the message obviously doesn't mean that the program crashed because you don't have a coprocessor installed, because you do have one installed. Thus the error means: something made your machine crash. (As if it wasn't obvious beforehand.) I think this might be an illegal instruction. (line F exception ?) My reasoning: The program goes astray and starts executing data. (This happens... :-) Once it hits data it can't interpret as instructions, you get an "illegal instruction" - BUT words beginning with "A" hexadecimal or "F" hexadecimal generate special exceptions, to allow for extensions in the machine code. A-traps (as they're called) are used by Apple for our loved and cherished toolbox & os, and the F-traps are used mostly for the coprocessor. Now, if you hit upon an undefined F-trap, maybe the ROM resons that "any F-trap is a coprocessor instruction" and issues the "coprocessor not installed" message. One might argue that the ROM could check for the coprocessor (like we mortals should) and change the message to "illegal instructino (unimplemented F-trap)" when it's installed... h+@nada.kth.se Jon W{tte -- "The IM-IV file manager chapter documents zillions of calls, all of which seem to do almost the same thing and none of which seem to do what I want them to do." -- Juri Munkki in comp.sys.mac.programmer