It's doing PRECISELY what you told it to do, the problem is you told it the wrong thing. The REAL problem is that YOU'RE trying to put more than one character in a command that specifically states single chars! Read the MPASM user's guide in help, chapter 5 directives for DB and look at the example. Look at the example. db 't', 0x0f, 'e', 0x0f, 's', 0x0f, 't', '\n'. Do you notice that every byte is separated? And that when you look around in that help, there are several other related commands like DATA that do make strings? Can't blame the assembler when you just haven't passed the RTFM test yet.. Alan "Thomas C. Sefranek" wrote: > > Message[303]: Program word too large. Truncated to core size. (4420) > Message[303]: Program word too large. Truncated to core size. (6F00) > 0005 0420 2F00 00078 Init_Done DB "D o",0 > > Notice it cast the white space into an ASCII space (0x20) > so no magic in spaces. > > Those define SINGLE bytes > > Sequences or Strings of bytes are delimited by double quotes. > > The real problem is the assembler trying to pack 2 characters into a > word!