Path: utzoo!news-server.csri.toronto.edu!rutgers!usc!samsung!uunet!epicb!davids From: davids@epicb.truevision.com (David Spoelstra) Newsgroups: comp.sys.handhelds Subject: Todo program Message-ID: <1991Mar12.144908.1088@truevision.com> Date: 12 Mar 91 14:49:08 GMT Sender: davids@truevision.com (David Spoelstra) Organization: Truevision Inc., Indianapolis, IN Lines: 394 Program Id: TODO Description: To-Do Reminder List Programmer: David Cook - Cookware Welcome to Version 1.0 of TODO, a To-Do list reminder system. This program was written for a friend of mine who refused to buy a HP48SX unless it had a TODO program, scheduler (with calendar) and Rolodex (he would rather have a HP48SX instead of a Wizard etc.., but needed that functionality). Since I already have a rolodex and calendar program for my 48SX I only needed to provide this function. Disclaimer: I have had my 48SX only about 3 months, so I am sure that this program can be written better, smaller and faster. I would have used SYSEVAL statements, but was unsure about compatibility with other revisions (can anyone out there answer this question?). Shareware Notice: Feel free to use this program and redistribute it. I ask that if you redistribute the program, please keep it named TODO, and please keep the title screen intact. If you make significant changes, please add you name to the title screen - but keep my name as well. If you find this program invaluable, a $5 donation would be appreciated. Send any money or comments to: David Cook, RR #1 Box 351, Whitestown Indiana 46075 - Thank you! Installing And Running TODO: The program can be found at the bottom of this post. It is in ->ASC format and you will need ASC-> to unscramble it. ASC-> is openly available on this forum as well as the HP BBS. (The ASC routines were written by Bill Wickes.) I'm sure that if you don't have them, an open letter to the NET would produce them rather quickly! (1) Cut the code at the bottom of the document, AFTER the CUT HERE line. Remove the final CUT HERE line at the bottom. (2) Send this file to your HP48SX, via the Serial Cable, into the file 'TODO' (3) Hit the TODO button (eg., place the contents of TODO on the command line) (4) Execute ASC-> (which you already should have loaded, or load it now) (5) Store the result back to 'TODO' - it will become a directory Running... (6) Simply enter the TODO directory and hit the RUN button which will be the very first button you see. From here on out, simply follow (6) to run it. Features: * Unlimited number of lists - up to the memory of your machine * Unlimited size for the lists - up to the memory of your machine * Ability to scroll the lists by the line or page * Ability to jump to the beginning or end of any list * Ability to change lists via a catalog * Ability to create new lists or delete old lists * Ability to MARK and UNMARK items on the list * Ability to UNMARK ALL items on the list * Ability to delete any single item on the list * Ability to delete ALL MARKED items on the list * Ability to insert a new item anywhere in the list * Ability to sort any list of information GROCERY LIST I have created a large (though somewhat incomplete) grocery lists, as a default. It is large so it does take a bit of time to compile the GROB. Use this list as an example list, and delete it if you need the memory or find it unusable. How To Use TODO --------------- When the program begins to run, it will display six menu items assigned to the menu keys. These six items are: LIST - Catalog of all lists OR create a new list OR delete a list ADD - Adds a new item to the end of the list OR inserts a blank item EDIT - Edits the text of an existing item SORT - Sort any particular list MARK - Marks an item OR Unmarks an item OR Unmarks all marked items EXIT - Exits the program and returns you to the HOME directory The following lists the available KEYSTROKES from the main menu level: UP ARROW - Scroll the current list towards the top - one item ORANGE SHIFT UP ARROW - Move the current list toward the top - one page BLUE SHIFT UP ARROW - Move the current list to the top DOWN ARROW - Scroll the current list toward the bottom - one item ORANGE SHIFT DOWN ARROW - Move the current list toward the bottom - one page BLUE SHIFT DOWN ARROW - Move the current list to the bottom DEL (keyboard key) - Deletes the current item ORANGE SHIFT DEL (purge)- Deletes ALL marked items LIST (menu key) - Get a catalog of all lists BLUE SHIFT LIST - Enter the name for a brand new list ADD (menu key) - Add an item to the end of the current list BLUE SHIFT ADD - Insert a blank line ABOVE the current item EDIT (menu key) - Edit the text of the current line SORT - Sort the current list in alphabetical order MARK (menu key) - Mark OR Unmark the current item BLUE SHIFT MARK - Unmark ALL marked items ORANGE SHIFT MARK - Same as MARK without the Startrek sound EXIT - Stop the program and return to the HOME directory BLUE SHIFT EXIT - Turn the calculate off (turning it on returns to TODO automatically with no delay) Here are some general comments about a couple of the commands... CURRENT ITEM The current item (eg., the item you are going to MARK, UNMARK, DELETE etc..) is the one at the TOP OF THE DISPLAY. To move an item into the current item area, simply scroll (UP/DOWN arrow) until it is the top item on the list. This goes for catalog lists (LIST) as well. LIST When in LIST, all current lists in the current directory will be displayed, in alphabetical order (eg., sorted). WHILE you are in this mode, UP and DOWN arrow work (but PAGE UP and PAGE DOWN and GO TO TOP and GO TO END do not work). The DEL keyboard key will DELETE a list completely from memory. MARK The MARK command allows you to place a marker next to items which you have completed (eg., check 'em off). Hit MARK the first time to place the marker, Hit MARK a second time (on the same item) to unmark. When you MARK or UNMARK a 'startrek' type beep will occur to signify the mark. If you do not wish to hear the sound, hit ORANGE SHIFT MARK instead. BLUE SHIFT MARK will UNMARK ALL currently marked entries WITHOUT deleting them from the list. DEL The normal 48SX DEL key serves to DELETE the current item, when hit under the normal menu (when hit while in LIST, it deletes entire lists). If you hit ORANGE SHIFT DEL, the program will delete ALL marked entries - useful for purging information you have already done. STARTING UP If you start the program, and the current list is not found by the program (eg., you deleted it from the operating system level), the LIST command will automatically be run by the program. If the LIST command does not see any lists in memory, the BLUE SHIFT LIST command will automatically be run, allowing you to create a new list. OTHER KEYBOARD KEYS If you hit an unknown key (eg., not known to the program), the program will issue a very low tone. Try again! Internals: This posting is already too long to give you full details of the program. Feel free to rip it apart and improve it - just post it back! One routine you will probably want to add to your 'favorites' list is the routine named R2D2. This, standalone, routine takes a single number from the stack and makes your HP48SX sound like a device on Star Trek. The best values, for the most convincing sound are the values 4 or 5. Simply type 5 R2D2 for a demo. The number indicates the length of time (eg., number of chirps) for the speaker to make). Another routine you will find useful is the SORT routine. To use SORT independently of the program, simply place a LIST of STRINGS on Level 1 and run SORT. This is NOT a bubble sort, but an insertion sort, and it only takes as long to sort the data as it does to read the data one time (plus the linear count to find the place to put the data). Other items you will find useful, if reverse engineering the routines... The variable 'DATA' contains the name of the current to-do list database. The system creates TEMPORARY variables (only will be seen if you abort the program while it is running). 'W' contains a number which signifies which item is the current iten (1 - S). 'S' contains the total number of items in the list. If you abort during a catalog, you will see CATTEMP which contains a list of all you to-do lists. 'W', 'S' and 'CATTEMP' are all deleted and rebuilt by the program. Here is a brief listing of what the other routines do: RUN - Runs the TODO program SORT - Sorts a LIST of STRINGS in level 1 MON - High speed GROB editor, used to turn a Mark ON MOFF - High speed GROB editor, used to turn a Mark OFF INSTD - INSerts a blank item into the ToDo list above the current item EDITD - EDIts the current item of the current ToDo list NEWTD - Creates a NEW ToDo list CATTD - Handles the LIST command catalog of lists SEETD - Displays the current list (does NOT build it) MAKTD - Makes the GROB associated with the current list ADDTD - Adds a new item to the END of the current list MARTD - Handles Marking and Unmarking of the current item UNMTD - Unmarks ALL marked items in the list WIPTD - Deletes ALL marked items in the list DELTD - Deletes the current item in the list R2D2 - Takes a repeat value from level 1 and issues StarTrek sounds AGAIN... these routines should only be used for editing and changing the program. Use the RUN routine to execute the program (just hit RUN) and the program will automatically issues these routines for you in responce to the menu keys you hit (as described above). I provided the details above only for those who want to see how it runs! ENJOY!!!!! ------------------------ C U T H E R E ------------------------ %%HP: T(1)A(D)F(.); "69A20FF74522000000402523442340D9D20E16329C2A2DBBF1301329B1C13392 03000000000000040EEDA133920300000000000005076BA19B1C133920899000 0000000020EEDA14C5A1C423293632B213019000504454C4454450D9D20E1632 3CE2284E2010359C2A2279E1AFE22D9D2047A20C2A20900000202B2130456328 4E2040441445149763204B02DCC029C2A24563284E20103597632DCC029C2A24 563284E20107597632DCC02B21305BF22D9D2047A20B21309C2A284E2010350A 132D6E2010E63CE22D6E2010E684E201075D9AE1AFE22D9D2084E20404414451 4D6E2010E66C7D19C2A2387C176BA1B21305DF22C42324563284E20404414451 49763204B02DCC0284E2010359C2A290DA14563284E20103597632DCC029C2A2 4563284E20107597632DCC02B21305DF2284E2050D414B4454493632B21305D1 0050759405454450D9D20E163247A20B21309C2A284E2010350A132D6E2010E6 3CE2284E204044144514D6E2010E66C7D19C2A29C2A2C58C1C2A207000002279 E1AFE22D9D2084E204044144514D6E2010E66C7D19C2A2387C176BA1B21305DF 22C42323CE2278BF18B9C19C2A2EBBE1AFE22D9D208DBF147A20C2A209000002 02B2130B21305DF224563284E2040441445149763204B02DCC0284E204044144 5148B9C14563284E20103597632DCC029C2A24563284E20107597632DCC0284E 2050D414B4454493632B2130691005055E4D4454450D9D20E163284E20404414 45149C2A284E2010350A132D6E2010E678BF1D6E2010E66C7D19C2A2C2A20700 0002AE8C1D6E2010E6DBBF19C2A2387C1AE8C1D6E2010E684E2040D4F46464C4 2324563284E2040441445149763204B02DCC0284E2050355454454493632B213 04E00050D41425454450D9D20E163284E20404414451484E2010756C7D178BF1 9C2A29C2A2C58C13CE22C2A207000002279E1AFE22D9D209C2A2C2A207000038 84E20107584E2030D4F4E4B21305BF22D9D209C2A2C2A20700000284E2010758 4E2040D4F46464B21305DF22AE8C184E204044144514DBBF184E201075DBBF19 C2A2387C1AE8C14563284E2040441445149763204B02DCC0284E205035545445 4493632B21306410050144444454450D9D20E1632858A184E204044144514C2A 20900000202C2A2075000459707560296E60247865602E656874702964756D6A 08496470254E445542502778656E60246F6E65647A2084E2010C8B2130AC4227 6BA19C2A2387C176BA14563284E2040441445149763204B02DCC0284E2010359 C2A276BA14563284E20103597632DCC0284E2050D414B4454493632B2130B210 050D414B4454450D9D20E1632606E1C2A20BA000020202020202020245F6D244 F6A0020205562737F6E616C6022556D696E6465627A0A0A0E2E2E275169647C2 02245796C64696E67602C4963747A0A0655627A30213E20302D2D20244166796 460234F6F6B6A09C2A2485A1E4A2051000380000000000000084E20103533920 100000000000011076BA1743A2EEDA1B9691614E19C2A284E2010350A132D6E2 010E6E4A20510000000000000000000D6E2010E6743A2EEDA1B9691ED2A2387C 184E204044144514D6E2010E66C7D19C2A2DA5E1AE8C1C4232858A1606E1634E 1DCC0284E2050355454454493632B21300E10050355454454450D9D20E163284 E201075743A2EEDA1B9691E4A20510000000000000000000DBBF1ED2A2387C10 F2E193632B21308600050341445454450D9D20E16329C2A24563284E20107597 632DCC02D13A2FA1A178BF18B9C13CE2278BF14B2A2279E1AFE22D9D2084E205 0E4547545448DBF18DBF1B21305BF22D9D209C2A2DBBF10A132D6E2010E678BF 1D6E2010E66C7D1B0BC19C2A2387C1D6E2010E6DBBF1AE8C1C423284E204035F 425454563284E20703414454554D40597632DCC024563284E20703414454554D 405976324563284E20404414451497632DCC0284E2040441445148B9C1456328 4E20103597632DCC0284E2050D414B445444B2A24563284E20104597632DCC02 330328BA2084E2010454B2A2279E1B2130D5032D9D204B2A2F17A1D8732D9D20 78BF1339201000000000001530279E18A732D9D203CE228BA2084E20107584E2 01035EBBE1B2130AFE22D9D2084E2010759C2A276BA14563284E20107597632D CC0284E20503554544544B21305DF22B21305DF2278BF1339201000000000001 520279E18A732D9D203CE228BA2084E2010759C2A2D5CE1B2130AFE22D9D2084 E2010759C2A290DA14563284E20107597632DCC0284E20503554544544B21305 DF22B21305DF2278BF1339201000000000001450279E18A732D9D2084E204044 14451484E2010756C7D1B7FC1EFE0284E20504454C44544D13A2FA1A18B9C13C E229C2A2279E1AFE22D9D2084E2050E454754544ED2A24563284E20104597632 DCC02B21305DF22B21305DF2278BF1339201000000000001150279E18A732D9D 2084E20404414451484E2010756C7D1B7FC14563284E20404414451497632DCC 029C2A24563284E20107597632DCC0284E2040441445148B9C14563284E20103 597632DCC029C2A24563284E20104597632DCC02B21305DF22B21305DF228DBF 1B2130496324563284E20104597632EFE024563284E20703414454554D405976 32EFE02B21305DF2284E2050D414B4454493632B21309550050E45475454450D 9D20E1632858A1C2A20150004597075602E6567702C696374702E616D656A084 96470254E445542502778656E60246F6E65647A2084E2010C8B2130AC422C2A2 0900000202DBBF176BA1C2A20F0000E2C494354576BA178BF19C2A2387C1DBBF 1B7FC178BF1E0CF1DBBF1DCC024563284E20404414451497632DCC0284E20404 41445148B9C14563284E20103597632DCC029C2A24563284E20107597632DCC0 284E2050D414B4454493632B2130B610050544494454450D9D20E1632858A1C2 A20740005446964796E67602D4F64656A08496470254E445542502778656E602 46F6E656A084E20404414451484E2010756C7D176BA147A2084E2010C8B2130A C422C2A20900000202DBBF176BA19C2A2387C184E204044144514DBBF184E201 075DBBF1AE8C14563284E2040441445149763204B02DCC0284E2050D414B4454 493632B2130A21005094E435454450D9D20E16323CE2284E2010759C2A2D5CE1 AFE22D9D2084E2040441445149C2A284E2010759C2A290DA1C58C147A20C2A20 900000202B213076BA184E20404414451484E20107584E201035C58C176BA1B2 1305BF22D9D2047A20C2A20900000202B213084E20404414451476BA1B21305D F224563284E2040441445149763204B02DCC0284E2010359C2A276BA14563284 E20103597632DCC0284E2050D414B4454493632B2130C510040D4F4646440D9D 20E1632743A2EEDA1B9691E4A20510000000000000000000DBBF1ED2A2387C16 34E1DBBF1C2A2070000029C2A2DA5E1AE8C193632B2130D700030D4F4E430D9D 20E1632743A2EEDA1B9691E4A20510000000000000000000DBBF1ED2A2387C16 34E1DBBF1C2A2070000389C2A2DA5E1AE8C193632B2130B70004044144514408 4E20C07425F434542595E2C4943545B20004035F4254540D9D20E1632606E1C2 A2035000A005C6561637560277169647E2E2E2A0A002020235F6274796E67602 47865602C6963747A0A0A09C2A2485A178BF18B9C147A20B21304B2A24B2A21C 432D6E201044D6E201035D6E201045D6E201034D6E201064E16323CE22D6E201 0359C2A2D5CE1AFE22D9D20D6E2010449C2A26C7D19C2A2387C145632D6E2010 4597632DCC029C2A245632D6E20103497632DCC02ED2A2D6E2010350A132D6E2 010E6D6E201044D6E2010E66C7D14B2A245632D6E20106497632DCC029C2A2D6 E2010340A132D6E2010D678BF1D6E201045D6E2010D66C7D13CE22EBBE1D6E20 10644B2A2279E1387E1AFE22D9D20D6E2010D645632D6E20106497632DCC02D6 E20103445632D6E2010D697632DCC02B21305DF22C42329C2A2387C13CE22D6E 2010644B2A2279E1AFE22D9D20D6E201045DBBF176BA1B21305BF22D9D203CE2 2D6E2010649C2A2279E1AFE22D9D20D6E20104576BA1B21305BF22D9D20D6E20 10459C2A2D6E2010649C2A290DA1C58C1DBBF176BA1D6E201045D6E201064D6E 201034C58C176BA1B21305DF22B21305DF2245632D6E20104597632DCC02D6E2 010349C2A276BA145632D6E20103497632DCC02C4232D6E201045B21305BF22D 6E2010445DF22EF53293632B21309B300C07425F434542595E2C4943545C047A 20C2A20F10000202642555944535E2C4943545C2A209100002020202140707C6 5637C2A20B10000202020224562727965637C2A2012000020202027427160756 6627579647C2A209100002020202742716075637C2A205100002020202B49677 96C2A209100002020202C456D6F6E637C2A207100002020202C496D65637C2A2 09100002020202D456C6F6E637C2A20B100002020202F42716E6765637C2A20B 10000202020205561636865637C2A2071000020202020556162737C2A20F1000 020202020596E656160707C656C2A2072000020265547454451424C45435E2C4 943545C2A20B20000202020214C46414C4641402350525F4554535C2A2012000 02020202142545943484F4B45435C2A20B100002020202146514341444F4C2A2 07100002020202245414E435C2A205200002020202245414E402350525F45545 35C2A20D1000020202022425F4343455C494C2A20B2000020202022425553535 54C402350525F4554535C2A20B10000202020234142424147454C2A201200002 0202023414C49464C4F4755425C2A20B10000202020234142525F44535C2A209 1000020202023454C4542595C2A20D10000202020254747405C414E445C2A209 100002020202741627C69636C2A2052000020202028454252435C20264255435 84C2A20B100002020202C4544545553454C2A20F100002020202D455358425F4 F4D435C2A207100002020202F4E696F6E6C2A20510000202020205561637C2A2 0B10000202020205540505542535C2A20D10000202020205F6471647F65637C2 A20B100002020202350594E4943484C2A20510000202020245F46455C2A20910 000202020245F4D41445F4C2A20B100002020202A555343494E494C2A20F1000 020274251494E435E2C4943545C2A2071000020202022425541444C2A2051000 020202023414B454C2A2091000020202023454255414C4C2A20D100002020202 34251434B4542535C2A20910000202020244F4E4554535C2A207100002020202 64C4F45525C2A2071000020202020514354514C2A20910000202020205143545 2595C2A203100002020202059454C2A20510000202020225943454C2A2071000 0202020225F4C4C435C2A201200002020202451434F402358454C4C4C2A20B20 000202020245F4254594C4C41402358454C4C435C2A20D10000202D454144535 E2C4943545C2A207100002020202241434F4E4C2A20510000202020224545464 C2A20B10000202020234849434B454E4C2A2092000020202024454C4940234F4 C4440234554535C2A205100002020202445534B4C2A20F1000020202028414D4 245525745425C2A20B10000202020284F44544F47435C2A20510000202020205 F425B4C2A20510000202020225942435C2A20710000202020225F4143545C2A2 0B10000202020235145535147454C2A20910000202020235455414B435C2A209 100002020202455525B45495C2A2011000020264943584C2A207100002020202 34C414D435C2A20310000202020234F444C2A2071000020202023425142435C2 A20B100002020202C4F42435455425C2A20B100002020202D455353554C435C2 A2091000020202023514C4D4F4E4C2A20D100002020202353414C4C4F40535C2 A20910000202020235842594D405C2A20710000202020235D454C445C2A20F10 00020202023575F4254464943584C2A2071000020202023515559444C2A20710 00020202024525F45545C2A2051000020202024555E414C2A20F100002020202 758494455464943584B213063A00302555E430D9D20E1632FD332D9D2084E204 0441445149C2A26C7D1B2130F1732D9D2084E205034144545448DBF1B21305DF 228DBF19C2A24563284E20107597632DCC0284E2040441445148B9C14563284E 20103597632DCC0247A20C2A20D0000C4943545C2A20B0000144444C2A20D000 054449445C2A20D000035F42545C2A20D0000D41425B4C2A20D000054859445B 2130D511284E2050D414B44544330328BA204B2A24B2A2279E1B2130D5032D9D 20683A2F17A1D8732D9D2078BF1339201000000000001210279E18A73284E205 014444445445DF2278BF1339201000000000001110279E18A73284E205034144 545445DF2278BF1339201000000000003110279E18A73284E2050E4547545445 DF2278BF1339201000000000001530279E18A732D9D203CE228BA2084E201075 84E201035EBBE1B2130AFE22D9D2084E2010759C2A276BA14563284E20107597 632DCC0284E20503554544544B21305BF22D9D20339201000000000000050339 2099900000000000204C5A1B21305DF22B21305DF2278BF13392010000000000 01520279E18A732D9D203CE228BA2084E2010759C2A2D5CE1B2130AFE22D9D20 84E2010759C2A290DA14563284E20107597632DCC0284E20503554544544B213 05BF22D9D203392010000000000000503392099900000000000204C5A1B21305 DF22B21305DF2278BF1339201000000000003530279E18A732D9D2084E201035 4563284E20107597632DCC0284E20503554544544B21305DF2278BF133920100 0000000003520279E18A732D9D209C2A24563284E20107597632DCC0284E2050 3554544544B21305DF2278BF1339201000000000001510279E18A732D9D20803 A284E20402523442384E2050D414254544B21305DF2278BF1339201000000000 002510279E18A73284E2050D4142545445DF2278BF1339201000000000003510 279E18A73284E205055E4D445445DF2278BF1339201000000000001410279E18 A732D9D2084E20404414451484E204035F425454563284E20404414451497632 04B02DCC0284E2050D414B44544B21305DF2278BF13392010000000000014502 79E18A73284E20504454C445445DF2278BF1339201000000000002450279E18A 73284E205075940545445DF2278BF1339201000000000001310279E18A73284E 205054449445445DF2278BF1339201000000000002520279E18A732D9D203CE2 284E201075C53A2D5CE1AFE22D9D2084E201075C53A290DA1B21305BF229C2A2 5DF224563284E20107597632DCC0284E20503554544544B21305DF2278BF1339 201000000000002530279E18A732D9D203CE2284E201035C53A290DA184E2010 75D5CE1AFE22D9D2084E201075C53A276BA1B21305BF2284E2010355DF224563 284E20107597632DCC0284E20503554544544B21305DF2278BF1339201000000 000003210279E18A73284E205094E43545445DF2278BF1339201000000000003 610279E18A732E13A15DF2278BF1339201000000000001610279E18A732D9D20 4563284E20103597632EFE024563284E20107597632EFE028DBF147A2084E203 02555E4B21309DF024B2A269112041A1303A1B21305DF2233920100000000000 00503392099900000000000204C5A1B21305DF228DBF1B21304963293632B213 09FAA" ------------------------ C U T H E R E ------------------------