p7os: "main memory reset" missing #7
Loading…
Reference in New Issue
No description provided.
Delete Branch "%!s(<nil>)"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
It could be interesting to be able to completely reset the calculator's main memory during a flash.
Maybe a
--erase-flash
could be added 😃Main memory or storage memory? The first one is in RAM, with two backups in the ROM area of the OS (sector-aligned).
Oops, I inverted main memory and storage memory 😕 I speak about resetting storage memory
I think this is a good idea. However, to do this we need backups that include a copy of an empty storage memory. Such backups should be 4M (or 8M for the Graph 35+E II but I don't think this is on the agenda yet).
A possible way to get that is to flash that standard OS to a calculator, then make a new backup of the full ROM.
Is there backup support in p7? As far as I remember, this is normally done by a protocol 7 command which was removed at some point, sometime around OS 2.05 I think.
Maybe we can write an add-in that implements that command, or any other simple backup protocol? This would help create new backups for all add-in supporting OSes, which should be all interesting OSes after OS 2.05.
The erase option is added to the TODO list :). I think about how to do this, thank to Lephenixnoir for his notes ! Before that I work on p7 send and get and make a better error handling for the streams.
osrecover.sh4 doesn't support backup option so for backup data I think make a new osrecover.sh4 (if I get there), and after implement that on p7os.
So I keep you posted for backup erase option.
Tomorrow I will try to erase all main memory (0xA0010000 to 0xA0400000 instead of 0xA0270000) add then flash.
I don't think you need to go this far. Writing ROM is complicated stuff because it cannot be done from ROM and so on. But reading it is much easier. In fact, the Graph 35+E II Oses that we have were just copied to filesystem (in several parts) by an add-in. This should be much simpler than writing an updater. ^^
Okey, but write a new osrecover.sh4 is always in my plans, for support more stuff
p7os flash [os] -u [osrecover.sh4] --erase-flash
is worked for me (the erase zone is 0xA0010000 to 0xA027FFFF instead of 0xA026FFFF).New branch
p7os-erase-flash
for testingI just merge dev in master,
--erase-flash
is normally functionalDo you know why erasing just this sector is enough? Is it the filesystem table? Any information there?
Yep, I think that (the FS table), this is just an intuition. But it work. After flashing the calculator say "Optimization stopped erase or continue". If you select erase or continue it does the same (total erase). It's like removing the first sectors from a HDD. ("soft erase")