> Do you know such macroassembler that is able to recognize labels, jump and > call instructions to be able to keep a valid value in a variable you > suggested? Optimalisation is the most difficult job when you try to write > any compilator. To build a tree of a program isn't trivial. MPASM certainly can't do that. The scheme I talked about is not fully automatic. I have the UNBANK macro which invalidates all bank assumptions. It is usually used at labels where execution can come from more than one point. At other places like subroutine entries and call points I already use macros that automatically do an UNBANK. > I would have been satisfied by a macroassembler that is able to do > nontrivial string operations with parameters sending to macro. Do you know > any? Microsoft MASM is the best assembler I've ever used, and it can do what you ask but is only for the Intel x86 processors. Unfortunately MPASM is pretty stupid in its handling of macro arguments. ***************************************************************** Embed Inc, embedded system specialists in Littleton Massachusetts (978) 742-9014, http://www.embedinc.com -- http://www.piclist.com hint: To leave the PICList mailto:piclist-unsubscribe-request@mitvma.mit.edu