mars sed: [snip] >What this does is moves the contents of the stack up by however many >bytes your extra parameters occupy, then moves the stack pointer to the >new "end of stack". The extra bytes (figuratively) cease to exist. When >EXITPROC goes to tear down the stack, it sees exactly what it expects, >and everyone is happy. Can I just say that for 3 days I've had my fingers crossed hoping that mars would come in an answer this - true. Now mars, this is a Vanilla FB situation, and is what I expected (except of course, I got the 'pushed on the stack' order wrong - duh) However, In Debug, I suspect that even more 'hidden' code gets pushed on the stack, meaning that I'm gonna have to have 2 versions of 'unknitting the stack', and detect if Debug is active, before calling the correct version. This comes down to: too complicated in FB. Were I programming in ASS 68K, I might go this way (but that's a dumb thing to say, 'cos I'd be weaving my own jump tables anyway, so I wouldn't have painted myself into a corner in the first place.) I think templates, or passing all params in a record whose address is then passed, is the way to go forward. Onward. jonathan PS (my posts will be incomprehnsible for the next 48 hours - my lady friend gave me 'the Rise of Endymion' for my birthday yesterday. As I've been waiting to read this one for about 2 years, ie, since i finished Endymion, I'm taking the phone of the hook, unplugging the fax, brewing up a big pot of coffee - and I'll speak to y'all when I come thru). PPS don't you dare post the end of the story! ------------------------------------------------------------- ! "format utile" studio de graphisme/graphic design studio ! ! 32 bd de Menilmontant, 75020 Paris, France ! ! phone +33 1 43 49 02 04 +++ fax +33 1 43 49 16 51 ! ------------------------------------------------------------- *** coming soon to a browser near you *** <http://www.cybercities.com/formatutile> -------------------------------------------------------------