It appears my memory has failed me. I found this in a spec note: If the STATUS register is the *destination for an instruction that affects the Z, DC or C bits*, then the write to these three bits is disabled. These bits are set or cleared according to the device logic [emphasis my own]. Simply having thought about returning from an interrupt might have lead me to the same conclusion as Dwayne. Mario Dwayne Reid wrote: > > >The Z bit indicates if the last result was zero. One cannot write (I'm > >pretty sure) to the Z, D(igit)C(arry) or the C(arry) bits of Status. > >Clearing Status will actually cause Z=1. > > You should not write STATUS, but you *CAN* change the individual bits using > bcf / bsf instructions. > > You will often find code snippets that use 'clrc' or 'setz' (MPASM's built > in macros) or 'bcf STATUS,C' or 'bsf STATUS,Z'. These are legal and work > eintirely as expected. > > dwayne > > Dwayne Reid > Trinity Electronics Systems Ltd Edmonton, AB, CANADA > (780) 489-3199 voice (780) 487-6397 fax > > Celebrating 15 years of Engineering Innovation (1984 - 1999) > > * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * > Do NOT send unsolicited commercial email to this email address. > My posting messages to Usenet neither grants consent to receive > unsolicited commercial email nor is intended to solicit commercial > email. -- You are entitled to your own opinions; you are not entitled to your own facts.