Question about the "Flash" library, PROGMEM and how to do something.

Krupski:
If I do this:

        const char *menu2 PROGMEM =

"    (3) %s this channel\r\n\r\n"
                "    Option:  ";



is that string in flash memory?

No. The pointer is in FLASH but the string is copied to SRAM. See the reference: http://www.arduino.cc/en/Reference/PROGMEM

Setting up a table (array) of strings in program memory is slightly complicated, but
here is a good template to follow.

Setting up the strings is a two-step process. First define the strings.

#include <avr/pgmspace.h>
prog_char string_0[] PROGMEM = "String 0"; // "String 0" etc are strings to store - change to suit.
prog_char string_1[] PROGMEM = "String 1";
prog_char string_2[] PROGMEM = "String 2";
prog_char string_3[] PROGMEM = "String 3";
prog_char string_4[] PROGMEM = "String 4";
prog_char string_5[] PROGMEM = "String 5";

// Then set up a table to refer to your strings.

PROGMEM const char *string_table[] = // change "string_table" name to suit
{
string_0,
string_1,
string_2,
string_3,
string_4,
string_5 };

Of course if you don't need a table of your strings you can skip the second part and reference the strings individually.