I'm also a beginner in PIC programming but shouldn't this be Start: bsf STATUS,RP0 clrf PORTB <=3D clrf TRISB bcf STATUS,RP0 clrf PORTB Drew Vassallo wrote: >I saw something right after the label SendPSTRLoop:. You have a CALL M= SG >line there, but MSG is only defined as a variable. When I ran your code= in I saw this as well... You load the variable "MSG" with HelloWorld as a pointer to the start of the message table (movlw HelloWorld, movwf MSG), = but when you use "call MSG," you will always call the memory address of MSG a= s a literal (i.e., if MSG is defined as memory address 0x23, for example, you= will be jumping to the code at program memory address 0x23, always.) You can't do this :) Moreover, you actually have "addwf PCL, F" at the first line of your mess= age table, which is correct if you load W with the incremental value for the proper character. What you want to do is just load W with a number (0 ->= whatever) representing the character you want to retrieve (0=3DH, 1=3De, = 2=3Dl, 3=3Dl, etc.) and call the "HelloWorld" table. --Andrew _________________________________________________________________ Get your FREE download of MSN Explorer at http://explorer.msn.com -- http://www.piclist.com hint: PICList Posts must start with ONE topic: [PIC]:,[SX]:,[AVR]: ->uP ONLY! [EE]:,[OT]: ->Other [BUY]:,[AD]: ->Ads ____________________________________________________________________ Get free email and a permanent address at http://www.netaddress.com/?N=3D= 1 -- http://www.piclist.com hint: PICList Posts must start with ONE topic: [PIC]:,[SX]:,[AVR]: ->uP ONLY! [EE]:,[OT]: ->Other [BUY]:,[AD]: ->Ads