[comp.sys.handhelds] Finding that special character

fseipel@hpuxa.ircc.ohio-state.edu (Frank E. Seipel) (02/01/91)

 Ok, this one is so short I will just key it in by hand:

<< "" 32 159 FOR k k CHR + NEXT 161 255 FOR k k CHR + NEXT 'ChSet' STO >>

Run this once by entering it and pressing the EVAL key. It will create
a string variable, called ChSet, containing most of the 48's internal
characters, including those not easily typed from the keyboard (such as
theta, epsilon, etc). This string can be edited so as to include the
special characters you use most often at the beginning. You may wish to
adjust the limits on the above loops, depending on which characters you use
(see chart, page 694 of HP user manual).

<< 1 0 -> x k
   << DO ChSet x DUP 20 + SUB 1 DISP 0 WAIT 'k' STO
      'x+(k==36.1)-(k==34.1)-20*(k==25.1)+20*(k==35.1)' EVAL 'x' STO
         IF 'k==51.1' THEN ChSet x x SUB OBJ-> HALT
         END
      UNTIL 0
      END
   >>
>>

STO this as whatever you like (I call it 'Pick'). Now, whenever you want
a special character, simply evaluate Pick by entering the menu key from the
VAR menu or entering Pick from the keyboard.

 The top line of the display will show 20 characters: Use the up and down
arrows to move through lines of 20 characters, right and left arrow keys
to scroll the line right or left; when see the character you wish, simply
use the arrow keys to move it to the far left of the line and hit ENTER. This
character will then be placed on the stack, in level 1, as a variable object.
This is handy for when you want to name a variable with something descriptive
but don't have the programming manual handy. Boolean logic is used to
eliminate a lot of extra IF..THEN..END statements.