Bob Ammerman wrote: > fire_torpedoes = B7 > > bsf B3 > bsf fire_torpedoes > > bsf shadow.b3 > bsf shadow.fire_torpedoes > > The bitmap symbols would be stored in the symbol table as both a file > address and a bit number, along with an indication that it was a bitmap > symbol. Check out my /INBIT and /OUTBIT preprocessor directives. See the PREPIC documentation file at http://www.embedinc.com/pic. You write a declaration in the project include file like this: /outbit fire_torpedoes portb 3 0 This automatically (in my standard PORT module) causes RB3 to be set as an output, in this case initialized low (last parameter). It also defines FIRE_TORPEDOES_REG, FIRE_TORPEDOES_TRIS, FIRE_TORPEDOES_BIT, and FIRE_TORPEDOES_PIN. You can write code like: dbankif fire_torpedoes_reg ;set banks bsf fire_torpedoes_pin ;bombs away or: dbankif shadow ;set banks for access to shadow reg bsf shadow, fire_torpedoes_bit ;set shadow reg bit movf shadow, w ;get new port register value dbankif fire_torpedoes_reg ;set banks for port reg access movwf fire_torpedoes_reg ;bombs away I haven't yet added support for the 18 family LAT registers, but will Real Soon Now (tm). ***************************************************************** Embed Inc, embedded system specialists in Littleton Massachusetts (978) 742-9014, http://www.embedinc.com -- http://www.piclist.com hint: PICList Posts must start with ONE topic: [PIC]:,[SX]:,[AVR]: ->uP ONLY! [EE]:,[OT]: ->Other [BUY]:,[AD]: ->Ads