The Museum of HP Calculators

HP Forum Archive 21

[ Return to Index | Top of Index ]

Mapping HP48 Text to Unicode
Message #1 Posted by Chris Dreher on 9 Dec 2012, 1:19 a.m.

Here is a table for how to translate HP48 text characters into Unicode characters, which is what modern computers use for text. Now HP48 developers create software that transfers, displays, or edits HP48 characters (ex: copying a file from an HP48 calc to a computer) with code that will reliably display a corresponding character. By using this mapping table, we should be able to avoid the garbage data, bugs, and crashes that has been an issue for some PC/Mac/Linux side HP48 software.

Further details and explanations in an easier to read format is available at
http://www.drehersoft.com/mapping-hp48-text-to-unicode

Mapping HP48 Text to Unicode
Most HP48 characters can be directly mapped to Unicode characters for the ranges of 0x00 to 0x1F, 0x20 to 0x7E, and 0xA0 to 0xFF. For example, an HP48 character of 'A' is 0x41 (65 in decimal) and in Unicode would be 0041 (65 in decimal). However, the 34 special characters of 0x1F and from 0x7F to 0x9F should be translated by the below table:


  HP48         Unicode    
Dec   Hex    Code    Name
---------    ------------
31     1F    2026    Ellipsis
127    7F    2592    Medium Shade
128    80    2220    Measured Angle
129    81    0101    Latin Small Letter a with Macron
130    82    2207    Nabla
131    83    221A    Square Root
132    84    222B    Integral
133    85    03A3    Greek Capital Letter Sigma
134    86    25B6    Black Right-Pointing Triangle
135    87    03C0    Greek Small Letter Pi
136    88    2202    Partial Differential
137    89    2264    Less-Than or Equal To
138    8A    2265    Greater-Than or Equal To
139    8B    2260    Not Equal To
140    8C    03B1    Greek Small Letter Alpha
141    8D    2192    Rightwards Arrow
142    8E    2190    Leftwards Arrow
143    8F    2193    Downwards Arrow
144    90    2191    Upwards Arrow
145    91    03B3    Greek Small Letter Gamma
146    92    03B4    Greek Small Letter Delta
147    93    03B5    Greek Small Letter Epsilon
148    94    03B7    Greek Small Letter Eta
149    95    03B8    Greek Small Letter Theta
150    96    03BB    Greek Small Letter Lamda
151    97    03C1    Greek Small Letter Rho
152    98    03C3    Greek Small Letter Sigma
153    99    03C4    Greek Small Letter Tau
154    9A    03C9    Greek Small Letter Omega
155    9B    0394    Greek Capital Letter Delta
156    9C    03A0    Greek Capital Letter Pi
157    9D    03A9    Greek Capital Letter Omega
158    9E    25A0    Black Square
159    9F    221E    Infinity

If you are using UTF-8, then it is necessary to encode each Unicode characters into the appropriate 1, 2, or 3 byte sequences.

Resources
Unicode Standard: http://unicode.org/
Unicode Character Name Index: http://www.unicode.org/charts/charindex.html
UTF-8 summary: http://en.wikipedia.org/wiki/Utf-8

      
Re: Mapping HP48 Text to Unicode
Message #2 Posted by peacecalc on 9 Dec 2012, 3:29 a.m.,
in response to message #1 by Chris Dreher

Hello Chris,

is that also a problem by transferring files between HP 50g and PC? If yes, it is possible to use same mapping table?

Thank you for your efforts, peacecalc

Edited: 9 Dec 2012, 3:30 a.m.

            
Re: Mapping HP48 Text to Unicode
Message #3 Posted by Chris Dreher on 11 Dec 2012, 1:37 a.m.,
in response to message #2 by peacecalc

I'm no expert on the HP 49/50 line of products. However, I did find an HP-49 manual at http://h10032.www1.hp.com/ctg/Manual/bpia5324.pdf

Overall, the table I provided is fine with the following exceptions. Someone will need to search the Unicode tables for the correct character.

Dec   Hex   Name
160   A0    Euro (HP changed the standard non-breaking space to the Euro character)
10    0A    Newline  
28    1B    Large Left-pointing Black Arrow
29    1C    Solid Black Cursor
30    1D    Ellipse
                  
Re: Mapping HP48 Text to Unicode
Message #4 Posted by peacecalc on 11 Dec 2012, 12:33 p.m.,
in response to message #3 by Chris Dreher

Hello Chris,

thank you for sharing your knowledge! This is a good information for hp 50g user.

Greetings peacecalc

      
Re: Mapping HP48 Text to Unicode
Message #5 Posted by David Hayden on 10 Dec 2012, 4:38 p.m.,
in response to message #1 by Chris Dreher

Chris,

Thanks for putting this together. Can I suggest that you put it in the articles section of this forum? This seems like a useful bit of information.

Dave

            
Re: Mapping HP48 Text to Unicode
Message #6 Posted by Chris Dreher on 11 Dec 2012, 1:38 a.m.,
in response to message #5 by David Hayden

That's a great idea! I'll look into writing one.


[ Return to Index | Top of Index ]

Go back to the main exhibit hall