Sergio Masci wrote: > The XCASM assembler tracks bank useage and inserts bank select > instructions automatically for you (if you let it). With this assembler > there is no need to declare special banked symbols, all RAM accesses are > tracked. > The XCASM assembler knows how to deal with bank switching through skip > instructions and inserts the instructions in the right place. It tracks > multiple execution paths through each instruction (including subroutine > calls) and only inserts bank select instructions which are absolutely > necessary. If you manually insert bank select instructions elsewhere > (maybe further up in the execution path) it will compensate and not > insert the now redundent bank select instructions. Sounds interesting. But the documentation on your website leaves a lot to be desired. I remember looking at it once before and basically giving up. I can't tell what the output format of your assembler is. Is it compatible with the MPLAB linker? Can it accept MPASM/gpasm source code? Except for the global flow analysis you do to "optimize" the bank switching and ignoring the "expression compiler", I can do pretty much everything that XCASM does with a few lines of Perl code. Why would I spend GBP100 or GBP1250 to switch to a tool I have no control over? I'm not even sure that the "Enterprise Edition" supports the processors I'm interested in. -- Dave Tweed -- http://www.piclist.com PIC/SX FAQ & list archive View/change your membership options at http://mailman.mit.edu/mailman/listinfo/piclist