Displaing long message on LCD

I’m building an arduino controlled radio with RDA5807M and a 2x16 LCD. In the upper left corner of the display is the frequency or radio station name provided by RDS. On the lower line of the display is radio text, which can be up to 64 characters. My problem is that I am only able to display the first 16 characters. What possibilities I have to display the whole message. Would it be possible with substrings?
Code is here:

void DisplayText(char *name)
  size_t len = strlen(name);
  lcd.setCursor(0, 1);
  while (len < 17) {
    lcd.print(' ');

The LCD controller has the capability of storing 80 characters in it's memory regardless of the dimensions of the display that it is driving. In your case you can easily display 32 of those characters.

The LCD controller also has the capability to shift its 'display window' to display any of those 80 characters although you won't be happy with some of the limitations. Specifically, the problem is that both rows shift simultaneously. This 'shifting' capability is controlled by what the LiquidCrystal library calls 'scrolling' and you could tinker with that.

You can learn more about the memory setup (and possibly figure out why both rows shift simultaneously) by following the LCD Addressing link at http://web.alfredstate.edu/weimandn.

You will most likely get advice to use some sort of buffer in your Arduino memory and feed your display from that and this might be the easiest solution although I myself can't help you with the implementation.