On Sat, 16 May 1998 14:02:11 EDT PHXSYS writes: >Here is a code snip. I have not used and ENDC command either? Can >someone >provide a simple explanation? >CBLOCK 12 ; Start of user registers > ; initially selected dummy channel > CHANNELA:1 ; contents of Channel A, 0..255 > CHANNELB:1 This is a CBLOCK. It is a MPASM method to assign names to locations in RAM. Each line reserves one or more bytes of RAM (the :1 part is for 1 byte, :2 for 2, etc.) and assigns the name to the first location. Later the names can be used to store and recall data from RAM, for example movwf CHANNELA will store W in the place reserved for data from channel A. The result is exactly the same as the older method of using equ directives: CHANNELA EQU 12 CHANNELB EQU 13 ... > ENDC The "ENDC" directive quite naturally marks the end of the CBLOCK and a return to normal assembler. > PAGE The PAGE directive just causes the assembler to start a new page in the listing (.LST) file. It doesn't affect the code produced at all. All this can be found in the MPASM Help help-file under "Directive Language" or something like that. _____________________________________________________________________ You don't need to buy Internet access to use free Internet e-mail. Get completely free e-mail from Juno at http://www.juno.com Or call Juno at (800) 654-JUNO [654-5866]