Forum mail doesn't work for "Walter B", at least not when I click on your name in the previous post. :(
Hi Pauli & Walter,
if life doesn't get in the way, I'm willing to aid in porting wp34s to Windows
and the real thing. (Life *will* get in the way, but...)
First of all, I'd like to know your "normal" e-mail addresses for easy
collaboration. As an alternative, we can move the discussion to the
sourcefourge infrastructure (blog, forum, what is available?). Can you add me
as a developer? Talking about technical details in the museum forum might not
be the right place.
I have a first point to discuss: memory.
As you should be aware of, the RAM is divided in a battery backed part of 2 KB
at address 0x300000 and a volatile part of 4KB @ 0x200000. I don't know yet at
which point the volatile memory looses its contents but it should only be used
for scratch memory (processor stack, scratch registers for internal
processing) while the persistent RAM should be used for all user data.
Your code simply defines global variables while Cyrille's implementation
assumes a structure MyApplication which is manually allocated to the correct
address (0x300000). From my past experience with embedded systems, the linker
should be capable of putting variable data in designated segments at
designated lcations. This would make us dependent on the tools but that's more
or less always the case. It's just necessary to identify which data goes where
and mark it in the code with the proper qualifiers. I'll have to check how to
do it in IAR and/or GCC.
The Windows emulation can be done without but for state saving, some
seperation is nonetheless necessary. Putting everything in MyApplication might
be the straightest path to success.