Author Topic: Bug Reports  (Read 406801 times)

0 Members and 1 Guest are viewing this topic.

Offline DJ Omnimaga

  • Clacualters are teh gr33t
  • CoT Emeritus
  • LV15 Omnimagician (Next: --)
  • *
  • Posts: 55942
  • Rating: +3154/-232
  • CodeWalrus founder & retired Omnimaga founder
    • View Profile
    • Dream of Omnimaga Music
Re: Bug Reports
« Reply #780 on: September 22, 2010, 12:42:05 pm »
This is not the right topic to ask questions, you may want to ask in a separate one, since this one is for Axe Parser application bugs. You should also add some source code with your question..
Now active at https://discord.gg/cuZcfcF (CodeWalrus server)

Offline calc84maniac

  • eZ80 Guru
  • Coder Of Tomorrow
  • LV11 Super Veteran (Next: 3000)
  • ***********
  • Posts: 2912
  • Rating: +471/-17
    • View Profile
    • TI-Boy CE
Re: Bug Reports
« Reply #781 on: September 22, 2010, 01:06:44 pm »
Well apparently the buffer where the input string is stored is not a temporary variable so a bcall to _CleanAll doesn't clear it.  I will have to find the name of that string.  The buffer for the input is named "-" and I've seen a "#" and "$" so I'm guessing it's something similar to that.

There isn't a way to fix the memory leaks since this is an OS call.
As you are probably aware, there is a leak-free (or less so) version of _GetKey, undocumented and called _GetKeyRetOff ;D
I wonder if something similar exists for the input bcall...
Good luck making it work! :)
If it's undocumented, does it means it won't work on the Nspire, though? I think Quigibo is aiming for full Nspire compatibility with the exception of the Full command.
Nah, this is an undocumented OS call, which is different from an undocumented Z80 instruction. It should work just fine.
"Most people ask, 'What does a thing do?' Hackers ask, 'What can I make it do?'" - Pablos Holman

Offline DJ Omnimaga

  • Clacualters are teh gr33t
  • CoT Emeritus
  • LV15 Omnimagician (Next: --)
  • *
  • Posts: 55942
  • Rating: +3154/-232
  • CodeWalrus founder & retired Omnimaga founder
    • View Profile
    • Dream of Omnimaga Music
Re: Bug Reports
« Reply #782 on: September 25, 2010, 02:18:54 pm »
Ah ok, I was a bit worried.

Also,

1000->X
Pause X

crashes Kindermoumoute's calc. Could this be a bug on certain calc models or could it be his calc that is defect?
Now active at https://discord.gg/cuZcfcF (CodeWalrus server)

Offline kindermoumoute

  • LV8 Addict (Next: 1000)
  • ********
  • Posts: 836
  • Rating: +54/-3
    • View Profile
Re: Bug Reports
« Reply #783 on: September 26, 2010, 05:52:36 am »
Ah ok, I was a bit worried.

Also,

1000->X
Pause X

crashes Kindermoumoute's calc. Could this be a bug on certain calc models or could it be his calc that is defect?

Just crash when X=0 :/
Projects :

Worms armageddon z80 :
- smoothscrolling Pixelmapping : 100%
- Map editor : 80%
- Game System : 0%

Tutoriel français sur l'Axe Parser
- 1ère partie : en ligne.
- 2ème partie : en ligne.
- 3ème partie : en ligne.
- 4ème partie : 10%
- Annexe : 100%

Offline DJ Omnimaga

  • Clacualters are teh gr33t
  • CoT Emeritus
  • LV15 Omnimagician (Next: --)
  • *
  • Posts: 55942
  • Rating: +3154/-232
  • CodeWalrus founder & retired Omnimaga founder
    • View Profile
    • Dream of Omnimaga Music
Re: Bug Reports
« Reply #784 on: September 26, 2010, 05:55:24 am »
Oh ok, well in that case it's because 0= a pause of 65535, 1000=999, etc. Basically, to do a Pause that lasts nothing, you would need to do Pause 1. 65535 causes your calc to freeze for almost one minute, I think.
Now active at https://discord.gg/cuZcfcF (CodeWalrus server)

Offline ztrumpet

  • The Rarely Active One
  • CoT Emeritus
  • LV13 Extreme Addict (Next: 9001)
  • *
  • Posts: 5712
  • Rating: +364/-4
  • If you see this, send me a PM. Just for fun.
    • View Profile
Re: Bug Reports
« Reply #785 on: September 26, 2010, 08:44:03 am »
Oh ok, well in that case it's because 0= a pause of 65535, 1000=999, etc. Basically, to do a Pause that lasts nothing, you would need to do Pause 1. 65535 causes your calc to freeze for almost one minute, I think.
This is correct. :)

Offline DJ Omnimaga

  • Clacualters are teh gr33t
  • CoT Emeritus
  • LV15 Omnimagician (Next: --)
  • *
  • Posts: 55942
  • Rating: +3154/-232
  • CodeWalrus founder & retired Omnimaga founder
    • View Profile
    • Dream of Omnimaga Music
Re: Bug Reports
« Reply #786 on: September 26, 2010, 01:10:52 pm »
Yeah the first time I was messing around with Pause, I thought I froze my calc and removed a battery ;D
Now active at https://discord.gg/cuZcfcF (CodeWalrus server)

Offline Deep Toaster

  • So much to do, so much time, so little motivation
  • Administrator
  • LV13 Extreme Addict (Next: 9001)
  • *************
  • Posts: 8217
  • Rating: +758/-15
    • View Profile
    • ClrHome
Re: Bug Reports
« Reply #787 on: September 26, 2010, 02:02:33 pm »
:D Me too, but I decided to wait. It turned out to be a good idea.




Offline calcdude84se

  • Needs Motivation
  • LV11 Super Veteran (Next: 3000)
  • ***********
  • Posts: 2272
  • Rating: +78/-13
  • Wondering where their free time went...
    • View Profile
Re: Bug Reports
« Reply #788 on: September 26, 2010, 02:43:31 pm »
DJ, to be technically correct, 0 is a pause of 65536, 1000 is a pause of 1000, and so on ;)
"People think computers will keep them from making mistakes. They're wrong. With computers you make mistakes faster."
-Adam Osborne
Spoiler For "PartesOS links":
I'll put it online when it does something.

Offline ztrumpet

  • The Rarely Active One
  • CoT Emeritus
  • LV13 Extreme Addict (Next: 9001)
  • *
  • Posts: 5712
  • Rating: +364/-4
  • If you see this, send me a PM. Just for fun.
    • View Profile
Re: Bug Reports
« Reply #789 on: September 26, 2010, 02:53:37 pm »
DJ, to be technically correct, 0 is a pause of 65536, 1000 is a pause of 1000, and so on ;)
Whoops yeah, that's technically right as it decrements first and then checks, still allowing all numbers to be the same except 0.  :) 

Offline DJ Omnimaga

  • Clacualters are teh gr33t
  • CoT Emeritus
  • LV15 Omnimagician (Next: --)
  • *
  • Posts: 55942
  • Rating: +3154/-232
  • CodeWalrus founder & retired Omnimaga founder
    • View Profile
    • Dream of Omnimaga Music
Re: Bug Reports
« Reply #790 on: September 26, 2010, 03:38:43 pm »
Ah yeah, but since 65536 is beyond the 2 byte limits, I assume a Pause is the number after the command minus 1, right? Otherwise 65536 would loop back to 0. So Pause 1 produces a pause of 0, Pause 0 65535, Pause 65535 65534, etc
Now active at https://discord.gg/cuZcfcF (CodeWalrus server)

Offline calcdude84se

  • Needs Motivation
  • LV11 Super Veteran (Next: 3000)
  • ***********
  • Posts: 2272
  • Rating: +78/-13
  • Wondering where their free time went...
    • View Profile
Re: Bug Reports
« Reply #791 on: September 26, 2010, 04:01:39 pm »
Hm... let me try elaborating on what ztrumpet said.
Code: (BASIC) [Select]
"This code acts like Axe 'Pause ', taking X for the amount. However, 15, not 65535, is the upper bound.
Lbl S
X-1+16not(X->X
If not(X
Goto S
So, if X starts as, say, 2, the first line after "Lbl S" will set X to 1. Since X is not 0, it will go back to that line, and decrement it to 0. Since it is now 0, it does not "Goto S", finishing the routine. Note that it ran the loop 2 times. (decrement to 1, decrement to 0)
However, if X starts as 0, the line "X-1+16not(X->X" will set X to 15. 15 is not 0, so it will "Goto S" and proceed to loop 15 more times for a total of 16. Put a counter C, initialized to 0, in the loop and see for yourself, like this:
Code: [Select]
0->C
Lbl S
X-1+16not(X->X
C+1->C
If not(X
Goto S
Disp C
"People think computers will keep them from making mistakes. They're wrong. With computers you make mistakes faster."
-Adam Osborne
Spoiler For "PartesOS links":
I'll put it online when it does something.

Offline Deep Toaster

  • So much to do, so much time, so little motivation
  • Administrator
  • LV13 Extreme Addict (Next: 9001)
  • *************
  • Posts: 8217
  • Rating: +758/-15
    • View Profile
    • ClrHome
Re: Bug Reports
« Reply #792 on: September 26, 2010, 04:07:48 pm »
Oh, so it basically takes one less than the number after the Pause , but since it runs once before checking the loop, it's functionally adding the one back? So 0 would be 0-1+1=65535+1=65536 pauses.




Offline calcdude84se

  • Needs Motivation
  • LV11 Super Veteran (Next: 3000)
  • ***********
  • Posts: 2272
  • Rating: +78/-13
  • Wondering where their free time went...
    • View Profile
Re: Bug Reports
« Reply #793 on: September 26, 2010, 04:12:41 pm »
If you want to look at it that way, then sure :). The main point is that it checks at the end of the loop, after it's already been decremented, and not at the beginning.
« Last Edit: September 26, 2010, 04:12:59 pm by calcdude84se »
"People think computers will keep them from making mistakes. They're wrong. With computers you make mistakes faster."
-Adam Osborne
Spoiler For "PartesOS links":
I'll put it online when it does something.

Offline DJ Omnimaga

  • Clacualters are teh gr33t
  • CoT Emeritus
  • LV15 Omnimagician (Next: --)
  • *
  • Posts: 55942
  • Rating: +3154/-232
  • CodeWalrus founder & retired Omnimaga founder
    • View Profile
    • Dream of Omnimaga Music
Re: Bug Reports
« Reply #794 on: September 26, 2010, 04:14:35 pm »
Ah I see how it works now. Thanks for explaining :)
Now active at https://discord.gg/cuZcfcF (CodeWalrus server)