'Re: reference card'
| Considering the latest MPASM manual (release E) includes these
pseudo-ops, it would appear that they ARE documented and officially
______________________________ Reply Separator _________________________________
Subject: Re: reference card
Author: Scott Fink <MICROCHIP.COM> at Internet Scott.Fink
Date: 2/19/97 12:08 PM
It is OK to use these "hidden" instructions like skpnz as long as you
remember that they are actually MPASM pseudo-ops and that some of them
assemble to multiple op codes (i.e. take more than one instruction
cycle). The only "real" instructions are those listed in the
datasheets. I have talked to a lot of people who have problems because
they forget which are op-codes and which are pseudo-ops and their
timing loops come out wrong ("the PIC must be missing a clock or
something", wrong, you used a multiple instruction pseudo-op).
You may also note that they are no longer documented in the MPASM
users guide and are not therefore officially supported or guaranteed
to work on future versions. Use caution when using them.
> Considering the latest MPASM manual (release E) includes these
> pseudo-ops, it would appear that they ARE documented and officially
And I hope they continue to be supported. The single instruction pseudo ops
are invaluable in making the code easier to read (skpz, skpnc, etc). In
addition, if Mchip decides to make a new part where the status flags are in
different locations from the old parts, code using those pseudo ops will
still work since the assembler knows where the flags are for each particular
I do find the multi instruction ops (bz, bnc, etc) useful also, but always
make sure that they are not used following a conditional test.
Dwayne Reid <planet.eon.net> dwayner
Trinity Electronics Systems Ltd Edmonton, Alberta, CANADA
(403) 489-3199 voice (403) 487-6397 fax
> I do find the multi instruction ops (bz, bnc, etc) useful also, but always
> make sure that they are not used following a conditional test.
In principle, an assembler should be able to generate a warning for that.
There should even be something you can put in your own macro definitions
to trip the warning if the macro is invoked after a conditional.
I'm so frustrated with MPASM that I'm writing a replacement; I'll have to
put that feature in mine. Along with the $1b syntax for hex constants, and
true bit equates.
More... (looser matching)
- Last day of these posts
- In 1997
, 1998 only
- New search...