Post Reply 
Saving the state of HP41 CL to PC
03-08-2019, 03:41 AM (This post was last modified: 03-08-2019 05:50 AM by cdmackay.)
Post: #21
RE: Saving the state of HP41 CL to PC
[I hope it's OK to resurrect an old thread like this…]

If I'm reading this right, are we saying that the YWALL function from PWRX is not compatible with the V5 boards, because on those boards the flash sector 0x1f8 isn't segmented (unlike on V3/V4 "top" boards), so cannot be erased in page chunks, but only the whole 8-page sector?

That seems to be the case on my new 41CL: I just tried YWALL, and whilst I have valid copies of MMU registers from 0x804 in 0x1ff, I tried a YPEEK on 0x800028/0x1fe028, and found data in the former, but 0xffff in the latter, which I think means "erased"?

Would a simple solution to this (for V5) be to change YWALL so that it does only a single YFERASE of 0x1f8 (the whole 8-page sector) before copying 0x800 & 0x804? Assuming that it's OK to dedicate all of that sector as a backup area.

Or, for simplest change, merely omit the YFERASE of 0x1ff, as the previous erase of 0x1fe will have done the whole sector?

YRALL could remain as is.

Edit: or better to use the V5 top sector that is segmented, and change YWALL to use flash pages 0x3f8/0x3fc to copy RAM 0x800/0x804?

Cambridge, UK
41CL, 12C, DM15/16, 71B, DM42, 30b (WP 34S), 17B, 28S, 48GX, 50g, 50g (newRPL), Prime G2
various Casio, Rockwell 18R :)
Find all posts by this user
Quote this message in a reply
03-08-2019, 06:19 AM
Post: #22
RE: Saving the state of HP41 CL to PC
(03-08-2019 03:41 AM)cdmackay Wrote:  [I hope it's OK to resurrect an old thread like this…]

If I'm reading this right, are we saying that the YWALL function from PWRX is not compatible with the V5 boards, because on those boards the flash sector 0x1f8 isn't segmented (unlike on V3/V4 "top" boards), so cannot be erased in page chunks, but only the whole 8-page sector?

That seems to be the case on my new 41CL: I just tried YWALL, and whilst I have valid copies of MMU registers from 0x804 in 0x1ff, I tried a YPEEK on 0x800028/0x1fe028, and found data in the former, but 0xffff in the latter, which I think means "erased"?

Would a simple solution to this (for V5) be to change YWALL so that it does only a single YFERASE of 0x1f8 (the whole 8-page sector) before copying 0x800 & 0x804? Assuming that it's OK to dedicate all of that sector as a backup area.

Or, for simplest change, merely omit the YFERASE of 0x1ff, as the previous erase of 0x1fe will have done the whole sector?

YRALL could remain as is.

Edit: or better to use the V5 top sector that is segmented, and change YWALL to use flash pages 0x3f8/0x3fc to copy RAM 0x800/0x804?

I think both your proposals will work just fine. But wouldn't you mean using 0x3FE and 0x3FF atop of V5? - tha'd follow the same analogy.

I'd like to make it a bit more general-purpose though and add some logic to determine first whether it's a V5 board or not, so it can be used by all users...

ÁM
Find all posts by this user
Quote this message in a reply
03-08-2019, 08:28 AM
Post: #23
RE: Saving the state of HP41 CL to PC
(03-08-2019 06:19 AM)Ángel Martin Wrote:  
(03-08-2019 03:41 AM)cdmackay Wrote:  Edit: or better to use the V5 top sector that is segmented, and change YWALL to use flash pages 0x3f8/0x3fc to copy RAM 0x800/0x804?

I think both your proposals will work just fine. But wouldn't you mean using 0x3FE and 0x3FF atop of V5? - tha'd follow the same analogy.

I'd like to make it a bit more general-purpose though and add some logic to determine first whether it's a V5 board or not, so it can be used by all users...

thanks Ángel.

Yes, of course, you're right. I was trying to preserve the page spacing, in case the need arose to also copy 0x801/802/803. But the original YWALL doesn't do that either, so forget it.

Right, the official YWALL needs to work for all boards, of course. I was wondering about making my own copy of it (although can I do that?) and edit it just to suit my V5 board, in the meantime.

thanks again!

Cambridge, UK
41CL, 12C, DM15/16, 71B, DM42, 30b (WP 34S), 17B, 28S, 48GX, 50g, 50g (newRPL), Prime G2
various Casio, Rockwell 18R :)
Find all posts by this user
Quote this message in a reply
Post Reply 




User(s) browsing this thread: 1 Guest(s)