bson@rice-chex.ai.mit.edu (Jan Brittenson) (11/08/90)
This posting will contain the uuencoded directory only, as the source codes are divided into ~15 files, most of which have to be assembled with ASAP. Uudecode, and transfer using kermit binary mode. * * * This is LBROWSE 1.01. It is a browser partially written in ML, partially in interpreter threads, and partially in user code. LBROWSE always resides in the directory { HOME LBRW }. Don't try and run arbitrary programs in the directory, as they're likely to crash your calculator if given improper arguments, or none at all. LBROWSE is meant to be called from within a program. It displays a list of data, and lets you move around and perform various externally defined operations (using the menu keys) on the data. * Calling LBROWSE When calling LBROWSE, pass the following parameters: Stack level parameter 3 List of data 2 List menu key bindings 1 Current path Enter { HOME LBRW LBROWSE } on the stack and EVAL. The path on level one is used to restore the path upon completion, and to temporarily restore the path when a menu key is pressed. The menu key binding list must always have 6 entries - a null string ("") is interpreted as "unbound." The first entry corresponds to the leftmost menu key, and the last to the rightmost. Shifts are ignored. * Using LBROWSE LBROWSE redefines the keyboard to work as follows: Menu keys Evaluate the key binding [ENTER] Put the index of the menu entry on the stack [EVAL] Put the index of the menu entry on the stack and exit [Backspace] Exit [ON] Exit [Arrow up] One line up [Arrow down] One line down [Blue] [Up] Move to first line [Blue] [Down] Move to last line All other keys Ignored * Menu key bindings When the user presses a menu key the corresponding binding is evaluated with the path temporarily restored. The following parameters are passed on the stack (a Short is a 5-nibble integer, type 20): Stack level Datum 4+n Item[n-1] ... 6 Item[1] 5 Item[0] 4 n (Number of items, Short) 3 Window (Window line, Short) 2 Point (Current line, Short) 1 Path (Always {HOME LBRW}) SYSEVAL #18DBFh converts a short to a real, and #18CEAh converts a real to a short. Upon return, LBROWSE expects a similar arrangement: Stack level Datum 5+n Item[n-1] ... 7 Item[1] 6 Item[0] 5 n 4 New window 3 New point 2 Path (The same as passed) 1 Redraw flag (If 1, the display is redrawn; Real) In addition, if flag 11 (the user flag) is set, LBROWSE will exit. * Notes LBROWSE is about 1700 bytes. Version 1.01 is a prototype; the aim is to write one entirely without user code for speed. It is, however, fast enough to be useful, although the response isn't as instantaneous as one might wish it were. Also, I have not discovered any way of producing key repeat. * Disclaimer I will use Andreas' disclaimer: The program makes use of undocumented low-level features of the HP48SX calculator, and may or may not cause loss of data, excessive battery drainage, and/or damage to the calculator hardware. The Author takes no responsibility whatsoever for any damage caused by the use of this program. This software is provided "as is" and WITHOUT ANY EXPRESS OR IMPLIED WARRANTIES, including, but not limited to, THE IMPLIED WARRANTIES OF MERCHANTABILITY and FITNESS FOR A PARTICULAR PURPOSE. -- Jan Brittenson bson@ai.mit.edu O / \/ /\~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ O \ begin 644 lbrw M2%!(4#0X+426*O!_6@P %05!!5$@%,RD # " 5-2T594P4S M*0 , ( !%)%1%($G2W@82,I_'&X'\FB<C0JH#'2Y@(!3$@N4'"4 M1%74U.8" 4R$I8'D @5.251%34PR,K\?.3:R$@-\ % 01$0T!570V0(>-A), M(VTN$.#D82/)HM+F @%. S'"H@(' #2NQ]GJ]'F @%.M?S!)"-M+A#@Y%\C M.3:R$@-_ '# )"3U=#55=-#9 AXV,I," 0 $ '5PA$>(<$TTN8" 4T> M-@(4&D@N0, D)'5%92-(+E 0!!5$A91G(\T,<K@?5#:"Y (%34M%65-Y-M+, M(%T1LO<<2"Y0$$1$- 6%Y (&0E-%5%505#:"Y ("0T=Y-M+,(%0V@N0" DU' M>3;2S"!(+D @540D-0PC2"Y00,24Y%2$Y ("34=(+D#0%"2UA.0" T9.4T@N M8'!41+54E-4.([DV@N0"!4%0051(OJ/1Y@(!3981XE\C.3:R$@.E 6 @-%5$ M505ET-D"ZHSQ_@/O/_ 3%K\I8.@N!0 =025E !W!H@(I , F)G<7XP(3 R(V M]^8&$I.3 P/X$34F\?X#[S^09Q$"#\0?.BLQH D D5$ ITMX&$CV/N!Y (% M1$Q)3D5(+B P=(3D @1-05)+V/N1PA].*E ! X^ +J6!Y ('1D%$ M2E=)3KZC02LJ.3:R$@.4 "! 1230V0(>-H*]'T@N4$#$E.14A.0" D-'2"Y MT!0DM82]'TXJ4 $ [S\ NI8'D @=&041*5TE.OJ-!*RHY-K(2 X\ M,%#D1#70V0)$,H 8 ^\]\-L8'!*F5V*>,T K*BLQP , TY)3 .=+>!A(]C[ M02LJ.3:R$@,H #!09,4TT-D"'C:"Y (#14Y42"Y $%651)5C(RLQH , !%%5 M250$G2W@82/8^S&_'TXJ4 $ OXT! NI4'&'\FBDF,C*S$P!0 #345. M YTMX&$C3BI0 0"_C0$ "ZEP34J3;Z!Y (%34M%65.]^V%\'8?[P:(" M!0#0J1Z<--+9 AXV4A(:O?N!Y (%05!!5$B]^W&V&KZCT;L?OJ-!92-(+D @ M540DE6<CS:0QDP(! 0 :'$D2PJM*+B/QHY-K(2 YPTTMD"'C:"O1^T MHI)C(RLQX#\:.3:R$@,R 5 @190T!570V0(>-H+D @5$3$E.12G\@>0"!4=) M5$5-O?N!O1^]^T%8&CDVLA(#70!0 )5$5=14T-D"#CZP$@,= %#@E$15U%30 MV0+O/; 2 QT 4'"41%745-#9 H@QX"5A#CXPV .3&?9=!8@QH%EBXC*P$@-% M "!0!270V0(>-H*]'T@N4$#$E.14A.0" D-'2"Y T!0DM83D @50251%34@N M<& 41*1TE>3D.QJTHI)C(RLQP < D1. ITMX&$CV/N!Y (%1$Q)3D5(+B P M=(3D @1-05)+2"Y0X)1$5=2$Y ('1D%$2E=)3KZC02LJ.3:R$@-\ " P="0P MDP( !T (-!T)#"3 @ '0!00,24Y%14T-D"K#$P(@/@ M/?#> [^-L1(#,0! T!0DM430V0(C,J#.& X^0&=B-2;Q_@.5,I!G$2LQX , M!T9!1$I724X'S"T &0 ' ' !BA]D!@&!'V0& 8"_>0;X0680,!'AA(H4$8NK M$>P!B>H'+0$9@1$1NU5PKF35@H$OANL&Q@@8^&BH:&"1$&0Q%>=Q%#,Q,001 M *PQ, )F^ QG$(%NJ!_CA,I503)$> "L,3$"$:XQ, )F^+EF$)$!&"%#=@' M$J"H?A4A0UT!P!*@J#X4$1CX8!'K6@H-&/@@0P8 @&ON$>E2!"T!&"%#9P' M$J#X*640(=C);M#9 BLQ@.0"!%)%1%)(+E @190T!74: 9'151+15D&G2U0 M]D%T)D9G8G0FQML#(S(@+ /,+? ' < ^$%F@+]Y!G"Q0P 0(ZPQTA-E$R9^ M.7J08^\-NJNKV-*-L2 1 B$2$B ",B $4B &DB$=\B MLF 1!@#?W]'9 EO; M<4D'G"NV$@/1;X#V(BLQD X T9.4P-T*H#D @)54$@N($#DA.0" TY)3$@N M,."4Q(3D @--14Y(+C#05.2$Y (#345.2"XPT%3DA.0" TU%3D@N,-!4Y(3D M @-%3E1(+D 0595$A>0" T563$@N0!!5E42%Y ("5$1(+B!01(3D @-.24PK ",0!% end
a634@mindlink.UUCP (Rob Prior) (11/20/90)
Could the person who posted the UUENCODED version of LBROWSE (the part RPL, part ML version) please mail me a copy? Our site seems to garble UUENCODED stuff. Thanks in advance, -- _______________________________________________________________ |Rob Prior - President, Still Animation Logo Design, Burnaby, BC| |---------------------------------------------------------------| | Mail to: a634@mindlink.uucp | | ___ _ or: !uunet!van-bc!rsoft!mindlink!a634 | | /__ /_\ "You must find us.... a shrubbery!!!!!!" | |____/ / \____________________________________________________|