.../Universal/Console/TerminalDxe/TerminalConOut.c | 18 +++++++++--------- 1 file changed, 9 insertions(+), 9 deletions(-)
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/TerminalConOut.c b/MdeModulePkg/Universal/Console/TerminalDxe/TerminalConOut.c
index e677a76e6b..5a8343162f 100644
--- a/MdeModulePkg/Universal/Console/TerminalDxe/TerminalConOut.c
+++ b/MdeModulePkg/Universal/Console/TerminalDxe/TerminalConOut.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
Reviewed-by: Star Zeng <star.zeng@intel.com> Cc Ray to see if any comments. Thanks, Star -----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/TerminalConOut.c b/MdeModulePkg/Universal/Console/TerminalDxe/TerminalConOut.c index e677a76e6b..5a8343162f 100644 --- a/MdeModulePkg/Universal/Console/TerminalDxe/TerminalConOut.c +++ b/MdeModulePkg/Universal/Console/TerminalDxe/TerminalConOut.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 _______________________________________________ edk2-devel mailing list edk2-devel@lists.01.org https://lists.01.org/mailman/listinfo/edk2-devel
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/TerminalConOut.c > b/MdeModulePkg/Universal/Console/TerminalDxe/TerminalConOut.c > index e677a76e6b..5a8343162f 100644 > --- a/MdeModulePkg/Universal/Console/TerminalDxe/TerminalConOut.c > +++ b/MdeModulePkg/Universal/Console/TerminalDxe/TerminalConOut.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 _______________________________________________ edk2-devel mailing list edk2-devel@lists.01.org https://lists.01.org/mailman/listinfo/edk2-devel
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 _______________________________________________ edk2-devel mailing list edk2-devel@lists.01.org https://lists.01.org/mailman/listinfo/edk2-devel
Thanks for the explanation. Reviewed-by: Ruiyu Ni <Ruiyu.ni@intel.com> Thanks/Ray > -----Original Message----- > From: Kinney, Michael D > Sent: Thursday, November 9, 2017 12:29 AM > To: Ni, Ruiyu <ruiyu.ni@intel.com>; 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: [edk2] [Patch] MdeModulePkg/TerminalDxe: Fix PCANSI > mapping for TRIANGLE and ARROW > > 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 _______________________________________________ edk2-devel mailing list edk2-devel@lists.01.org https://lists.01.org/mailman/listinfo/edk2-devel
© 2016 - 2024 Red Hat, Inc.