(12-28-2017 12:13 AM)Monte Dalrymple Wrote: (12-27-2017 11:30 PM)PeterP Wrote: Hi, I am wondering if there is a good way to save the state of the HP-41CL to PC.
I've got a nice set-up with YFNX, POWERCL_EXT, XPMM, AMC/OSX, Lib#4, Hepax + 4k RAM, plus a couple programs and key assignments. I've used the Expanded Memory functions from Angel and Monte to store the CL configuration into section 2, as well as the MM & XM into block 2.
As long as I have only "minor" hang ups, I can always regain my state by doing a "memory Lost", disable MMU, loading YFNX, enable MMU, RCLCFG 2, YBK-MM 2, YBK-XM 2. It still takes a number of keystrokes though.
However, even worse, if my calc hangs up and I need to take out the batteries, it seems save to do a XEQ "MMUDIS", XEQ "MMUCLR" after getting to "Memory Lost".
At this point it is my understanding that both the CL configuration as well as the MM & XM area is deleted and can not be recovered via RCLCFG and YBK-??. Please do correct me if this is not true.
Is there an easy way to save the state of the calculator (MM, XM, Loaded modules) to the PC and then load again from PC? Ideally this can be done with the YFNZ only.
Thanks for everyone's help!
If you look at the later sections of the mem_ref.pdf: http://systemyde.com/pdf/mem_ref.pdf you'll see that all of the calculator state
is stored in the lower pages of RAM.
Page 0x800 is the main calc configuration: registers, program memory, X-memory
Pages 0x801-0x803 are the alternate configurations.
Page 804 is the MMU
So, the user-visible 41C state is all in one RAM page, at 0x800, so that's what
you need to save. YEXP works with RAM.
Monte
Thanks Monte! This is super helpful.
[deletedTwo] Four quick questions:
- Which events/functions clear the RAM page at 0x800?
- Do I need to save the page 804 as well or does page 800 include all the modules loaded correctly when saved?
- The XPMM module from Angel provides the functions "YWALL" / "YRALL" to store everything into Flash 0x1FE and 0x1FF. While certainly not as easy to use as it requires Lib#4 and OSX and XPMM, I wanted to know if there are any other risks/objections to using this function?
- If these functions are not objectionable, would it be possible to add them to the YFNZ module so that one always has the ability to restore to a nice state from a ML condition and batteries out?
Thank you for your kind help!