One of the things I like about Doors CSE is the ability to hide programs from the OS. I keep all of my programs Archived, and the less frequently used ones are also hidden so as not to clutter the PRGM list. Today I had a crash and RAM Reset, which did little harm since the programs were in Archive. I set about reinstating the Hide status where required, which was straightforward until...

One of the programs that should normally be hidden now shows up in the PRGM list, but not in any folders in Doors! Whether I archive or unarchive the program, it runs OK and edits OK, but Doors can't "see" it, so I can neither move it to its usual folder nor hide it. Is there any reason why this should happen? Or any way I can bring it back into the Doors folder system? Or should I back it up via TI-Connect, delete it from the calc and then reload it?

A separate but possibly related enquiry is about why the crash occurred anyway: I use a couple of programs which require prime factors of an integer, and the factoring is more efficient if the calculator only checks for divisibility by primes, so it has a list of all the primes < 5000. I recently decided it was more convenient to keep this list in Archive, and have the programs Unarchive it to run, returning the list to Archive on quit. This saves RAM as well as protecting the list (most of the time) against RAM failures. But I noticed the Archive process at the end of the program seemed to be gradually slowing down over the weeks, so this morning I ran GarbageCollect (which my limited understanding considers to be much like what Windows calls defragmenting). Sure enough those factoring programs now close appreciably more quickly BUT it was soon afterwards that the crash and reset happened. Is there any known connection between the GarbageCollect process and this sort of catastrophic error? Or any advice from those with the relevant expertise?
Thanks - OMT
Better keep one copy in Archive and copy it to ram every time needed. That saves precious flash cycles (increases the lifetime and speed dramatically).
OldMathTeacher wrote:
One of the programs that should normally be hidden now shows up in the PRGM list, but not in any folders in Doors! Whether I archive or unarchive the program, it runs OK and edits OK, but Doors can't "see" it, so I can neither move it to its usual folder nor hide it. Is there any reason why this should happen? Or any way I can bring it back into the Doors folder system? Or should I back it up via TI-Connect, delete it from the calc and then reload it?
There are two possibilities:
1) The program starts with rand or Ans. Either token acts as an instruction to Doors CSE to hide the program.
2) The program is in some folder that doesn't actually exist.

If the problem is (2), deleting it and re-sending it will make it re-appear in Doors CSE. If the problem is (1), you can edit the program in SourceCoder to add something like a "1" before the rand or Ans.

Quote:
[...] Is there any known connection between the GarbageCollect process and this sort of catastrophic error? Or any advice from those with the relevant expertise?
Thanks - OMT
I once encountered a crash after a GarbageCollect, but I was unable to replicate it. GarbageCollects happen sufficiently infrequently on the TI-84+CSE that it's entirely possible there's a bug in the process that TI didn't catch.

Muessigb wrote:
Better keep one copy in Archive and copy it to ram every time needed. That saves precious flash cycles (increases the lifetime and speed dramatically).
I don't agree. The lifetime of the flash is so long (>100,000 cycles per cell) that practically, you're never going to wear it out while the calculator is still relevant. If you Archived one program taking up your entire Flash every minute, day and night, you'd spend three sleepless years Archiving programs before you reached 100,000 cycles. If you Archived one 1KB program once a minute, it would take 681 years before any cell in your Flash reached 100,000 cycles.
KermMartian wrote:
There are two possibilities:
1) The program starts with rand or Ans. Either token acts as an instruction to Doors CSE to hide the program.
2) The program is in some folder that doesn't actually exist.

If the problem is (2), deleting it and re-sending it will make it re-appear in Doors CSE. If the problem is (1), you can edit the program in SourceCoder to add something like a "1" before the rand or Ans.

Muessigb wrote:
Better keep one copy in Archive and copy it to ram every time needed. That saves precious flash cycles (increases the lifetime and speed dramatically).
I don't agree. The lifetime of the flash is so long (>100,000 cycles per cell) that practically, you're never going to wear it out while the calculator is still relevant. If you Archived one program taking up your entire Flash every minute, day and night, you'd spend three sleepless years Archiving programs before you reached 100,000 cycles. If you Archived one 1KB program once a minute, it would take 681 years before any cell in your Flash reached 100,000 cycles.


Thanks. It certainly isn't (1), and indeed this program had been visible in the Calculus folder of Doors for months. That folder still exists, containing 3 other programs, but not showing this one. I suppose it must be (2) and it's migrated to a folder that doesn't exist. I'll resend it from TI-Connect.

I thought Muessigb was implying I should copy the list from Archive to RAM when required, but if so I wouldn't even know how to do that from within a program [perhaps there's a hybrid way, but I've still not got round to learning anything of this], and to do it manually every time before I ran the program would be silly. There's no need to Unarchive and re-Archive the program itself, since thanks to you I can run it while archived anyway.
  
Register to Join the Conversation
Have your own thoughts to add to this or any other topic? Want to ask a question, offer a suggestion, share your own programs and projects, upload a file to the file archives, get help with calculator and computer programming, or simply chat with like-minded coders and tech and calculator enthusiasts via the site-wide AJAX SAX widget? Registration for a free Cemetech account only takes a minute.

» Go to Registration page
Page 1 of 1
» All times are UTC - 5 Hours
 
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum

 

Advertisement