Omnimaga: The Coders Of Tomorrow
Welcome, Guest. Please login or register.
 
Omnimaga: The Coders Of Tomorrow
19 May, 2013, 20:58:44 *
Welcome, Guest. Please login or register.

Login with username, password and session length
 
   home   news downloads projects tutorials misc forums rules new posts irc about Login Register  
+-OmnomIRC

You must Register, be logged in and have at least 40 posts to use this shout-box! If it still doesn't show up afterward, it might be that OmnomIRC is disabled for your group or under maintenance.

Note: You can also use an IRC client like mIRC, X-Chat or Mibbit to connect to an EFnet server and #omnimaga.

Pages: [1] 2 3 ... 124   Go Down
  Print  
Author Topic: Bug Reports -  (Read 94558 times) Bookmark and Share
0 Members and 1 Guest are viewing this topic.
Quigibo
The Executioner
LV11 Super Veteran (Next: 3000)
***********
Offline Offline

Gender: Male
Last Login: Yesterday at 00:55:01
Date Registered: 22 January, 2010, 05:02:37
Location: Los Angeles
Posts: 2022


Topic starter
Total Post Ratings: +1019

View Profile
« on: 05 February, 2010, 10:25:34 »
+1

I thought I'd start this in case anyone is finding any bugs.  Its important I find them now before I start hard coding everything.  There is only so much I can do with testing, so I need your help!

Verified
* Custom interrupt label names are not processed correctly . [Fixed]
* Interrupts get disabled randomly with DispGraph commands when enabled previously [Solution Unknown]
* Error scrolling corrupts program data when programs are extremely large [Problem Unknown]

Unconfirmed
* Compiler freezes regularly when compiling applications on some calculators
* The AXEGUESS example program is always winning with the number "4"

Please confirm any unreproducible errors so I can make more sense of them with your calculator model, factory letter, operating system version, and other hook based programs on your calculator if applicable.  Thank you!
« Last Edit: 11 August, 2010, 00:32:57 by Quigibo » Logged

___Axe_Parser___
Today the calculator, tomorrow the world!
Builderboy
Physics Guru
LV13 Extreme Addict (Next: 9001)
*************
Offline Offline

Gender: Male
Last Login: Today at 11:51:23
Date Registered: 20 April, 2009, 00:28:53
Location: Ravenholm
Posts: 5642


Total Post Ratings: +589

View Profile
« Reply #1 on: 06 February, 2010, 02:02:51 »
0

It seems that OR does not work Sad I have this program

1
2
3
4
5
6
0->A
1->B

If A=0 or B=0
Output(0,0,"HI
End

And when i compile and run, nothing is displayed.
Logged

Quigibo
The Executioner
LV11 Super Veteran (Next: 3000)
***********
Offline Offline

Gender: Male
Last Login: Yesterday at 00:55:01
Date Registered: 22 January, 2010, 05:02:37
Location: Los Angeles
Posts: 2022


Topic starter
Total Post Ratings: +1019

View Profile
« Reply #2 on: 06 February, 2010, 02:18:19 »
0

That's because I haven't implemented order of operations yet  Wink  It just goes left to right.

These are equivalent:

1
2
If A=0 or B=0
If ((A=0) or B)=0

Instead, try this:

1
If A=0 or (B=0)

Once I get to order of operations, this shouldn't be a problem anymore.
Logged

___Axe_Parser___
Today the calculator, tomorrow the world!
Builderboy
Physics Guru
LV13 Extreme Addict (Next: 9001)
*************
Offline Offline

Gender: Male
Last Login: Today at 11:51:23
Date Registered: 20 April, 2009, 00:28:53
Location: Ravenholm
Posts: 5642


Total Post Ratings: +589

View Profile
« Reply #3 on: 06 February, 2010, 03:28:58 »
0

Ah i see.  Thanks for the info Smiley
Logged

Iambian
LV7 Elite (Next: 700)
*******
Offline Offline

Gender: Male
Last Login: 14 May, 2013, 14:52:06
Date Registered: 04 September, 2008, 20:12:14
Location: Nowhere in particular
Posts: 636


Total Post Ratings: +167

View Profile
« Reply #4 on: 06 February, 2010, 05:47:53 »
0

If anything, I'd suggest creating something of a "test suite" to help you out when you're adding in new functions. Sometimes, the addition or changing of something breaks old code and you'd never really know it.

Makes me wish I spent the time on such when I was going through decking out Celtic III with all them functions. I know it's a bit of work, but it should be well worth it.
« Last Edit: 06 February, 2010, 05:48:30 by Iambian » Logged

A Cherry-Flavored Iambian draws near... what do you do? ...
Projects in my development environment:
Celtic 3 (83+) 95% (Hold) | CaDan (83+) 15% (Rst) | E:SoR (84+) 10% (Rst) | CaDanITE (83+) 4% (Hold) | FF:TIoC (83+) 2% (Data)
Builderboy
Physics Guru
LV13 Extreme Addict (Next: 9001)
*************
Offline Offline

Gender: Male
Last Login: Today at 11:51:23
Date Registered: 20 April, 2009, 00:28:53
Location: Ravenholm
Posts: 5642


Total Post Ratings: +589

View Profile
« Reply #5 on: 07 February, 2010, 09:11:59 »
0

Ok i found another weird bug.  When compiling one of my programs, the compiler stops while compiling and a blinking cursor appears beneath the Compiling message.  No matter what button i press, the cursor just keeps blinking.  So i am forced to pull my batteries, but although i quit back to homescreen, there is no RAM clear shocked

I'll try to get the program uploaded in a sec...
Logged

DJ Omnimaga
Retired Omnimaga founder (Site issues must be PM'ed to Netham45, Eeems, Shmibs, Deep Thought and AngelFish, not me.)
Editor
LV15 Omnimagician (Next: --)
*
Offline Offline

Gender: Male
Last Login: Today at 19:36:19
Date Registered: 25 August, 2008, 07:00:21
Location: Québec (Canada)
Posts: 50202


Total Post Ratings: +2611

View Profile WWW
« Reply #6 on: 07 February, 2010, 09:20:35 »
0

wow it exited quite abruptly x.x

Usually, the calc gets unstable afterward, tho
Logged

Retired 83+ coder, Omnimaga/TIMGUL founder. Now doing power metal music (formerly did electronica)

Follow me on Bandcamp|Facebook|Reverbnation|Youtube|Twitter|Myspace
Eeems
THE GAME
Administrator
LV13 Extreme Addict (Next: 9001)
*
Offline Offline

Gender: Male
Last Login: Today at 20:16:21
Date Registered: 14 March, 2009, 03:32:57
Location: Edmonton, Alberta
Posts: 5071


Total Post Ratings: +230

View Profile WWW
« Reply #7 on: 07 February, 2010, 09:32:37 »
0

I would clear your ram just to be safe builderboy.
Logged

Builderboy
Physics Guru
LV13 Extreme Addict (Next: 9001)
*************
Offline Offline

Gender: Male
Last Login: Today at 11:51:23
Date Registered: 20 April, 2009, 00:28:53
Location: Ravenholm
Posts: 5642


Total Post Ratings: +589

View Profile
« Reply #8 on: 07 February, 2010, 09:33:12 »
0

Good idea

* Builderboy rushes off to clear Ram and save lives *

And here is that program, I don't think i was doing anything wrong shocked

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
:DiagnosticOff
:
:0→A
:0→B
:0→K
:
:While K≠15
:getKey→K
:
:Output(A,B,"
:If (K=3) and (A≠15
:A+1→A
:End
:If (K=2) and (A≠0
:A-1→A
:End
:If (K=1) and (B≠8
:B+1→B
:End
:If (K=4) and (B≠0
:B-1→B
:End
:Output(A,B,"O
:
:End
:
:Return

And the 8xp file in a zip for ya

* Glitch.zip (0.25 KB - downloaded 77 times.)
« Last Edit: 07 February, 2010, 09:39:37 by Builderboy » Logged

Quigibo
The Executioner
LV11 Super Veteran (Next: 3000)
***********
Offline Offline

Gender: Male
Last Login: Yesterday at 00:55:01
Date Registered: 22 January, 2010, 05:02:37
Location: Los Angeles
Posts: 2022


Topic starter
Total Post Ratings: +1019

View Profile
« Reply #9 on: 07 February, 2010, 10:40:49 »
0

Thanks for the report.

When apps exit, they need special exit code so that what you're describing doesn't happen.  It sounds like there was a memory leak somewhere causing the app to exit early.  That's why it didn't reset the ram, because it wasn't actually frozen.  I'll let you know when I find the leak.  Thanks again.

EDIT: Okay found it.  Wow, that was a stupid mistake on my part.  To get around the error temporarily until the next version, don't use parenthesis in any place where they are not needed; if the order of operations is naturally going left to right anyway.  The compiler is supposed to ignore the parenthesis when you do this, but instead it exits early...

:If (K=4) and (B≠0
Change to this:
:If K=4 and (B≠0
Since K=4 is evaluated first anyway.

If you ever get this error again, just turn off your calculator and turn it back on and the problem will go away.  Nothing in memory should be affected.  Oh actually, maybe ram clear anyway since the "LOL" file will be corrupt.
« Last Edit: 07 February, 2010, 11:28:08 by Quigibo » Logged

___Axe_Parser___
Today the calculator, tomorrow the world!
Builderboy
Physics Guru
LV13 Extreme Addict (Next: 9001)
*************
Offline Offline

Gender: Male
Last Login: Today at 11:51:23
Date Registered: 20 April, 2009, 00:28:53
Location: Ravenholm
Posts: 5642


Total Post Ratings: +589

View Profile
« Reply #10 on: 07 February, 2010, 19:23:06 »
0

Alright thanks ^^

I also have some bugs (well not quite bugs) with the output function.  When displaying a character/number on the bottom row, the rest of the screen is shifted up.  This would be nice if it could be turned off for output, as the scrolling migt disrupt other graphics.

My second gripe is that when displaying a single digit number at a certain location, the number doesn't actualy appear where the coordinates you specify are.  For this reason I don't think it's possible to display numbers in the left few colloms?

Just two things with output that I think might need to be changed Smiley
Logged

Quigibo
The Executioner
LV11 Super Veteran (Next: 3000)
***********
Offline Offline

Gender: Male
Last Login: Yesterday at 00:55:01
Date Registered: 22 January, 2010, 05:02:37
Location: Los Angeles
Posts: 2022


Topic starter
Total Post Ratings: +1019

View Profile
« Reply #11 on: 08 February, 2010, 01:56:18 »
0

I'll work on that.  Both of those are fixable, but I'm not sure if there's any built-in OS calls for that.  I can write my own routine, but I'm trying to make sure these programs don't use too much memory.  Luckily, the subroutine support can really cut down on size of the overall program.  Even the most basic things like this save memory:


:If 2sub(1)
:'code here'
:End
:If 3sub(1)
:'code here'
:End
:Lbl 1:<A:Return


The routine above saves 5 more bytes than if you were to use the strait forward way below.


:If 2<A
:'code here'
:End
:If 3<A
:'code here'
:End

Logged

___Axe_Parser___
Today the calculator, tomorrow the world!
Eeems
THE GAME
Administrator
LV13 Extreme Addict (Next: 9001)
*
Offline Offline

Gender: Male
Last Login: Today at 20:16:21
Date Registered: 14 March, 2009, 03:32:57
Location: Edmonton, Alberta
Posts: 5071


Total Post Ratings: +230

View Profile WWW
« Reply #12 on: 14 February, 2010, 19:57:41 »
0

When this code is run a first time it works fine, the second time doesn't though, it's probably due to the missing declaration on K at the beginning.

1
2
3
4
5
While K=/=9
getkey->K
Disp K
Disp i
End
« Last Edit: 14 February, 2010, 19:58:22 by Eeems » Logged

Quigibo
The Executioner
LV11 Super Veteran (Next: 3000)
***********
Offline Offline

Gender: Male
Last Login: Yesterday at 00:55:01
Date Registered: 22 January, 2010, 05:02:37
Location: Los Angeles
Posts: 2022


Topic starter
Total Post Ratings: +1019

View Profile
« Reply #13 on: 14 February, 2010, 22:04:38 »
0

You are correct, the variables start uninitialized.  Assume random garbage, not 0 or something predictable.  They will be preserved between consecutive runs of the program, but running pretty much any other assembly program or app will scramble most or all of the values.  So if you embed 2 different Axe programs into a Basic program, they can pass arguments to each other via preserved variables.  But you cannot use the variables as any sort of long term storage.

In you example, the first time it runs, K was probably something random but upon exiting the program, it became 9.  So when you run the program a second time, K is already 9 so the while loop is skipped.
« Last Edit: 14 February, 2010, 22:07:57 by Quigibo » Logged

___Axe_Parser___
Today the calculator, tomorrow the world!
DJ Omnimaga
Retired Omnimaga founder (Site issues must be PM'ed to Netham45, Eeems, Shmibs, Deep Thought and AngelFish, not me.)
Editor
LV15 Omnimagician (Next: --)
*
Offline Offline

Gender: Male
Last Login: Today at 19:36:19
Date Registered: 25 August, 2008, 07:00:21
Location: Québec (Canada)
Posts: 50202


Total Post Ratings: +2611

View Profile WWW
« Reply #14 on: 15 February, 2010, 06:33:58 »
0

in BASIC, what I did with getkey is do 0getkey before the loop kicks in. That way if you pressed a key before the loop started, it was unregistered before loop starts, to prevent stuff such as menu option being selected automatically or cursor/character moving around by itself
Logged

Retired 83+ coder, Omnimaga/TIMGUL founder. Now doing power metal music (formerly did electronica)

Follow me on Bandcamp|Facebook|Reverbnation|Youtube|Twitter|Myspace
Pages: [1] 2 3 ... 124   Go Up
  Print  
 
Jump to:  

Powered by EzPortal
Powered by MySQL Powered by SMF 1.1.18 | SMF © 2013, Simple Machines Powered by PHP
Page created in 0.281 seconds with 30 queries.
Skin by DJ Omnimaga edited from SMF default theme with the help of tr1p1ea.
All programs, games and songs avaliable on this website are property of their respective owners.
Best viewed in Opera, Firefox, Chrome and Safari with a resolution of 1024x768 or above.