From: akcs.softcalc@hpcvbbs.cv.hp.com (brian maguire)
Newsgroups: comp.sys.handhelds
Subject: HP48: XMENU version 1.03
Keywords: xmenu 1.03
Date: 30 Dec 92 17:40:03 GMT

There were a few bugs with XMENU version 1.02.  Here's the corrected
version.
--------------------------------------------------------------------
**** xmenu.bin **********************************************
**
** File:    Version 1.03, 12/29/92
** Author:  Brian Maguire
**
************************************************************
**                                                        **
**              XMENU - Menu Expander 1.03                **
**                                                        **
**             Copyright 1992 Brian Maguire               **
**                  All Right Reserved                    **
**                                                        **
************************************************************
*
* DISCLAIMERS
*
* XMENU is presented without warranties, expressed or 
* implied.  The author makes no guarantee as to the fitness 
* of this software.
*
* XMENU can be copied freely provided the software is copied 
* in its entirety.  The user cannot be charged, in whole or 
* in part, except for the cost of reproduction.  No part of 
* this package may be used for commercial purposes or as 
* part of third party software (commercial or public), 
* without written permission from the author.
*
************************************************************
*
* ACKNOWLEDGEMENTS:
*
*  Thanks to Conan J. Fee whose XPNDR program inspired me to 
*  finish writing XMENU and Detlef Muller for his 
*  participation in writing XPNDR.
*
*  Also, thanks to Todd Eckrich for his help in debugging.
*
************************************************************
*
* The expanded menu program displays a menu using as many as 
* four rows at a time with the top four rows of keys 
* corresponding to each row of menu labels.  This will 
* normally be enough to display all rows of a built-in menu.  
* If a menu contains more than four rows, a scroll indicator 
* will be displayed in the status area.  Pressing ENTER will 
* advance the menu screen one page.  Likewise, [ORANGE]-
* ENTER will decrement the menu screen one page.
*
* Pressing a key in the top four rows that corresponds to a 
* menu label will immediately evaluate that menu item.  
* Pressing any non-menu key will cause the 48 to beep.  
* Pressing [ON] exits XMENU.
*
* Menu tree structures are supported.  When a menu key 
* creates a different menu, it is nested below the parent 
* menu.  Pressing [+/] will exit the sub-menu and restore 
* the calling parent menu.  Likewise, pressing [BLUE]-[+/-] 
* will exit all sub-menus and restore the top most menu.
*
* Because the VAR menu is unique in the fact that the 
* contents of the menu can change by moving into a sub-
* directory, but the menu definition doesn't actually 
* change, UPDIR has been assigned to [ORANGE]-[+/-].
*
* In addition to the menu display, XMENU also displays as 
* many line of the stack as possible using the medium font 
* size.  A total of six lines are used for both the menu and 
* stack.  If the menu only uses two lines, four will be used 
* for the stack.
*
* Most menus are defined by a list or a program that 
* generates a list.  This data list is used by the built-in 
* menu commands to load the touch table (menu key bindings).  
* But several menus, like the VAR menu, are defined by a 
* list.  Instead, they load the touch table themselves, on 
* the fly.  Because it is difficult to determine how many 
* display lines will be needed for these menus, XMENU always 
* allocates four.  The only built-in menus that are forced 
* to four display lines are VAR, LIBRARY, PORT0, PORT1, 
* PORT2, and any library menu.
*
* The following criteria was used when writing this program
*
* 1) Self contained
*       XMENU had to be a self standing program, not a library 
*       or a directory.
*
* 2) Minimal amount of time writing
*       I don't really have much free time so I tried to keep 
*       it simply.  Very little time was spend trying to pack 
*       the code.  I did try to document it enough so someone 
*       who is familiar with RPL can follow it though.
*
************************************************************
*
* Bug reports, comments, or questions can be sent to the 
* following internet address..
*
*       Before 2-01-92  brian_maguire@mts.cc.wayne.edu
*       After  2-01-92  brian@sparcom.com
*
* or, to the following HPBBS address...
*
*       akcs.softcalc
*
************************************************************
 
XMENU.UUE
UUENCODER by Theodore A. Kaldis
BEGIN--cut here--CUT HERE--
begin 644 xmenu.bin
M2%!(4#0X+46=+>"A&+R)X^4$G2UPZ0:=+1`A.Z08Y/@&$2*&K6&=+;!G!0X^
ML`($]SZP^6#O/7`!!+HDMA(#G2U`)`,70+`2`R46MA(#EV[0V0*EE$.*05L8
M1*<",$T#TS0K,0!-!QK[X_@&YQ-F2V/",D"*09<[@(YAG2W@0&&O5%`P800I
MAD-A!"F6104`%L9'88YO0!0Y*S&P^6!;&'2Y`RP:AD-A2!BT$@,70)#_`^E5
M0),O="H`TS0P30/3-#!-`],T,$T#TS0K,0!-!_D_@(1!?!3F^`:7;M#9`DTQ
M@?(XG)43]#B=+2!`0I,95DHYK4"@E1<K0,!%8>`]L#T'(7*`?19,,>#@`R%R
M0,X#*G'0V0(A<C`:87A9,1D%*S&0!`1<%`;>`Y`WED(2-',P2SDK,3#W.)TM
M($!"DQF63SG/XA2H`_`59@Q!6QA486%<%+8]!^<3QIMAG2T0D0)N`!"1`E@`
MX+YD$DNV#`3O/U`#!,YS$"('04I`D$$T<[`2`T4F46,2>D+&16'@/1`B![P]
M0&=B>1;!<3I;&'0J8KP9UMD"P#H`7V$E$;42`S1S@$-A2!C$H@('`("%0V&V
M(L:;89TMP*("!P``.1D%*S%P/F&\&=;9`BPJ<```CY-1L!(#=4$0%@2*2R9C
M.1B0LQ(#1)&S$@.7;M#9`H@QT``$@SWPD6$2_C,B`TU!,(UA#"'V%P33&,80
M8AQ+-HUAG2V0*&*<-7;I!ITM@'A`@3H`7F$K,1"H`RLQD`X$TQC6V0+Y/[#Q
M/YTM@'A`WT!PGCHK,3``!!O_T]D"B`<4D0+H_W^>.BLQT)1C$;(3J`,K,3`/
M!-,8UMD"^3^P\3^=+8!X0`X4]DH%J!@6W3]./L#Z8`@0Q$=ACF^0104`%D84
M.2LQ,``$&__3V0*(!_06&BLQT)1CG2V`>$`.%/:F8_<8%MT_Z54`8&&O5.#D
M`VXR@`!!?!3F^`9$D;,2`X$ZL!(#B#&0#@2#/?"181+^X^`#*T!P[P-#&!5I
M8C@4!CAAU2>&A$'&$+2%03H]UMD"2!B$)0,2_K,2`PPG=ND&B`?$^F!L%'8!
M!$54$*@#*S'0O@O`.M"98[835A5C9(I#%#GKBG-)!Z08M(5!*S&`ZP1WBP.Y
0.`@0A!XZRC!!%#FEE+,2`P``
`
end
size 871
END--cut here--CUT HERE--
Newsgroups: comp.sys.handhelds