In computingFOCAL character set refers to a group of 8-bitsingle bytecharacter sets introduced byHewlett-Packard since 1979. It was used in severalRPNcalculators supporting theFOCAL programming language, like theHP-41C/CV/CX as well as the laterHP-42S,[1][2] which was introduced in 1988[1][2] and produced up to 1995. As such, it is also used bySwissMicros'DM41/L, both introduced in 2015, and is implicitly supported by theDM42, introduced in 2017 (although the later calculator utilizesFree42, which is based onUnicode internally).
The character set is derived fromASCII, but with the control code range and some high bit characters replaced by various special characters.
| 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | A | B | C | D | E | F | |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 0x | ‾/♦ | × | x̅/ā | ← | α | β | Γ | ↓ | Δ | σ | ♦ | λ | µ/μ | ∡/∠ | τ | Φ |
| 1x | θ | Ω | δ | Å | å | Ä | ä | Ö | ö | Ü | ü | Æ | æ | ≠ | £/₤ | ▒ |
| 2x | SP | ! | " | # | $ | % | & | ' | ( | ) | * | + | , | - | . | / |
| 3x | 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | : | ; | < | = | > | ? |
| 4x | @ | A | B | C | D | E | F | G | H | I | J | K | L | M | N | O |
| 5x | P | Q | R | S | T | U | V | W | X | Y | Z | [ | \ | ] | ↑/^ | _ |
| 6x | `/⊤ | a | b | c | d | e | f | g | h | i | j | k | l | m | n | o |
| 7x | p | q | r | s | t | u | v | w | x | y | z | π | | | → | Σ | ⊦[nb 1] |
When Hewlett-Packard introduced theHP-42S in 1988, the FOCAL character set was revised to include more characters, including a number of characters already provided by theHP 82240A infraredthermo printer, which had been introduced in 1986,[6] as part of itsextended variant of the 1985 revision of theHP Roman-8 character set,[7][8] although at completely different code points.
There is no code point definition for theeuro sign in this character set.
| 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | A | B | C | D | E | F | |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 0x | ÷ | × | √ | ∫ | ░ | Σ | ▶[nb 2] | π | ¿ | ≤ | LF/EOT | ≥ | ≠ | ↵ | ↓ | → |
| 1x | ← | µ/μ | £/₤ | ° | Å | Ñ | Ä | ∡/∠ | ᴇ/⏨ | Æ | …/‥ | ␛ | Ö | Ü | ▒ | ■/· |
| 2x | SP | ! | " | # | $ | % | & | ' | ( | ) | * | + | , | - | . | / |
| 3x | 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | : | ; | < | = | > | ? |
| 4x | @ | A | B | C | D | E | F | G | H | I | J | K | L | M | N | O |
| 5x | P | Q | R | S | T | U | V | W | X | Y | Z | [ | \ | ] | ↑/^ | _ |
| 6x | ` | a | b | c | d | e | f | g | h | i | j | k | l | m | n | o |
| 7x | p | q | r | s | t | u | v | w | x | y | z | { | | | } | ~ | ⊦[nb 1] |
| 8x | ¦? | ¥? | ▓? | ␊ |
Translation from HP-42S character set to themodified HP Roman-8 (supported byHP 82240A etc.) character set:
| 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | A | B | C | D | E | F | |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 0x | 0x81 | 0x82 | 0x83 | 0x84 | 0x04 | 0x85 | 0x86 | 0x87 | 0x08 | 0x89 | 0x04 | 0x8A | 0x8B | 0x0D | 0x0E | 0x8D |
| 1x | 0x8E | 0x8F | 0xAF | 0xB3 | 0xA2 | 0xB6 | 0xD8 | 0xA0 | 0x18 | 0xD3 | 0x9B | 0x1B | 0xDA | 0xDB | 0x7F | 0xF2 |
| 7x | 0x70 | 0x71 | 0x72 | 0x73 | 0x74 | 0x75 | 0x76 | 0x77 | 0x78 | 0x79 | 0x7A | 0x7B | 0x7C | 0x7D | 0x7E | 0x94 |
| 8x | 0x80 | 0x81 | 0x82 | 0x83 | 0x84 | 0x85 | 0x86 | 0x87 | 0x88 | 0x89 | 0x90 | 0x8B | 0x8C | 0x8D | 0x8E | 0x8F |