When you hit rightshift and char, in order to get to the screen with all of the various characters and symbols the calculator uses, there are a bunch of solid black boxes heading the list. I'd like to modify how each of these look and use them for variables, but when I use the resulting symbol in an equation I get a context error or something. Does anyone know what these characters are for?
Those solid block characters in the characters menu.
|
|
« Next Oldest | Next Newest »
|
▼
11-02-2006, 12:49 PM
▼
11-02-2006, 01:12 PM
If you look at an ASCII code table, you will notice that codes below #32d (#20h, Space) are designated to control functions. On your PC, these are created by holding down the Ctrl key together with a character key. Some of these have well known names, such as SOH, STX, ETX, EOT, BS, CR, LF, FF, DLE, XON, XOFF. They have special meanings to devices that understand them (e. g. a printer feeds the paper one line if it encounters a LF, #10d.) In most fonts the control characters aren't assigned. The black boxes in the character table of the 48/49/50 series are these control characters. The command line parser seems to handle them in a special way so that they can't be used outside of strings. Marcus ▼
11-02-2006, 08:40 PM
True, the codes 0d through 31d and 127d are "ASCII control codes". The calculators use 10d (ASCII Line Feed) as a "New Line" code. In the 48 series, 27d (ASCII Escape) causes the parser to ignore at least some of the restrictions on the following character. Some of the control codes (which ones depend on the model) have a "graphical representation" other than the small square. Other than that, the ASCII control codes (except 27d), along with the characters space, semicolon, and whichever of period or comma is not the "fraction mark" character, function as separator characters (like "white space") for the parser. On the 48 series, character 160d (ECMA 94 "non-breaking space") is treated the same as a space character and is a separator, but in the 49 series, 160d is used for the Euro character, and is not a separator. But note that the semicolon character by itself (enclosed by separators) is a command on the 49 series. If there's anything on the stack, it behaves the same as DROP; otherwise it does nothing. Any series of separators is treated the same as a single separator. According to ECMA 94, codes 128d through 159d are control codes, but the calculators treat them as ordinary "graphic" characters. Within a character string, all characters are treated as "literal characters", never as separators or delimiters. One may want to use control codes as printer commands or escape sequences, or one could have an application parse a string according to its own rules.
Regards,
Edited: 2 Nov 2006, 9:03 p.m. ▼
11-03-2006, 01:12 AM
PS:
Certain restrictions are (ordinarily) imposed on global names.
I don't know the reason for the restriction to 127 characters; the
However, the 48 and 49 series do have a $>ID SysRPL command that
So you can make a global name such as 'A B' that contains a
Also note that Conn4x translates (if needed) global names to file
For storing as a binary-transferred file on an MMC or SD card, if
For other file transfers, such as Kermit or Xmodem, you should
Note that if you have the calculator set to use the comma as the
Regards,
11-02-2006, 08:04 PM
It's been a while since I've done this, so I'm a bit fuzzy on the details, but you can make your own custom fonts. When you're in the character browser, highlight the character that you want to modify and press the MODIF (D or F4) menu key. A "pixel map" of the character will be displayed, with the current pixel indicated by a small square. Press the "." key to toggle the pixel between off and on. Press the menu key SCAN to go back to the character browser, or CHR- or CHR+ to step to a different character. Press either CANCEL or ENTER to exit the browser and have the modified font used as the "current font". To save the font, execute FONT\-> to put the current font on the stack (it will look similar to: Ft8_0:SYSTEM 8), and the store it in a global variable with whatever name you like. The built-in fonts can be recalled with the FONT6, FONT7, and FONT8 commands, and a font on level 1 is made current with the \->FONT command. Also, for more information, try searches at http://groups.google.com/group/comp.sys.hp48? and http://www.hpcalc.org/. You can probably find some custom fonts at http://www.hpcalc.org/. For the 48 series, this isn't built-in, but search for something like "universal font".
Regards, |