-$NHDT-Branch: NetHack-3.6 $:$NHDT-Revision: 1.137 $ $NHDT-Date: 1571045295 2019/10/14 09:28:15 $
+$NHDT-Branch: NetHack-3.6 $:$NHDT-Revision: 1.138 $ $NHDT-Date: 1571267989 2019/10/16 23:19:49 $
This fixes36.3 file is here to capture information about updates in the 3.6.x
lineage following the release of 3.6.2 in May 2019. Please note, however,
curses+'perm_invent': since persistent inventory is narrow, strip off "a",
"an", or "the" prefix on inventory entries shown there so that a tiny
bit more of the interesting portion is visible
+curses+'curses': change the curses map display to use new symbol set 'curses'
+ instead of hard-coded values; it attempts to show IBMgraphics-style
+ map using DECgraphics characters; DECgraphics can also be used as-is
NetHack Community Patches (or Variation) Included
}
}
-/* Replace certain characters with portable drawing characters if
- cursesgraphics option is enabled, or special curses handling for
- DECgraphics */
+/* convert nethack's DECgraphics encoding into curses' ACS encoding */
int
curses_convert_glyph(int ch, int glyph)
{
- int retch, symbol;
+ /* The DEC line drawing characters use 0x5f through 0x7e instead
+ of the much more straightforward 0x60 through 0x7f, possibly
+ because 0x7f is effectively a control character (Rubout);
+ nethack ORs 0x80 to flag line drawing--that's stripped below */
+ static int decchars[33]; /* for chars 0x5f through 0x7f (95..127) */
+ int symbol;
/* FIXME? we don't support any special characters in roguesymset */
if (Is_rogue_level(&u.uz))
line-drawing characters are specified as lowercase letters (mostly)
and a control code is sent to the terminal telling it to switch
character sets (that's how the tty interface handles them).
- Curses remaps the characters instead.
-
- The DEC line drawing characters use 0x5f through 0x7e instead
- of the much more straightforward 0x60 through 0x7f, possibly
- because 0x7f is effectively a control character (Rubout);
- nethack ORs 0x80 to flag line drawing--that's stripped below */
- static int decchars[33]; /* for chars 0x5f through 0x7f (95..127) */
+ Curses remaps the characters instead. */
/* one-time initialization; some ACS_x aren't compile-time constant */
if (!decchars[0]) {