This is an archived, read-only copy of the United-TI subforum , including posts and topic from May 2003 to April 2012. If you would like to discuss any of the topics in this forum, you can visit Cemetech's Calculator Programming subforum. Some of these topics may also be directly-linked to active Cemetech topics. If you are a Cemetech member with a linked United-TI account, you can link United-TI topics here with your current Cemetech topics.

This forum is locked: you cannot post, reply to, or edit topics. General Coding and Design => Calculator Programming
Author Message
ah-blabla


Newbie


Joined: 28 Oct 2009
Posts: 26

Posted: 13 Nov 2009 03:38:06 am    Post subject:

Hi All,

I was wondering whether anyone knows of a method to delete the current home screen entry on a 68K calc (i.e. the line with which the current program was started). I have been trying various methods, but it seems that it is only possible to delete the last entry before the program you started, but not to delete the program entry itself. Here's some code:

Code:
   HANDLE last = HS_getFIFONode(0);
   if (last != H_NULL) {
      HS_deleteFIFONode(last);
   }

(I have discovered that 0 and 1 both give the "last" entry, the rest are numbered up the way from the newest to oldest.)
I have also tried printing HS_countFIFO(): when there are no home screen entries at all (i.e. Newprob, and then a deletion of NewProb), it returns 0, suggesting that the entry for the program you are running is only added after the program finishes. (These tests are all on TIEmu with AMS 3.10). Is there any way of getting around that limitation? I also tried using cmd_disphome() as a last ditch attempt to get the calc to return to the home screen before my getting the entries, but this didn't help either. So, is there any way to force the calc to "forget" the last entry?


Last edited by Guest on 13 Nov 2009 03:38:49 am; edited 1 time in total
Back to top
magicdanw
pcGuru()


Calc Guru


Joined: 14 Feb 2007
Posts: 1110

Posted: 13 Nov 2009 03:54:10 am    Post subject:

It sounds like what you're trying to accomplish isn't making the calculator forget the last entry, but preventing it from storing a new last entry. I've never programmed for this calculator, but perhaps there is some flag that is set to indicate a program is running, or a location in ram that stores the name of the currently running program, and you could clear that flag or that field to prevent the calculator from storing a new entry.

Just random speculation of course. I have no idea is this exists, if it's documented, or even if the calculator runs programs in such a way.
Back to top
ah-blabla


Newbie


Joined: 28 Oct 2009
Posts: 26

Posted: 13 Nov 2009 04:46:40 am    Post subject:

magicdanw wrote:
It sounds like what you're trying to accomplish isn't making the calculator forget the last entry, but preventing it from storing a new last entry. I've never programmed for this calculator, but perhaps there is some flag that is set to indicate a program is running, or a location in ram that stores the name of the currently running program, and you could clear that flag or that field to prevent the calculator from storing a new entry.

True. I initially made the assumption that the entry is added before the program runs, but it seems not.
Quote:
Just random speculation of course. I have no idea is this exists, if it's documented, or even if the calculator runs programs in such a way.

I'll try search through the documentation, and experiment a bit. I know that the TI Calc side of WICHTIG (a wireless module for Voyage 200) claims to be able to delete the entry of this prog, but there isn't actually any code doing it available, so I'm not sure.

One idea I might try involves a TSR style program, which my program starts on exiting, which then clears the necessary history items, since with a TSR program the Calc thinks the program has finished when it hasn't. The alternative is to implement the whole thing as a TSR style program, i.e. the calc thinks it has exited, adds it to history, but then the program takes over until finished, with the AMS unaware of this. I don't know if there's much point though, seems like more of a bother than I thought it would be. (A flash app is another possibility for something that won't stay in the history, but there doesn't seem to be too much documentation on that.)


Last edited by Guest on 13 Nov 2009 04:50:06 am; edited 1 time in total
Back to top
Display posts from previous:   
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
    »
» View previous topic :: View next topic  
Page 1 of 1 » All times are UTC - 5 Hours

 

Advertisement