The following warnings occurred:
Warning [2] Undefined array key 189543 - Line: 275 - File: inc/plugins/threaded_mode.php PHP 8.1.2-1ubuntu2.14 (Linux)
File Line Function
/inc/class_error.php 153 errorHandler->error
/inc/plugins/threaded_mode.php 275 errorHandler->error_callback
/inc/plugins/threaded_mode.php 23 ThreadedMode::showthread_threaded
/inc/class_plugins.php 142 threaded_mode_showthread_threaded
/showthread.php 918 pluginSystem->run_hooks
Warning [2] Undefined variable $thread - Line: 295 - File: inc/plugins/threaded_mode.php PHP 8.1.2-1ubuntu2.14 (Linux)
File Line Function
/inc/class_error.php 153 errorHandler->error
/inc/plugins/threaded_mode.php 295 errorHandler->error_callback
/inc/plugins/threaded_mode.php 23 ThreadedMode::showthread_threaded
/inc/class_plugins.php 142 threaded_mode_showthread_threaded
/showthread.php 918 pluginSystem->run_hooks
Warning [2] Trying to access array offset on value of type null - Line: 295 - File: inc/plugins/threaded_mode.php PHP 8.1.2-1ubuntu2.14 (Linux)
File Line Function
/inc/class_error.php 153 errorHandler->error
/inc/plugins/threaded_mode.php 295 errorHandler->error_callback
/inc/plugins/threaded_mode.php 23 ThreadedMode::showthread_threaded
/inc/class_plugins.php 142 threaded_mode_showthread_threaded
/showthread.php 918 pluginSystem->run_hooks
Warning [2] Undefined variable $fid - Line: 295 - File: inc/plugins/threaded_mode.php PHP 8.1.2-1ubuntu2.14 (Linux)
File Line Function
/inc/class_error.php 153 errorHandler->error
/inc/plugins/threaded_mode.php 295 errorHandler->error_callback
/inc/plugins/threaded_mode.php 23 ThreadedMode::showthread_threaded
/inc/class_plugins.php 142 threaded_mode_showthread_threaded
/showthread.php 918 pluginSystem->run_hooks
Warning [2] Undefined array key 189543 - Line: 331 - File: inc/plugins/threaded_mode.php PHP 8.1.2-1ubuntu2.14 (Linux)
File Line Function
/inc/class_error.php 153 errorHandler->error
/inc/plugins/threaded_mode.php 331 errorHandler->error_callback
/inc/plugins/threaded_mode.php 304 ThreadedMode::buildtree
/inc/plugins/threaded_mode.php 23 ThreadedMode::showthread_threaded
/inc/class_plugins.php 142 threaded_mode_showthread_threaded
/showthread.php 918 pluginSystem->run_hooks
Warning [2] Undefined variable $theme - Line: 3 - File: inc/plugins/threaded_mode.php(305) : eval()'d code PHP 8.1.2-1ubuntu2.14 (Linux)
File Line Function
/inc/class_error.php 153 errorHandler->error
/inc/plugins/threaded_mode.php(305) : eval()'d code 3 errorHandler->error_callback
/inc/plugins/threaded_mode.php 305 eval
/inc/plugins/threaded_mode.php 23 ThreadedMode::showthread_threaded
/inc/class_plugins.php 142 threaded_mode_showthread_threaded
/showthread.php 918 pluginSystem->run_hooks
Warning [2] Trying to access array offset on value of type null - Line: 3 - File: inc/plugins/threaded_mode.php(305) : eval()'d code PHP 8.1.2-1ubuntu2.14 (Linux)
File Line Function
/inc/class_error.php 153 errorHandler->error
/inc/plugins/threaded_mode.php(305) : eval()'d code 3 errorHandler->error_callback
/inc/plugins/threaded_mode.php 305 eval
/inc/plugins/threaded_mode.php 23 ThreadedMode::showthread_threaded
/inc/class_plugins.php 142 threaded_mode_showthread_threaded
/showthread.php 918 pluginSystem->run_hooks
Warning [2] Undefined variable $theme - Line: 3 - File: inc/plugins/threaded_mode.php(305) : eval()'d code PHP 8.1.2-1ubuntu2.14 (Linux)
File Line Function
/inc/class_error.php 153 errorHandler->error
/inc/plugins/threaded_mode.php(305) : eval()'d code 3 errorHandler->error_callback
/inc/plugins/threaded_mode.php 305 eval
/inc/plugins/threaded_mode.php 23 ThreadedMode::showthread_threaded
/inc/class_plugins.php 142 threaded_mode_showthread_threaded
/showthread.php 918 pluginSystem->run_hooks
Warning [2] Trying to access array offset on value of type null - Line: 3 - File: inc/plugins/threaded_mode.php(305) : eval()'d code PHP 8.1.2-1ubuntu2.14 (Linux)
File Line Function
/inc/class_error.php 153 errorHandler->error
/inc/plugins/threaded_mode.php(305) : eval()'d code 3 errorHandler->error_callback
/inc/plugins/threaded_mode.php 305 eval
/inc/plugins/threaded_mode.php 23 ThreadedMode::showthread_threaded
/inc/class_plugins.php 142 threaded_mode_showthread_threaded
/showthread.php 918 pluginSystem->run_hooks
Warning [2] Undefined variable $lang - Line: 5 - File: inc/plugins/threaded_mode.php(305) : eval()'d code PHP 8.1.2-1ubuntu2.14 (Linux)
File Line Function
/inc/class_error.php 153 errorHandler->error
/inc/plugins/threaded_mode.php(305) : eval()'d code 5 errorHandler->error_callback
/inc/plugins/threaded_mode.php 305 eval
/inc/plugins/threaded_mode.php 23 ThreadedMode::showthread_threaded
/inc/class_plugins.php 142 threaded_mode_showthread_threaded
/showthread.php 918 pluginSystem->run_hooks
Warning [2] Attempt to read property "messages_in_thread" on null - Line: 5 - File: inc/plugins/threaded_mode.php(305) : eval()'d code PHP 8.1.2-1ubuntu2.14 (Linux)
File Line Function
/inc/class_error.php 153 errorHandler->error
/inc/plugins/threaded_mode.php(305) : eval()'d code 5 errorHandler->error_callback
/inc/plugins/threaded_mode.php 305 eval
/inc/plugins/threaded_mode.php 23 ThreadedMode::showthread_threaded
/inc/class_plugins.php 142 threaded_mode_showthread_threaded
/showthread.php 918 pluginSystem->run_hooks





HP 41CL update from a user



#2

Well, what to say, where to start!

Monte Dalrymples package is superb.

I have just created a routine which will allow you to store in FLASH RAM up to four CALCULATOR-STATES protected from power loss and the dreaded "MEMORY LOSS".

For example, I have a set of routines which require 100 memory registers and 500 lines of programming. This set of routines requires reassigning of all the keys to specific sub routines. Also included are synthetic commands and synthetic routines which sort data and etc... I created this set of programs back in 1984 in the lab during my Palynology/Climate research.

Today I have as set of routines with SIZE=25 and 3 PRGM REG left over. Also an assigned set of keys:

Well I got a call the other day from my University supervisor asking about co-authouring an article based on my data from 1984 so I dug up my Palynology Magnetic cards and lo and behold, they work.

Firstly, I copied my AVIATION suite of programs to the CL flash memory and then downloaded with the card reader my Palynology routines.

That got me thinking, HOW DOES ONE save multiple calculator states in a CL for future reference using a routine to automate the procedure.

Firstly a definition: CALCULATOR-STATE is the unique set of memory registers applicable to a specific set of duties; for example I have the requirement for two CALCULATOR-STATES:

AVIATION           280 PRGM registers used, x-memory data and asci files, key assignments
PALYNOLOGY 217 PRGM registers used, 100 STO registers required
x-memory alpha data, synthtetics, key assignments.

Another CALCULATOR-STATE state may involve the data stored in a number of registers such as a SURVEY routine. After collecting data, store the calculator state in a FLASH RAM address and then do the next days transect and store that CALCULATOR-STATE in another location.

So here is the routine and you can see how flexible the entire system is:

LINE    COMMAND                 DESCRIPTION

1. LBL “YCTOF” CALCULATOR TO FLASH
2. TURBO50 GO FAST
3. “1: 0C9 2: OD1” DISPLAYS CHOICE OF FOUR DIFFERENT LOCATIONS:
4. AVIEW 0C9000, 0D1000, 0D9000, 0E2000
5. PSE
6. “3: 0D9 4: OE2”
7. AVIEW
8. GETKEY USES THE KEYPRESS TO CHOOSE THE CORRECT SUB ROUTINE.
9. “COPYING” COPYING IS DISPLAYED UNTIL “DONE” APPEARS SO YOU DON’T
10. AVIEW FREAK OUT WHILE IT IS RUNNING!
11. GTO IND X USED TO DIRECT THE PROCESS TO THE CORRECT SUB ROUTINE.
12. LBL 72 IF 1 SELECTED USE ADDRESS STARTING AT 0C9000.
13. XEQ 20
14. “0C9000” ERASE THE ADDRESS BLOCK.
15. YFERASE
16. “800>0C9” COPY THE CALCULATOR-STATE TO THE ADDRESS BLOCK.
17. YFWR
18. GTO 13
19. LBL 73 IF 2 SELECTED USE ADDRESS STARTING AT 0D1000.
20. XEQ 20
21. “0D1000” ERASE THE ADDRESS BLOCK.
22. YFERASE
23. “800>0D1” COPY THE CALCULATOR-STATE TO THE ADDRESS BLOCK.
24. YFWR
25. GTO 13
26. LBL 74 IF 3 SELECTED USE ADDRESS STARTING AT 0D9000.
27. XEQ 20
28. “0D9000” ERASE THE ADDRESS BLOCK.
29. YFERASE
30. “800>0D9” COPY THE CALCULATOR-STATE TO THE ADDRESS BLOCK.
31. YFWR
32. GTO 13
33. LBL 62 IF 4 SELECTED USE ADDRESS STARTING AT 0E2000.
34. XEQ 20
35. “0E2000” ERASE THE ADDRESS BLOCK.
36. YFERASE
37. “800>0E2” COPY THE CALCULATOR-STATE TO THE ADDRESS BLOCK.
38. YFWR
39. GTO 13
40. LBL 20 PLACES YFNS IN RAM SO YFERASE AND YFWR ARE AVAILABLE.
41. 062>80C
42. YMCPY
43. 80C-RAM PLACES YFNS RAM IN TO PORT 1 LOWER.
44. PLUG1L
45. RTN
46. LBL 13 PLACES YFNS BACK IN PORT 1 L.
47. “YFNS”
48. PLUGIL
49. DONE DISPLAYS “DONE” TO LET YOU KNOW THE ROUTINE HAS
50. AVIEW FINISHED.
51. END

• WHEN THE USER ABORTS THE ROUTINE AT THE ADDRESS LOCATION PROMPTS BY PRESSING “C” THE CALCULATOR EXITS THE PROGRAM IMMEDIATELY WITH THE DISPLAY “DONE”.

• WHEN THE USER SELECTS AN ADDRESS THE ROUTINE TAKES ABOUT 22 SECONDS TO COMPLETE AND “DONE” IS DISPLAYED WHEN THE ROUTINE IS COMPLETED.

Some standard caveats when dealing with any type of FLASH RAM:

DO NOT INTERUPT THE PROGRAM AS IT IS RUNNING, THIS IS DUE TO THE YFERASE AND BELIEVE ME YOU DO NOT WANT THE CONSEQUENCES ON YOUR HEAD!!!

MAKE SURE YOU HAVE A GOOD SET OF BATTERIES AS YFERASE IS VERY UNFORGIVING!!!

The upshot is that we are finding so many new and exciting ways to use the HP 41CL.

Last night, I loaded from withing the XROMs the CL has in its Library the ZENROM XROM. I saved 5 program registers just converting some commands to the synthetic equivalent.

I now have a QRG pocket PDF produced (if you want one, email me) which records which routines I need and in which XROM they are located.

My CL has the following XROMS loaded and displayed by CAT II:

1  -EXT FCN 2D     
2 -CX EXT FCN
3 -TIME 2C PHYSICAL TIME MODULE
4 -CX TIME
5 -PRINTER 3B PHYSICAL IR MODULE
6 -YFNS 1C CL FUNCTIONS (ALWAYS RESIDENT)
7 -CCD"OS/X VIRTUAL XROM FROM RESIDENT XROM LIBRARY
8 C PPC 1981 VIRTUAL XROM FROM RESIDENT XROM LIBRARY
9 EXT IL ROM VIRTUAL XROM FROM RESIDENT XROM LIBRARY
10 -CLUTILS 1H ANGEL MARTINS CL UTILITIES ROM FOR THE CL!
-SYS/EXT ANGEL MARTINS CL UTILITIES ROM FOR THE CL!

The CLUTILS 1H XROM was loaded via Diego Diaz's CLONIX in a very simple procedure. However, some of the testers (and myself) are now experimenting with the serial port built into the CL and using a stereo jack in a port cover to RS232 on the computer. More on this later.

At any time I can swap out, or add more XROMS up to the standard limit of pages. YFNS must always reside in a 4K page so it stays in PORT 1 Lower. But that leaves 7 4K pages for 7 4K ROMS or 3 8K ROMS or, well you get the picture. The IR module and time module do not occupy the pages available for XROM images.

Well I can go on but...maybe later!

Geoff

oh, did I say it was fast!!!


Edited: 2 Aug 2011, 12:54 p.m.


Possibly Related Threads…
Thread Author Replies Views Last Post
  Does the HP Prime really compiles the user programs? CompSystems 3 2,705 12-13-2013, 01:55 PM
Last Post: Mike Morrow
  I can't update HP Prime JavierLopez 7 3,377 12-06-2013, 10:37 AM
Last Post: JavierLopez
  HP 50g switching two keys in the user keyboard Sean Freeman 9 3,872 12-05-2013, 11:44 AM
Last Post: Mark Puscas
  HP-41CL setup troubleshooting Xavier A. (Brazil) 2 1,847 12-02-2013, 06:29 AM
Last Post: Xavier A. (Brazil)
  HP Prime - User manual lack bluesun08 6 2,528 11-08-2013, 05:38 PM
Last Post: bluesun08
  [41CL] New Extra Functions version Monte Dalrymple 0 1,084 11-08-2013, 04:32 PM
Last Post: Monte Dalrymple
  HP PRIME : strange behavior when trying user key capability Damien 12 3,803 11-03-2013, 11:02 AM
Last Post: Joe Horn
  HP-Prime Polynomials: User Guide and Request CompSystems 4 2,038 09-30-2013, 09:48 PM
Last Post: Han
  HP Prime Tip: Setting Up User Keys Eddie W. Shore 2 1,504 09-27-2013, 09:53 PM
Last Post: Eddie W. Shore
  Where to the 32-bit version of User Code Utiltiy for HP-41 ? Olivier (Wa) 2 1,469 09-26-2013, 01:55 AM
Last Post: Olivier (Wa)

Forum Jump: