Among all the other great suggestions offered here, I'll add... - Slow it down with a big cap (use RC osc mode). In this case, 0.1uf is=20 usually big enough. This way, you can see anything timing-critical, and=20 watch LED's being multiplexed, etc. - I usually max out my PIC usage, so if I don't have spare I/O's, I'll us= e a=20 larger PIC until the code is sorted out. Then, I'll convert back for the= =20 original target PIC. - The SIM is great except when dealing with external influences. I'm not= =20 thrilled with the way MPASM SIM handles pin stimulus. But it's great for= =20 testing/tweaking algorithms. It's also great for figuring out that I use= d=20 the wrong destination on some instruction (,F vs ,W).=20 - Finally, incremental development. Create/test one part. Create/test=20 another part, using independent registers (even for scratch stuff). Late= r=20 on, optimize it to re-use registers and free up some ram for additional c= ode. Cheers, -Neil. -- http://www.piclist.com#nomail Going offline? Don't AutoReply us! email listserv@mitvma.mit.edu with SET PICList DIGEST in the body