'Accessing the Extended ASCII Character Set from 0xF000 to 0xF0FF using ncursesw in Raspbian Linux

I'm writing an application for the non-GUI text terminal in Raspian Linux in C++ using the ncursesw library. I found out by accident that if you print anything with mvwaddch using A_ALTCHARSET (e.g. mvwaddch(stdscr, 1, 1, A_ALTCHARSET | 65);), then the entire Extended ASCII character set (0 - 255) becomes available to mvadd_wch starting from index 0xF000.

It doesn't look like 0xF000 is an official mapping for the UTF-8 locale that my terminal is configured for. Somehow the ncursesw library triggers the system to load up these characters.

How is this done? Is there a way to load up this character set without first writing junk data using A_ALTCHARSET?

It may be enough for my purposes to use a mvwaddch(stdscr, 0, 0, A_ALTCHARSET); to print a null character when the program initializes. But I would still like to know what is happening behind the scenes here.

For reference, this is the character set I am referring to: enter image description here



Sources

This article follows the attribution requirements of Stack Overflow and is licensed under CC BY-SA 3.0.

Source: Stack Overflow

Solution Source