+static void
+show_help(const char **help)
+{
+ WINDOW *mywin = newwin(LINES, COLS, 0, 0);
+ int n;
+
+ box(mywin, 0, 0);
+ wmove(mywin, 1, 1);
+ for (n = 0; help[n] != 0; ++n) {
+ wmove(mywin, 1 + n, 2);
+ wprintw(mywin, "%.*s", COLS - 4, help[n]);
+ }
+ wgetch(mywin);
+ delwin(mywin);
+ touchwin(stdscr);
+ refresh();
+}
+
+static void
+editor_help(void)
+{
+ static const char *msgs[] =
+ {
+ "You are now in the screen-editor, which allows you to make some",
+ "lines on the screen, as well as save copies of the screen to a",
+ "temporary file",
+ "",
+ "Keys:",
+ " q quit",
+ " n run the screen-loader to show the saved screens",
+ " <space> dump a screen",
+ "",
+ " a toggle between '#' and graphic symbol for drawing",
+ " c change color drawn by line to next in palette",
+ " h,j,k,l or arrows to move around the screen, drawing",
+ };
+ show_help(msgs);
+}
+
+static void
+replay_help(void)
+{
+ static const char *msgs[] =
+ {
+ "You are now in the screen-loader, which allows you to view",
+ "the dumped/restored screens.",
+ "",
+ "Keys:",
+ " q quit",
+ " <space> load the next screen",
+ " <backspace> load the previous screen",
+ };
+ show_help(msgs);
+}
+