CEMETECH
Leading The Way To The Future
Login [Register]
Username:
Password:
Autologin:

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......

Posted: 06 Feb 2012 02:49:21 pm    Post subject:

Just confirmed this on my 84+SE ROM in WabbitEmu. Weird - any theories?
_________________
StickFigure Graphic Productions || VSHI: Vermont Sustainable Heating Initiative


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. Smile
_________________
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) Shock
_________________
Back to top
Weregoose


Cemetech Expert


Joined: 23 Oct 2009
Posts: 463

Posted: 06 Feb 2012 07:30:32 pm    Post subject:

Deep Thought wrote:
It also works with any other paired delimiter (parentheses, braces, brackets) Shock
...What are you talking about?
_________________
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: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
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 GMT - 5 Hours

 
Jump to:  
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.