I use a black background for all of my windows. If I run X emacs and run M-x shell, the shell prompt comes up in light blue, which is quite pleasant and readable. If I run TTY emacs in xterm and run M-x shell, the shell prompt comes up in dark, almost-black blue which is impossible to read. I don't think this happened with previous Rawhide Emacs versions. I think this may have to do with the fact that (frame-parameter (selected-frame) 'background-mode) returns 'light even when the background is black. This is apparently because Emacs does not know how to find out the color of the xterm in which it is running. Is there a TTY control sequence that Emacs can send to a color xterm to ask what its background color is? If so, it needs to be taught to use it.
If you want to set the color, you can do it with e.g. (set-background-color "black") (set-cursor-color "red") (set-foreground-color "wheat") Just changing the background isn't necesarrily a good idea (and this didn't change in recent emacsen either, BTW)
I think perhaps you missed the point of my bug report. I don't want to set the background color. I already have a background color in my xterm window, i.e., black, and Emacs isn't behaving properly with respect to it. This *did* change in recent emacsen. I have kept up-to-date with Raw Hide Emacs releases continuously. My shell prompt only became impossible to read in emacs windows running in color xterm on Sunday when I upgraded to 21.1.80-2. The last time I upgraded before that was January 14; that version of Emacs did not have this problem. The workaround I found for this problem was to tell Emacs explicitly that I have a dark background color: (if (not window-system) (custom-set-variables ;; custom-set-variables was added by Custom -- don't edit or cut/paste it! ;; Your init file should contain only one such instance. '(frame-background-mode (quote dark)))) But if I have to do this now when I didn't have to do this in previous Emacs versions, then I think there's a bug.
WONTFIX - the emacs developers say there isn't a way for emacs to know this colour in a terminal. Workaround: Specify the colours you want.