0 Members and 3 Guests are viewing this topic.
PRGMARCHIVE::AsmPrgm:21F8893E02AE77C9
PRGMA:Asm(prgmARCHIVEunarchive prgmFAKEprgmFAKEarchive prgmFAKEAsm(prgmARCHIVE
archive prgmFAKEAsm(prgmARCHIVE
"FAKE:XTEMP000Asm(prgmTPROGprgmXTEMP000
DoorsCS copies archived programs to RAM and copies back only if the program content changes (basically if it uses SMC).
You might want to talk to Kerm about adding that option, MirageOS had it, and i can't imagine it would be difficult to implement (basically just don't call the code to copy the program back into archive). I don't know how Axe programs are handled, but how do you know none of the routines use SMC? Or is there a compile-time option to use only non-SMC routines? Many routines use SMC because it's generally faster and smaller than loading content from locations in SafeRAM, and for some things it's hard to imagine how to go about it without using SMC.
Quote from: chickendude on October 29, 2012, 08:44:40 amYou might want to talk to Kerm about adding that option, MirageOS had it, and i can't imagine it would be difficult to implement (basically just don't call the code to copy the program back into archive). I don't know how Axe programs are handled, but how do you know none of the routines use SMC? Or is there a compile-time option to use only non-SMC routines? Many routines use SMC because it's generally faster and smaller than loading content from locations in SafeRAM, and for some things it's hard to imagine how to go about it without using SMC.This has already been discussed on Cemetech on a topic called "My opinion/request for DoorsCS" or something like that. From what I remember of the discussion, Kerm says that DoorsCS doesn't writeback if it is not necessary, and Quigibo says that not any of Axe routines use SMC.I think the problem comes from DCS and not Axe because I don't have the problem when I replace DCS with zStart.