Path: utzoo!attcan!uunet!lll-winken!lll-tis!helios.ee.lbl.gov!nosc!ucsd!rutgers!uwvax!oddjob!kaon!nucsrl!bob From: bob@eecs.nwu.edu (Bob Hablutzel) Newsgroups: comp.sys.mac.programmer Subject: Re: Register saving conventions Message-ID: <10050005@eecs.nwu.edu> Date: 1 Aug 88 13:33:32 GMT References: <664@iraun1.ira.uka.de> Organization: Northwestern U, Evanston IL, USA Lines: 18 >while writing some small patches to toolbox traps, I noticed that >Multifinder doesn't conform to the register saving conventions stated >in Inside Macintosh. Some routines apparently assume, that registers >are not changed by the trap. The traps I patched are GetResource and >DrawMenuBar. Both of them work only if I save registers D0-D2/A0-A1. Are you attempting to make tail patches? (A tail patch is one which processes AFTER the ROM code). MultiFinder is making tail patches very hard to impliment, as the MultiFinder code often checks to see where it comes from, or it can depend on the ROM code leaving certain registers in specific states. I think Apple is quietly saying that tail patches are no longer valid, although I have not heard this verbatum from Apple. Isn't programming a moving target fun?? (severe sarcasm) Bob Hablutzel BOB@NUACC.ACNS.NWU.EDU AppleLink: A0173 CompuServe: 76474,154