diff -Naur include/flag.h include/flag.h --- include/flag.h 2003-12-07 23:39:13.000000000 +0000 +++ include/flag.h 2014-08-05 00:28:00.384982808 +0000 @@ -44,6 +44,7 @@ boolean friday13; /* it's Friday the 13th */ boolean help; /* look in data file for info about stuff */ boolean ignintr; /* ignore interrupts */ + boolean initprompt; /* Determines if the starting prompt is shown */ #ifdef INSURANCE boolean ins_chkpt; /* checkpoint as appropriate */ #endif diff -Naur src/options.c src/options.c --- src/options.c 2003-12-07 23:39:13.000000000 +0000 +++ src/options.c 2014-08-05 00:24:46.131155167 +0000 @@ -106,6 +106,7 @@ #else {"IBMgraphics", (boolean *)0, FALSE, SET_IN_FILE}, #endif + {"initprompt", &flags.initprompt, TRUE, SET_IN_FILE}, #ifndef MAC {"ignintr", &flags.ignintr, FALSE, SET_IN_GAME}, #else diff -Naur win/tty/wintty.c win/tty/wintty.c --- win/tty/wintty.c 2003-12-07 23:39:14.000000000 +0000 +++ win/tty/wintty.c 2014-08-05 00:24:48.861082077 +0000 @@ -331,28 +331,33 @@ if (!flags.randomall && (flags.initrole == ROLE_NONE || flags.initrace == ROLE_NONE || flags.initgend == ROLE_NONE || flags.initalign == ROLE_NONE)) { - int echoline; - char *prompt = build_plselection_prompt(pbuf, QBUFSZ, flags.initrole, - flags.initrace, flags.initgend, flags.initalign); + int echoline; + if(flags.initprompt) { + char *prompt = build_plselection_prompt(pbuf, QBUFSZ, flags.initrole, + flags.initrace, flags.initgend, flags.initalign); - tty_putstr(BASE_WINDOW, 0, ""); - echoline = wins[BASE_WINDOW]->cury; - tty_putstr(BASE_WINDOW, 0, prompt); - do { - pick4u = lowc(readchar()); - if (index(quitchars, pick4u)) pick4u = 'y'; - } while(!index(ynqchars, pick4u)); - if ((int)strlen(prompt) + 1 < CO) { - /* Echo choice and move back down line */ - tty_putsym(BASE_WINDOW, (int)strlen(prompt)+1, echoline, pick4u); - tty_putstr(BASE_WINDOW, 0, ""); - } else - /* Otherwise it's hard to tell where to echo, and things are - * wrapping a bit messily anyway, so (try to) make sure the next - * question shows up well and doesn't get wrapped at the - * bottom of the window. - */ - tty_clear_nhwindow(BASE_WINDOW); + tty_putstr(BASE_WINDOW, 0, ""); + echoline = wins[BASE_WINDOW]->cury; + tty_putstr(BASE_WINDOW, 0, prompt); + do { + pick4u = lowc(readchar()); + if (index(quitchars, pick4u)) pick4u = 'y'; + } while(!index(ynqchars, pick4u)); + + if ((int)strlen(prompt) + 1 < CO) { + /* Echo choice and move back down line */ + tty_putsym(BASE_WINDOW, (int)strlen(prompt)+1, echoline, pick4u); + tty_putstr(BASE_WINDOW, 0, ""); + } else + /* Otherwise it's hard to tell where to echo, and things are + * wrapping a bit messily anyway, so (try to) make sure the next + * question shows up well and doesn't get wrapped at the + * bottom of the window. + */ + tty_clear_nhwindow(BASE_WINDOW); + } else { + pick4u = 'n'; + } if (pick4u != 'y' && pick4u != 'n') { give_up: /* Quit */