>> *** the TMR0 register is just RANDOMLY changing **** I can see no sequence in the numbers at all. They appear to just change at will on every instruction. When I run this in the simulator all is well and I get the TMR0 register changing as expected. So why NOT on the real hardware??? << How are you "seeing" timer 0 values on the real hardware? With the in circuit debugger I perhaps? I'm not familiar with the in circuit debugger since I use the ICE, but doesn't that thing execute code on the target for each "single step"? If so, that would explain the additional timer 0 increments. Timer 0 behaves very nicely with the ICE. ***************************************************************** Embed Inc, embedded system specialists in Littleton Massachusetts (978) 742-9014, http://www.embedinc.com -- http://www.piclist.com hint: To leave the PICList mailto:piclist-unsubscribe-request@mitvma.mit.edu