/* =============================
General Bit Operator
============================= */
// Bit manipulation macro that is modifying its argument. (task type)
#ifndef BITSET
#define BITSET( X, MASK) ( (X) |= (unsigned int)(MASK) )
#endif
#ifndef BITSCLR
#define BITSCLR(X, SMASK, CMASK) ( (X) = ((((unsigned int)(X)) | ((unsigned int)(SMASK))) & ~((unsigned int)(CMASK))) )
#endif
#ifndef BITCSET
#define BITCSET(X, CMASK, SMASK) ( (X) = ((((unsigned int)(X)) & ~((unsigned int)(CMASK))) | ((unsigned int)(SMASK))) )
#endif
#ifndef BITCLR
#define BITCLR( X, MASK) ( (X) &= ~((unsigned int)(MASK)) )
#endif
#ifndef BITXOR
#define BITXOR( X, MASK) ( (X) ^= (unsigned int)(MASK) )
#endif
#ifndef ISZERO
#define ISZERO(X, MASK) ( ! (((unsigned int)(X)) & ((unsigned int)(MASK))) )
#endif
#ifndef ISSET
#define ISSET(X, MASK) ( (unsigned int)(X) & ((unsigned int)(MASK)) )
#endif
#ifndef IS
#define IS(X, MASK) ( (unsigned int)(X) & ((unsigned int)(MASK)) )
#endif
#ifndef ISONE
#define ISONE(X, MASK) ( (unsigned int)(X) & ((unsigned int)(MASK)) )
#endif
; /************************************************************************
; * Bit Field Definition
; ************************************************************************/
Hw31 EQU 0x80000000 ;
Hw30 EQU 0x40000000 ;
Hw29 EQU 0x20000000 ;
Hw28 EQU 0x10000000 ;
Hw27 EQU 0x08000000 ;
Hw26 EQU 0x04000000 ;
Hw25 EQU 0x02000000 ;
Hw24 EQU 0x01000000 ;
Hw23 EQU 0x00800000 ;
Hw22 EQU 0x00400000 ;
Hw21 EQU 0x00200000 ;
Hw20 EQU 0x00100000 ;
Hw19 EQU 0x00080000 ;
Hw18 EQU 0x00040000 ;
Hw17 EQU 0x00020000 ;
Hw16 EQU 0x00010000 ;
Hw15 EQU 0x00008000 ;
Hw14 EQU 0x00004000 ;
Hw13 EQU 0x00002000 ;
Hw12 EQU 0x00001000 ;
Hw11 EQU 0x00000800 ;
Hw10 EQU 0x00000400 ;
Hw9 EQU 0x00000200 ;
Hw8 EQU 0x00000100 ;
Hw7 EQU 0x00000080 ;
Hw6 EQU 0x00000040 ;
Hw5 EQU 0x00000020 ;
Hw4 EQU 0x00000010 ;
Hw3 EQU 0x00000008 ;
Hw2 EQU 0x00000004 ;
Hw1 EQU 0x00000002 ;
Hw0 EQU 0x00000001 ;
HwZERO EQU 0x00000000 ;