Path: utzoo!utgpu!jarvis.csri.toronto.edu!mailrus!purdue!ames!pasteur!ucbvax!dewey.soe.berkeley.edu!oster From: oster@dewey.soe.berkeley.edu (David Phillip Oster) Newsgroups: comp.sys.mac.programmer Subject: Re: Notification Manager question Message-ID: <30805@ucbvax.BERKELEY.EDU> Date: 22 Aug 89 06:31:16 GMT References: <6293@hubcap.clemson.edu> <879@cbnewsk.ATT.COM> Sender: usenet@ucbvax.BERKELEY.EDU Reply-To: oster@dewey.soe.berkeley.edu.UUCP (David Phillip Oster) Organization: School of Education, UC-Berkeley Lines: 28 In article <879@cbnewsk.ATT.COM> ech@cbnewsk.ATT.COM (ned.horvath) writes: _>Also, under what circumstances do you enqueue the NM task? Remember _>that AppleTalk listeners, completion routines, etc., operate at interrupt _>time, with all the restrictions that apply to such routines. Best policy _>is to simply "make a note" (you'll need SetUpA5()/RestoreA5() in the _>completion routine) that notification is necessary, then queue the NM task _>from your main event loop. Beware, most of the versions of SetUpA5(), RestoreA5() that are out there are not multifinder compatible. Read the source code! if it references CurrentA5 or 0x904, it will bomb under multifinder (since this low memory global holds not the base of _your_ globals, but of whatever program is running _now_. One that will work: Take the file SetUpA4.h that comes with THINK C. Copy it. Change all references to A4 to references to A5. It has been claimed that this is not compatible with the 68020's instruction cache, or that this is self-modifying code. Both claims are rubbish: data fetches don't go through the I-cache, and self-modifying code refers to modifying instructions not data. It has been claimed that it is incompatible with some future Mac O.S. that will write-protect code. Also rubbish. If this fear bothers you, then put the code in a resource of some type of your own creation. --- David Phillip Oster --"Unix Version 7 was an improvement not Arpa: oster@dewey.soe.berkeley.edu --only over its predeccessors, but also its Uucp: {uwvax,decvax}!ucbvax!oster%dewey.soe.berkeley.edu --successors."