Some useful key assignments for the HP49+

The assingment browser TopkeysPlusOption More in Keyman+ (vs. 9.2003) offers some top key assignments. These are supplemented by Topkeys+, a browser shown in the screen-shot. It offers 30 different key assignments aiming at operating the 49+ efficiently. None of these is in conflict with standard assignments. They are all based on Keyman+ and OT49+ which must both be present. As long as the 49 doesn't get a ROM compatible with the 49+ ROM, the same key assignments on both calculators may be incompatible. All assignments are fast and small. Like the ones proposed in Keyman+, related assignments are put on the same key whenever possible. This makes it easier to keep the assignments in mind. Press ASN on a scanned item in Topkeys+ and try it. Assigning a key repeatedly doesn't matter.You may always delete it, the easiest with A?D from Keyman+. The browser is left with EXIT or CANCEL. The file  Topkeys+ may be purged after you have choosen your assignments. Clearly, these work only in USR mode as always. You may write in STARTUP to remain in USR mode also after a warmstart.

Some assigned keys keep their original functionality in edit mode although this may not be mentioned below. For instance,  LS  (Leftshift UpArrow) or other arrow keys continue to move the cursor in edit mode. Although several arrow keys get assigned but there is still enough room for other assignments on the arrow keys, e.g., for those of Emacs. Consider the Topkey+ assignments as propositions. There is no problem to purge, to modify or to create similar mode-sensitive assignments with Keyman. Clearly, the fact  there is no interference of the proposed assignments with the standard key functions has to be payed with a slightly more care in operating the keys. For instance, when using the assignment on LS-hold SPC: if LS is hold and SPC is shortly hit, DEG toggles with RAD (look into the Header), but while still holding LS and pressing SPC a bit longer, you cycle through the 3 coordinate systems. A very useful and amazing assignment.

New in version 2.2004: Assignments on RS_I and RS_ swapped.

First version 1.2004.
Some key assignments are identical with those from Topkeys for the HP49.

Abbreviations:  LS= leftshift, RS= rightshift, o = Longhold, _ denotes shift hold. For instance, LS SPC is leftshift SPC while LS_SPC is leftshift-hold SPC, i.e., the leftshift key has to be hold while pressing the SPC key. and : denote the UpArrow and DownArrow keys, the backspace key 45.1.

Here the description of the assignments in RPN mode. A key is denoted by the letter on it (if there is any). The most important flag togglings are concentrated on   and its shiftings. The two flag on LS_ are for the very advanced programmer only.  

RS G:  STARTUP Run the reserved variable STARTUP which may set flags, menu, font etc after a warmstart. Clearly, RS G keeps its functionality in edit mode..
RS_G:  256 MENU Set the menu of the so-called Developement library which is automatically attached by OT49+: This menu setting is mode independent.
RS H:  DType Get precise information on the object in level 1 as explained in OT49.htm.
RS_H:  HIDE Set command menu of library HIDE if present.
RS I:  3tog Toggle the 3 representations of a program, see OT49.htm
RS_I:  OBJ Executes  OBJ or writes this command in edit mode.
LS  :  ~ -92/-71 If short pressed toggles flag -92 (asm/SysRP compilation, resp.). If long pressed toggle flag -71 (addresses). Important for asm/SysRPL programmers only.
RS  ~ -117/90 If short pressed toggle flag -117 ( ChooseBox/Softmenu), if long pressed toggle flag -90 (ChooseBox normal/mini). Flag -117 is important since only the box-display of menus can provide HELP. Also flag -90 is important for good readability.
RS_:   ~ -85/-79 If short pressed while shift is hold toggle flag -85 ( Normal/SysRPL stack), if long pressed toggle flag -79 (Textbook). The assignment has a nice property in Edit mode. If pressing RS_  on a bint in an extra line it is displayed in DEC and in HEX representation. This also holds for zints or user binaries if you temporarily put the nacked number without any prefix or suffix in an extra line.
LS_J:  HiddenDir If LS is hold while pressing on VAR, enter the Hidden Directory but in a suspended state (HALT indicator). Pressing CONT returns to the original directory. The default functionality of LS_J of returning HOME has got a more convenient key in More from Keyman.
RS_L:  ~Mini/~FONT If normally pressed toggle current font with MiniFont. If long pressed toggle the 3 available HP49-fonts, also in Edit mode! For instance, edit a text and hold down RS. If NXT is hit shortly, the text toggles in minifont, but if longer hold, the font changes. The fontname is flashed in the header. Both ~Mini and ~FONT are OT49+ commands.
RS INFO Show bytes and CRC of the Level 1 object. similar to the INFO from the interactive stack  If the stack is empty you're asked for input of a global or port name and get bytes and CRC of the content. 
o :  SysE~ASM2 Roughly speaking, SysRPL decompilation+edition is toggled with recompilation. If the normal editor on : is longhold, edits a non-string object after first decompiling it with S2. If the stack is empty, creates an empty SysRPL program template.You are always asked whether the perhaps modified string should be recompiled. If a string is in level 1 MASD tries to compile it with ASM2. The assignment is related to RPLED frrom Emacs but faster and bug-free (an arriving alarm while editing doesn't cause problems).
RS  :  Ed&Rev The RS standard function (Review the menu) now working also in edit mode. While in edit mode press RS and release this key. If then is pressed normally the cursur goes down as usually, but if is longhold it shows details on the current menu without leaving the edit mode.
o N:  TEVAL Wait for input of a filename for TEVAL if the EVAL key is long hold. ENTER on the empty list runs TEVAL on the object in Level 1 provided there is any.
LS_N{}Menu Set a 2-page menu of all available list commands from two different menus, the subdirectories ELEM and PROC included.
o O:  OT49+ Set the OT49+ command menu.
RS_O:  XU Execute the powerful XU command from OT49+ for prgramming in ExtUsrRPL. Note that  RS_O is dispensable in RPN mode.
DEL/CLEAR If backspace is normally hit, delete the level 1 object. If longer hold clears the stack.
LS  ORDER Set input list for ordering. Note that outside USR mode this key does the same as RS  and hence is dispensable but keeps its functionality in edit mode.
LS_:  Purge/Del Set input list for purging one or several files which may be mixed from global names and port names. Purging is very fast. In Edit mode runs DEL from the EDIT menu. This command ist important for advanced programming. 
RS :  RENAME Wait for input of a global name to be renamed into a name to be printed after the first one. 
RS_KILL/DelL In default mode kill all suspended programs but leaves the stack intact. Delete a line in edit mode and put cursor at the begin of the deleted line.
LS_W:  ~ -95 Toggle Algebraic with RPN mode (flag -95).
RS_W:  SAME? Display whether objects in level 1 and level 2 are the same or not. Both objects remain in the stack..
o 9:  ~Clock Toggle the clock display if pressing 9 a bit longer.
LS_3~n Cycle through the (non-negative) real, the zint, and as a user binary representation of a number.
RS_3:  ~BASE Toggle the BASE formats, HEX, DEC, OTC, BIN.
o SPC:  EdSusp If in edit mode long hold, suspend the current edit session for doing something else..HLT indicates that you may return to the suspended edit session pressing CONT: If you kill the HLT indicator with the KILL command or with the RS_ key, everything in the suspended editor is lost.
LS_SPC. ~ANG/~COOR ~ANG and ~COOR from OT49 toggle the angle mode and the coordinate systems, resp. Both are closely related and related also to , hence will be assigned to the same key, LS_ (more precisely LS_SPC).

Similar mode-sensitive key assignments can readily made with the tools of Keyman, just read Keyman.htm.

Wolfgang Rautenberg - -