Like if I create macro PRINT character,iterations default iterations=1 <- How to make this? endm So if i call it using PRINT 'A',3 ; it will print "AAA" PRINT 'A' ; it will print "A" Is it possible to make the assembler compile without all arguments are defined, and let the macro detect and act on missing arguments? Like this: (Following macro loads a literal to W and optionally stores it in one or two registers) LL macro literal,r1,r2 ;macro name L_oad L_iteral movlw literal if not defined r1 exitm <- How to make this? movwf r1 if not defined r1 exitm <- How to make this? movwf r2 endm Invocations: LL ff,ADTMRL,ADTMRH ;sets PIC14000 A/D timer to max. LL 0F,PORTA ;sets PORTS... LL 24,PORTB ; LL e0 ;=movlw e0 The clarity is one main reason to use macros! Anyone know how to do this? I mean setting default arguments and/or sensing if they are defined. (I«ve tried some methods but did«nt get the expected results...) (I«m using MPLAB 3.30) Thanks in advance /Morgan Morgan Olsson, MORGANS REGLERTEKNIK, Sweden, ph: +46 (0)414 70741; fax 70331 ============================================================================