Don't have an account? Register now to chat, post, use our tools, and much more.
Latest Headlines
Online Users
There are 115 users online: 5 members, 83 guests and 27 bots. Members: AlexRider38, DShiznit, gbl08ma, Pseudoprogrammer, Xeda112358. Bots: VoilaBot (1), MSN/Bing (1), Magpie Crawler (4), Googlebot (20), MSN/Bing (1).
RSS & Social Media
SAX
You must log in to view the SAX chat widget
|
| Author |
Message |
|
Weregoose

Cemetech Expert

Joined: 23 Oct 2009 Posts: 463
|
Posted: 06 Feb 2012 02:38:09 pm Post subject: 83+ Quirk Discovered |
|
|
PROGRAM:A
:"<any two-byte token XX00>":prgmB:!
PROGRAM:B
:{0→u(nMin)
Run prgmA. I have no explanation for this. AFAIK, it works across all versions. _________________ Common Errors in English · How To Ask Questions The Smart Way |
|
| Back to top |
|
|
elfprince13

OVER NINE THOUSAND!

Joined: 23 May 2005 Posts: 10234 Location: A galaxy far far away......
|
|
| Back to top |
|
|
Aes_Sedia5

Minor Calculator Deity

Joined: 01 Sep 2011 Posts: 1002 Location: Where Nightmares end and Dreams begin
|
Posted: 06 Feb 2012 03:33:19 pm Post subject: |
|
|
What does it do? _________________

 |
|
| Back to top |
|
|
Weregoose

Cemetech Expert

Joined: 23 Oct 2009 Posts: 463
|
Posted: 06 Feb 2012 04:10:29 pm Post subject: |
|
|
"{0→" coupled with that particular variable (or its v/w brethren) is the culprit; it appears to cause the interpreter to pop into the wrong location. I'd be happy if someone who is knowledgeable about the parser would take a look at this.  _________________ Common Errors in English · How To Ask Questions The Smart Way |
|
| Back to top |
|
|
Deep Thought

Expert

Joined: 11 Mar 2010 Posts: 739 Location: The Universe
|
Posted: 06 Feb 2012 07:14:36 pm Post subject: |
|
|
It also works with any other paired delimiter (parentheses, braces, brackets)  _________________
  |
|
| Back to top |
|
|
Weregoose

Cemetech Expert

Joined: 23 Oct 2009 Posts: 463
|
|
| Back to top |
|
|
Deep Thought

Expert

Joined: 11 Mar 2010 Posts: 739 Location: The Universe
|
Posted: 06 Feb 2012 07:34:13 pm Post subject: |
|
|
I meant the first line of prgmA. (Though I guess you already said that the problem is in the {0→u(nMin) line.) _________________
  |
|
| Back to top |
|
|
Weregoose

Cemetech Expert

Joined: 23 Oct 2009 Posts: 463
|
Posted: 06 Feb 2012 07:44:34 pm Post subject: |
|
|
Well, replacing the second quote with anything but a quote will have the rest of the line served as a string, of course. But the point of the demonstration is that the second one of prgmA is being read twice. What ought to happen is that after the called program terminates, execution should resume at somewhere about the prgm token, but certainly not behind it. Let the next post please offer something insightful. _________________ Common Errors in English · How To Ask Questions The Smart Way |
|
| Back to top |
|
|
thepenguin77
New Member

Joined: 09 Jun 2010 Posts: 79
|
Posted: 07 Feb 2012 05:54:44 pm Post subject: |
|
|
I don't know what the actual cause is, but here's what I do know.
1. This glitch seems to restart the basic parser. It stops loops and removes all callback programs. (This could be a sweet hack)
2. The glitch blows 9 bytes in the FPS per use. I'm not sure where they are used, but I have pulled an Error:Memory using nothing but this glitch.
I'll try to look more into this later, but honestly, breaking For loops might have some serious uses. (Though I'm sure it wastes a lot of memory) |
|
| Back to top |
|
|
DrDnar
Member

Joined: 05 Jan 2010 Posts: 108
|
Posted: 07 Feb 2012 10:33:34 pm Post subject: |
|
|
| How did you discover this bug? |
|
| Back to top |
|
|
Weregoose

Cemetech Expert

Joined: 23 Oct 2009 Posts: 463
|
Posted: 07 Feb 2012 11:18:02 pm Post subject: |
|
|
I legitimately wanted to use {0→u(nMin) in the middle of a program, and soon wondered why it wasn't letting me colon-chain any expressions past that prgm call on the homescreen, e.g., 1→X:prgmA0:Ans² wouldn't get to the Ans² despite the lack of a Return/Stop in the program. So that {0→u(nMin) could appear anywhere in prgmB, and the curio will persist as long as the interpreter is allowed to fall through the final line of the program [EDIT: or hits a Return beforehand].
Related:
Code: :{0}→u(nMin)
:seq(X²,X,1,1
As a program, this works fine. But if you replace the ² with an explicit ^2, you get an ERR:UNDEFINED, and 2:Goto returns to the home screen, indicating a problem with whatever underlying routine seq( uses. _________________ Common Errors in English · How To Ask Questions The Smart Way |
|
| Back to top |
|
|
BrandonW
Calculator Über-Deity

Joined: 20 Sep 2006 Posts: 390
|
Posted: 08 Feb 2012 01:12:17 am Post subject: |
|
|
It's a bug in the BCALL _StoOther. It doesn't remove the value from the floating-point stack when you're storing to the following variables: u(nMin), v(nMin), w(nMin), Zu(nMin), Zv(nMin), and Zw(nMin). With the FPS messed up, subprograms and loops will behave very erratically afterward.
I have no idea why, but it's a serious bug and it's kind of amazing no one's ever found it before. TI should probably be told. _________________
 |
|
| Back to top |
|
|
|
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
|
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
|
© Copyright 2000-2013 Cemetech & Kerm Martian :: Page Execution Time: 0.033554 seconds.
|