public inbox for devel@edk2.groups.io
 help / color / mirror / Atom feed
From: "Kinney, Michael D" <michael.d.kinney@intel.com>
To: "Ni, Ruiyu" <ruiyu.ni@intel.com>,
	"edk2-devel@lists.01.org" <edk2-devel@lists.01.org>,
	"Kinney, Michael D" <michael.d.kinney@intel.com>
Cc: "Dong, Eric" <eric.dong@intel.com>, "Zeng, Star" <star.zeng@intel.com>
Subject: Re: [Patch] MdeModulePkg/TerminalDxe: Fix PCANSI mapping for TRIANGLE and ARROW
Date: Wed, 8 Nov 2017 16:29:15 +0000	[thread overview]
Message-ID: <E92EE9817A31E24EB0585FDF735412F5A7DBE2A0@ORSMSX113.amr.corp.intel.com> (raw)
In-Reply-To: <734D49CCEBEEF84792F5B80ED585239D5BAB6C7F@SHSMSX104.ccr.corp.intel.com>

When DOS uses CodePage 437, 18 is an up arrow glyph.

A PC ANSI terminal interprets 18 as a control character.

Mike

> -----Original Message-----
> From: Ni, Ruiyu
> Sent: Tuesday, November 7, 2017 11:47 PM
> To: Kinney, Michael D <michael.d.kinney@intel.com>;
> edk2-devel@lists.01.org
> Cc: Dong, Eric <eric.dong@intel.com>; Zeng, Star
> <star.zeng@intel.com>
> Subject: RE: [edk2] [Patch] MdeModulePkg/TerminalDxe:
> Fix PCANSI mapping for TRIANGLE and ARROW
> 
> Mike,
> I am a bit confused about mapping 0x18 to upper arrow.
> I remembered that in old days, pressing ALT+18 in DOS
> window can generate upper arrow.
> 
> Thanks/Ray
> 
> > -----Original Message-----
> > From: edk2-devel [mailto:edk2-devel-
> bounces@lists.01.org] On Behalf Of
> > Michael D Kinney
> > Sent: Wednesday, November 8, 2017 12:24 PM
> > To: edk2-devel@lists.01.org
> > Cc: Dong, Eric <eric.dong@intel.com>; Zeng, Star
> <star.zeng@intel.com>
> > Subject: [edk2] [Patch] MdeModulePkg/TerminalDxe: Fix
> PCANSI mapping
> > for TRIANGLE and ARROW
> >
> > https://bugzilla.tianocore.org/show_bug.cgi?id=761
> >
> > When a TerminalType is set to PCANSI, characters in
> the range 0x00 to 0x1F
> > are control characters.  The mapping table for PCANSI
> maps TRIANGLE glyphs,
> > ARROW_UP glyph, and ARROW_DOWN glyph into this
> control character
> > range and that causes no characters to be displayed
> by PCANSI compatible
> > terminal emulators.
> >
> > The mappings are updated so these glyphs are mapped
> to ANSI characters in
> > the range 0x20 to 0x7E.
> >
> > GEOMETRICSHAPE_UP_TRIANGLE     '^'
> > GEOMETRICSHAPE_RIGHT_TRIANGLE  '>'
> > GEOMETRICSHAPE_DOWN_TRIANGLE   'v'
> > GEOMETRICSHAPE_LEFT_TRIANGLE   '<'
> > ARROW_UP                       '^'
> > ARROW_DOWN                     'v'
> >
> > Cc: Star Zeng <star.zeng@intel.com>
> > Cc: Eric Dong <eric.dong@intel.com>
> > Contributed-under: TianoCore Contribution Agreement
> 1.1
> > Signed-off-by: Michael D Kinney
> <michael.d.kinney@intel.com>
> > ---
> >  .../Universal/Console/TerminalDxe/TerminalConOut.c
> | 18 +++++++++----
> > -----
> >  1 file changed, 9 insertions(+), 9 deletions(-)
> >
> > diff --git
> >
> a/MdeModulePkg/Universal/Console/TerminalDxe/TerminalCo
> nOut.c
> >
> b/MdeModulePkg/Universal/Console/TerminalDxe/TerminalCo
> nOut.c
> > index e677a76e6b..5a8343162f 100644
> > ---
> a/MdeModulePkg/Universal/Console/TerminalDxe/TerminalCo
> nOut.c
> > +++
> b/MdeModulePkg/Universal/Console/TerminalDxe/TerminalCo
> nOut.c
> > @@ -66,15 +66,15 @@ UNICODE_TO_CHAR
> UnicodeToPcAnsiOrAscii[] = {
> >    { BLOCKELEMENT_FULL_BLOCK,            0xdb, L'*'
> },
> >    { BLOCKELEMENT_LIGHT_SHADE,           0xb0, L'+'
> },
> >
> > -  { GEOMETRICSHAPE_UP_TRIANGLE,         0x1e, L'^'
> },
> > -  { GEOMETRICSHAPE_RIGHT_TRIANGLE,      0x10, L'>'
> },
> > -  { GEOMETRICSHAPE_DOWN_TRIANGLE,       0x1f, L'v'
> },
> > -  { GEOMETRICSHAPE_LEFT_TRIANGLE,       0x11, L'<'
> },
> > -
> > -  { ARROW_LEFT,                         0x3c, L'<'
> },
> > -  { ARROW_UP,                           0x18, L'^'
> },
> > -  { ARROW_RIGHT,                        0x3e, L'>'
> },
> > -  { ARROW_DOWN,                         0x19, L'v'
> },
> > +  { GEOMETRICSHAPE_UP_TRIANGLE,         '^', L'^' },
> > +  { GEOMETRICSHAPE_RIGHT_TRIANGLE,      '>', L'>' },
> > +  { GEOMETRICSHAPE_DOWN_TRIANGLE,       'v', L'v' },
> > +  { GEOMETRICSHAPE_LEFT_TRIANGLE,       '<', L'<' },
> > +
> > +  { ARROW_LEFT,                         '<', L'<' },
> > +  { ARROW_UP,                           '^', L'^' },
> > +  { ARROW_RIGHT,                        '>', L'>' },
> > +  { ARROW_DOWN,                         'v', L'v' },
> >
> >    { 0x0000,                             0x00, L'\0'
> }
> >  };
> > --
> > 2.14.2.windows.3
> >
> > _______________________________________________
> > edk2-devel mailing list
> > edk2-devel@lists.01.org
> > https://lists.01.org/mailman/listinfo/edk2-devel


  reply	other threads:[~2017-11-08 16:25 UTC|newest]

Thread overview: 5+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2017-11-08  4:23 [Patch] MdeModulePkg/TerminalDxe: Fix PCANSI mapping for TRIANGLE and ARROW Michael D Kinney
2017-11-08  6:21 ` Zeng, Star
2017-11-08  7:47 ` Ni, Ruiyu
2017-11-08 16:29   ` Kinney, Michael D [this message]
2017-11-09  2:58     ` Ni, Ruiyu

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-list from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=E92EE9817A31E24EB0585FDF735412F5A7DBE2A0@ORSMSX113.amr.corp.intel.com \
    --to=devel@edk2.groups.io \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox