+ <STRONG>o</STRONG> the parameter is a 7-bit US-ASCII code. This is the
+ case that X/Open Curses documented.
+
+ <STRONG>o</STRONG> the parameter is in the range 128-159, i.e., a C1 con-
+ trol code. If <STRONG>use_legacy_coding</STRONG> has been called with
+ a <STRONG>2</STRONG> parameter, <STRONG>unctrl</STRONG> returns the parameter, i.e., a
+ one-character string with the parameter as the first
+ character. Otherwise, it returns "~@", "~A", etc.,
+ analogous to "^@", "^A", C0 controls.
+
+ X/Open Curses does not document whether <STRONG>unctrl</STRONG> can be
+ called before initializing curses. This implementa-
+ tion permits that, and returns the "~@", etc., values
+ in that case.
+
+ <STRONG>o</STRONG> parameter values outside the 0 to 255 range. <STRONG>unctrl</STRONG>
+ returns a null pointer.
+
+ The strings returned by <STRONG>unctrl</STRONG> in this implementation are
+ determined at compile time, showing C1 controls from the
+ upper-128 codes with a "~" prefix rather than "^". Other
+ implementations have different conventions. For example,
+ they may show both sets of control characters with "^",
+ and strip the parameter to 7 bits. Or they may ignore C1
+ controls and treat all of the upper-128 codes as print-
+ able. This implementation uses 8 bits but does not modify
+ the string to reflect locale. The <STRONG>use_legacy_coding</STRONG> func-
+ tion allows the caller to change the output of <STRONG>unctrl</STRONG>.
+
+ Likewise, the <STRONG><A HREF="curs_inopts.3x.html">meta(3x)</A></STRONG> function allows the caller to
+ change the output of <STRONG>keyname</STRONG>, i.e., it determines whether
+ to use the "M-" prefix for "meta" keys (codes in the range
+ 128 to 255). Both <STRONG>use_legacy_coding</STRONG> and <STRONG>meta</STRONG> succeed only
+ after curses is initialized. X/Open Curses does not docu-
+ ment the treatment of codes 128 to 159. When treating
+ them as "meta" keys (or if <STRONG>keyname</STRONG> is called before ini-
+ tializing curses), this implementation returns strings
+ "M-^@", "M-^A", etc.
+
+
+</PRE><H3><a name="h3-use_env_use_tioctl">use_env/use_tioctl</a></H3><PRE>
+ If <STRONG>ncurses</STRONG> is configured to provide the sp-functions ex-
+ tension, the state of <STRONG>use_env</STRONG> and <STRONG>use_tioctl</STRONG> may be updat-
+ ed before creating each <EM>screen</EM> rather than once only
+ (<STRONG><A HREF="curs_sp_funcs.3x.html">curs_sp_funcs(3x)</A></STRONG>). This feature of <STRONG>use_env</STRONG> is not pro-
+ vided by other implementation of curses.
+
+
+</PRE><H2><a name="h2-SEE-ALSO">SEE ALSO</a></H2><PRE>
+ <STRONG><A HREF="legacy_coding.3x.html">legacy_coding(3x)</A></STRONG>, <STRONG><A HREF="ncurses.3x.html">curses(3x)</A></STRONG>, <STRONG><A HREF="curs_initscr.3x.html">curs_initscr(3x)</A></STRONG>, <STRONG>curs_in-</STRONG>
+ <STRONG><A HREF="curs_inopts.3x.html">opts(3x)</A></STRONG>, <STRONG><A HREF="curs_kernel.3x.html">curs_kernel(3x)</A></STRONG>, <STRONG><A HREF="curs_scr_dump.3x.html">curs_scr_dump(3x)</A></STRONG>,
+ <STRONG><A HREF="curs_sp_funcs.3x.html">curs_sp_funcs(3x)</A></STRONG>, <STRONG><A HREF="curs_variables.3x.html">curs_variables(3x)</A></STRONG>, <STRONG><A HREF="legacy_coding.3x.html">legacy_coding(3x)</A></STRONG>.