Here is a cute little program which might help for serial comms and PIC chip debugging. At http://www.iversoft.com/piclist/code.html http://www.iversoft.com/piclist/files look for PIC_HEX1.zip. PIC_HEX.exe reads an MPLINK file and displays the on-chip variable names and their current value . Variables can be sorted by address or by name. A hex dump of each ram bank is also displayed. The PIC must have serial port code to transmit the contents of a requested data value. (The trivial serial port code for a 16c74 is also listed below.) I've been wanting to do this for a while, but never got around to digging up the serial routines for the PC. Thanks to Tom Handley's post (2/24/99), I didn't have any more excuses, so I just went ahead and wrote the program. I built on those routines and some others I had laying around to create this monitor...just returning the favor! It was a fun program to write, but, of course, it could probably be upgraded for more useful operation. Any suggestions? Data logging to disk ? Modify on-chip data ? Hmmmmm.... I've only tested it on one map file, one pc, and one PIC, your mileage may vary! Enjoy, Ralph The simple serial code looks like this: ; CommsRxSI: ; void CommsRxSI( void ) ; ; { banksel FSR_temp ; // MONITOR Reporter! \\ movfw FSR ; movwf FSR_temp ; push( FSR ); ; ; banksel RCREG ; // read Rx register movfw RCREG ; ; ; movwf FSR ; wTemp = *RCREG; movfw INDF ; ; ; // transmit contents of banksel TXREG ; TxREG = wTemp; movwf TXREG ; ; ; banksel FSR_temp ; movfw FSR_temp ; pop( FSR ); movwf FSR ; ; ; ReturnInt ; ; ;