View Single Post
Old February 1, 2022, 01:32   #8
Join Date: Oct 2021
Location: WA
Posts: 237
smbhax is on a distinguished road
Modern ESC key support was added to Angband by on January 22, 2009 in

Their description of that commit is

* Make pseudo graphics the default for main-gcu, as they are for the other ports.
* Changed the default macros to use the new pre-processed keys, thus mostly eliminating the "escape delay" and being more portable.
* Implement support for the curses "alternate character set", used for pseudographics e.g. by nethack 'DECgraphics'. The high bit of characters is repurposed for this, hopefully the Eastern Europe community won't mind.
* We now use curses to parse keys, which does a much better job than the old "abuse of macro system". More portable and significantly faster, especially for Escape.
* Unprintable characters are blotted with ?s, removing another irritating display glitch from the visual editor.
It DOES include that "ESCDELAY" section in main-gcu.c.

It went out in Angband 3.1.1, 26th July 2009, noted specifically as

Use curses to parse keys, which is more portable and removes the Escape delay
under the heading "Curses port."

For an example of how it was incorporated into a variant that had forked from an earlier version of Angband: PosChengband incorporated it on February 25, 2015 as "Curses Port: Fix unacceptable delay on ESC keypress", with changes to main-gcu.c, util.c, and externs.h; there were also changes to Makefile, main.c, and z-config.h in that commit, but those may have been incidental.
My roguelike gameplay videos

Last edited by smbhax; February 1, 2022 at 01:46.
smbhax is offline   Reply With Quote