Post Reply 
HP 48GX Character Set
03-25-2021, 08:47 PM
Post: #1
HP 48GX Character Set
The HP 48GX character set (0 - 63) contains black squares (null characters?) numbered 0 - 30. Why are there so many and are they used to indicate a carriage return?
Find all posts by this user
Quote this message in a reply
03-25-2021, 09:03 PM
Post: #2
RE: HP 48GX Character Set
Character codes 0 through 30 are non-printing control characters. Character # 13 is carriage return, # 10 is line feed. I believe that the 48 uses line feed to separate lines.
Find all posts by this user
Quote this message in a reply
03-25-2021, 09:19 PM
Post: #3
RE: HP 48GX Character Set
(03-25-2021 09:03 PM)John Keith Wrote:  Character codes 0 through 30 are non-printing control characters.
Is there any good documentation on that?
Find all posts by this user
Quote this message in a reply
03-25-2021, 09:46 PM (This post was last modified: 03-26-2021 11:04 AM by Giuseppe Donnini.)
Post: #4
RE: HP 48GX Character Set
The first 128 characters of the HP-48 character set (codes 0 to 127 decimal or 00 to FF hexadecimal) adhere to the character encoding standard known as the American Standard Code for Information Interchange or ASCII, so any good documentation on ASCII will do.

ASCII defines the first 32 characters (0-31d / 00-1Fh) and the last one (127d = FFh) as non-printable control characters. How these are interpreted depends on the device in use.
Find all posts by this user
Quote this message in a reply
03-25-2021, 10:48 PM
Post: #5
RE: HP 48GX Character Set
From https://en.m.wikipedia.org/wiki/Control_character

The control characters in ASCII still in common use include:

0 (null, NUL, \0, ^@), originally intended to be an ignored character, but now used by many programming languages including C to mark the end of a string.
7 (bell, BEL, \a, ^G), which may cause the device to emit a warning such as a bell or beep sound or the screen flashing.
8 (backspace, BS, \b, ^H), may overprint the previous character.
9 (horizontal tab, HT, \t, ^I), moves the printing position right to the next tab stop.
10 (line feed, LF, \n, ^J), moves the print head down one line, or to the left edge and down. Used as the end of line marker in most UNIX systems and variants.
11 (vertical tab, VT, \v, ^K), vertical tabulation.
12 (form feed, FF, \f, ^L), to cause a printer to eject paper to the top of the next page, or a video terminal to clear the screen.
13 (carriage return, CR, \r, ^M), moves the printing position to the start of the line, allowing overprinting. Used as the end of line marker in Classic Mac OS, OS-9, FLEX (and variants). A CR+LF pair is used by CP/M-80 and its derivatives including DOS and Windows, and by Application Layer protocols such as FTP, SMTP, and HTTP.
26 (Control-Z, SUB, EOF, ^Z). Acts as an end-of-file for the Windows text-mode file i/o.
27 (escape, ESC, \e (GCC only), ^[). Introduces an escape sequence.
Visit this user's website Find all posts by this user
Quote this message in a reply
03-27-2021, 04:49 PM (This post was last modified: 03-27-2021 04:50 PM by Chris Dreher.)
Post: #6
RE: HP 48GX Character Set
The HP48 mostly matches the ISO 8859-1 character set, which is a superset of ASCII. However, about 34 of the HP48 characters are non-standard and don't follow ISO 8859-1.

Here is an article that talks about how to map the non-standard characters to a modern OS that uses the far more advanced Unicode character set. However, this article does not cover what the control characters mean (0-30), which is closer to your original question. Note that character 31 is a control character in ASCII (specifically, the "Unit Separator"), it is a rendering character on the HP48.

https://www.drehersoft.com/mapping-hp48-...o-unicode/
Visit this user's website Find all posts by this user
Quote this message in a reply
03-27-2021, 10:46 PM
Post: #7
RE: HP 48GX Character Set
(03-27-2021 04:49 PM)Chris Dreher Wrote:  The HP48 mostly matches the ISO 8859-1 character set, which is a superset of ASCII. However, about 34 of the HP48 characters are non-standard and don't follow ISO 8859-1.
Thanks for the reply! I appreciate your work developing the Droid48 Reader. It's innovators like you who keep the wonderful work done by Hewlett-Packard alive. The idea for my post came to mind after storing a CSV file as a string, recalling it to the stack, pressing [STACK] and then [VIEW]. Each line, except the last, contains a control character at the end of it. I identified the control character as a line feed because I removed the character from the string and NUM returned 10. I will now be able to store each line in a list of lists by using zero and the value of NUM as parameters for POS.
Find all posts by this user
Quote this message in a reply
03-27-2021, 10:50 PM
Post: #8
RE: HP 48GX Character Set
(03-25-2021 10:48 PM)Thomas Okken Wrote:  https://en.m.wikipedia.org/wiki/Control_character
Thank you for the link!
Find all posts by this user
Quote this message in a reply
03-27-2021, 10:53 PM
Post: #9
RE: HP 48GX Character Set
(03-25-2021 09:03 PM)John Keith Wrote:  Character codes 0 through 30 are non-printing control characters.
Thanks for the reply!
Find all posts by this user
Quote this message in a reply
03-27-2021, 10:55 PM
Post: #10
RE: HP 48GX Character Set
(03-25-2021 09:46 PM)Giuseppe Donnini Wrote:  The first 128 characters of the HP-48 character set (codes 0 to 127 decimal or 00 to FF hexadecimal) adhere to the character encoding standard known as the American Standard Code for Information Interchange or ASCII, so any good documentation on ASCII will do.
Thanks for the reply!
Find all posts by this user
Quote this message in a reply
Post Reply 




User(s) browsing this thread: 3 Guest(s)