Ken writes: ... > For some information on trapping intrinsic calls, see Brian White's > excellent article in the May Interact. > > A couple of extra points: > > XL intrinsics have an extra parameter passed which tells how many > parameters are present. No, they don't. A Pascal/iX or SPLash! procedure may be declared "extensible", in which case the number of parameters is passed in register R26. Many intrinsics are declared in this manner, including some in XL.PUB.SYS. However, this is not a requirement, nor (if memory serves) even the majority of cases for XL.PUB.SYS (or NL.PUB.SYS) routines. For example, none of the IMAGE intrinsics (DBOPEN, DBCLOSE, etc.) are "extensible". Most Classic-originated intrinsics aren't extensible. Most intrinsics begining with "HP" are extensible, but not all :( If you are writing routines in Pascal/iX which will be called from other libraries/programs, and you want the ability to add parameters later without recompiling everything, then "extensible" is probably the best solution. -- Stan Sieler [log in to unmask] http://www.allegro.com/sieler.html