I just want to make a quick comment about this assembler / C debate. I think I saw an article in Circuit Cellar that solves the problem of using C as opposed to Assembler for writting easily readable and maintainable code. The technique involves writing the code in assembler and then placing the C code that equates to the assembler in the comments to the right of the assembler code. This gives some(!) of the benefits of both languages at the same time. Many times I see comments embedded in assembler code that look like this: movlw 8 movwf Cnt ; Loop 8 times loop movf Reg1, w ; Move value to w movwf Reg2 ; Move w to Reg2 decfsz Cnt, f ; Decrement Counter goto loop ; Is it zero yet? . . . Gee!! Thanks a lot. I much prefer to see this: movlw 8 ; for (Cnt=8; Cnt>0; Cnt--) movwf Cnt ; { loop movf Reg1, w ; Reg2 = Reg1; movwf Reg2 decfsz Cnt, f goto loop ; } . . . Now you have the speed and compactness of assembler AND the readability of C. Neat huh? Just my two cents worth. If you agree, use it - if not trash it. ps - I love this list!! I learn something most every day.