Author Topic: Bug Reports  (Read 402157 times)

0 Members and 3 Guests are viewing this topic.

Offline Runer112

  • Project Author
  • LV11 Super Veteran (Next: 3000)
  • ***********
  • Posts: 2289
  • Rating: +639/-31
    • View Profile
Re: Bug Reports
« Reply #1740 on: June 18, 2012, 11:28:16 pm »
I can't see why that would cause an issue, MGOS. :-\ Since I can't seem to replicate the issue in a small test program, perhaps the issue is a context/size issue. If you could post either the source program or the compiled executable, perhaps someone could discover the problem through debugging. If it's for a contest, be careful not to post anything that the contest rules forbid posting.

And you should be able to use {L1}++ just fine, I see no sign that this would trigger any bugs.
« Last Edit: June 18, 2012, 11:30:43 pm by Runer112 »

Offline MGOS

  • LV6 Super Member (Next: 500)
  • ******
  • Posts: 336
  • Rating: +95/-0
    • View Profile
Re: Bug Reports
« Reply #1741 on: June 19, 2012, 12:28:02 am »
Ok. I can't post more, and I don't think it will help that much. The executable is now about 4k large and compiled to axe fusion atm. I will change that to an App because I will never be able to be under the 8k limit. It uses a lot of Filling/Copying for fast drawing on parts of the screen and the whole data is stored in L1 and L2 if that helps.The rest is just very standard axe stuff.

Offline kindermoumoute

  • LV8 Addict (Next: 1000)
  • ********
  • Posts: 836
  • Rating: +54/-3
    • View Profile
Re: Bug Reports
« Reply #1742 on: June 23, 2012, 08:40:36 am »
There is a bug with inData command : "If not found, 0 is returned.", it don't work, it returns the zero's location in list. Currently I can't use inData() without this syntax : inData(XX,XXX)-29??0,+29 ==> that's an ugly piece of code. x)

Can you solve this bug ?
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 jacobly

  • LV5 Advanced (Next: 300)
  • *****
  • Posts: 205
  • Rating: +161/-1
    • View Profile
Re: Bug Reports
« Reply #1743 on: June 23, 2012, 12:49:51 pm »
The only reason inData( would return the index of the 0, is if you were searching for 0.

Edit: If you wanted 0 if byte is 0, you could do BYTE?inData(,PTR).
Also, I can't help but mention that inData(BYTE,PTR)-29??0,+29 optimizes to inData(BYTE,PTR)-29?+29. ;)

Edit 2: Alternatively, if BYTE can not be 255, you can do inData(BYTE+1,PTR), where every byte in PTR has been incremented by 1.
« Last Edit: June 23, 2012, 01:04:28 pm by jacobly »

Offline squidgetx

  • Food.
  • CoT Emeritus
  • LV10 31337 u53r (Next: 2000)
  • *
  • Posts: 1881
  • Rating: +503/-17
  • rawr.
    • View Profile
Re: Bug Reports
« Reply #1744 on: July 06, 2012, 01:15:56 pm »
I think that app writing freezes if garbage collection needs to be done and/or at least not enough free space for the app

(What happened:

-Writing 0% freeze -> battery pull -> RAM clear -> repeat -> unarchive program (11k) -> changed name of executable -> rearchive -> prompt garbage collect -> garbage collect -> now it works )
« Last Edit: July 06, 2012, 01:27:01 pm by squidgetx »

Offline Runer112

  • Project Author
  • LV11 Super Veteran (Next: 3000)
  • ***********
  • Posts: 2289
  • Rating: +639/-31
    • View Profile
Re: Bug Reports
« Reply #1745 on: July 09, 2012, 11:01:03 pm »
Here's a bug that seems to have plagued Stefan Bauwens in the recent contest. :-\ It boils down to these three lines of code:

Code: [Select]
Buff(54)→°CA
#Realloc(°CA)
°A-2→°CE

The issue appears to be that, during the first pass, the A-theta variables haven't been assigned their proper addresses because °CA is not yet known. This then results in °CE being defined with a false value. I would say the bug isn't that °CE is defined with the incorrect value, but that an error isn't thrown. Pointers to variables should not be allowed to be used in constant definitions.
« Last Edit: July 09, 2012, 11:02:51 pm by Runer112 »

Offline Hayleia

  • Programming Absol
  • Coder Of Tomorrow
  • LV12 Extreme Poster (Next: 5000)
  • ************
  • Posts: 3367
  • Rating: +393/-7
    • View Profile
Re: Bug Reports
« Reply #1746 on: July 26, 2012, 03:39:16 am »
I have a stupid error.
See, each time the source is archived, the parser finds an "INVALID TOKEN" but not always at the same place. Sometimes it is 11113, sometimes it is 11727 ???

Usually, when I get an invalid token, unarchiving, recompiling, rearchiving and recompiling fixes the problem but there it doesn't.

(note that I am not talking about the "Out of memory" thing that obviously comes from the fact that I run out of memory)
I own: 83+ ; 84+SE ; 76.fr ; CX CAS ; Prizm ; 84+CSE
Sorry if I answer with something that seems unrelated, English is not my primary language and I might not have understood well. Sorry if I make English mistakes too.

click here to know where you got your last +1s

Offline Freyaday

  • The One And Only Serial Time Killing Catboy-Capoeirista-Ballerino
  • LV10 31337 u53r (Next: 2000)
  • **********
  • Posts: 1970
  • Rating: +128/-15
  • I put on my robe and pixel hat...
    • View Profile
Re: Bug Reports
« Reply #1747 on: July 31, 2012, 01:59:50 pm »
This has been plaguing me for a while.
Nymless crashes when you win, but only if compiled in 1.1.2
I caught it in Wabbit though.
Everything is in the .zip file.
« Last Edit: July 31, 2012, 02:00:44 pm by Freyaday »
In other news, Frey continues kicking unprecedented levels of ass.
Proud member of LF#N--Lolis For #9678B6 Names


I'm a performer at heart; I stole it last week.
My Artwork!

Offline Hayleia

  • Programming Absol
  • Coder Of Tomorrow
  • LV12 Extreme Poster (Next: 5000)
  • ************
  • Posts: 3367
  • Rating: +393/-7
    • View Profile
Re: Bug Reports
« Reply #1748 on: August 15, 2012, 03:48:50 pm »
I don't know if that was already reported but here is an easy to fix bug: there is a typo in "Invalid file use"
I own: 83+ ; 84+SE ; 76.fr ; CX CAS ; Prizm ; 84+CSE
Sorry if I answer with something that seems unrelated, English is not my primary language and I might not have understood well. Sorry if I make English mistakes too.

click here to know where you got your last +1s

Offline Runer112

  • Project Author
  • LV11 Super Veteran (Next: 3000)
  • ***********
  • Posts: 2289
  • Rating: +639/-31
    • View Profile
Re: Bug Reports
« Reply #1749 on: August 16, 2012, 09:51:37 pm »
Spot the problem!

Code: [Select]
p_TextStrApp:
.db __TextStrAppEnd-$-1
__TextStrAppLoop:
ld a,(hl)
or a
ret z
inc hl
B_CALL(_VPutMap)
jr nc,__TextStrAppLoop
__TextStrAppEnd:

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 #1750 on: August 16, 2012, 11:13:32 pm »
Took me a little while, but... no ret at the end?
"Most people ask, 'What does a thing do?' Hackers ask, 'What can I make it do?'" - Pablos Holman

Offline Freyaday

  • The One And Only Serial Time Killing Catboy-Capoeirista-Ballerino
  • LV10 31337 u53r (Next: 2000)
  • **********
  • Posts: 1970
  • Rating: +128/-15
  • I put on my robe and pixel hat...
    • View Profile
Re: Bug Reports
« Reply #1751 on: August 16, 2012, 11:31:11 pm »
A minor interface bug/optimization: the numbers for size continue to update after the first pass.
« Last Edit: September 04, 2012, 06:23:54 pm by Freyaday »
In other news, Frey continues kicking unprecedented levels of ass.
Proud member of LF#N--Lolis For #9678B6 Names


I'm a performer at heart; I stole it last week.
My Artwork!

Offline Freyaday

  • The One And Only Serial Time Killing Catboy-Capoeirista-Ballerino
  • LV10 31337 u53r (Next: 2000)
  • **********
  • Posts: 1970
  • Rating: +128/-15
  • I put on my robe and pixel hat...
    • View Profile
Re: Bug Reports
« Reply #1752 on: September 04, 2012, 06:13:42 pm »
I've got a nasty one.
I tried this:

GetCalc("LLIST",11)

Which generated an OS list of eleven elements.
The list seemed to be fine, and contained all zeroes according to the homescreen.
And then I deleted it.
I got a BSOD.
I took the battery out and let the capacitors discharge, and the calc was back to normal, albeit with cleared RAM.
« Last Edit: September 04, 2012, 06:14:02 pm by Freyaday »
In other news, Frey continues kicking unprecedented levels of ass.
Proud member of LF#N--Lolis For #9678B6 Names


I'm a performer at heart; I stole it last week.
My Artwork!

Offline Runer112

  • Project Author
  • LV11 Super Veteran (Next: 3000)
  • ***********
  • Posts: 2289
  • Rating: +639/-31
    • View Profile
Re: Bug Reports
« Reply #1753 on: September 04, 2012, 06:44:04 pm »
This is the effect of neither the OS nor Axe properly handling lists and matrices when creating arbitrary variables. Lists and matrices don't have the normal 2-byte size header that programs and appvars do; lists have a 2-byte header with the number of 9-byte elements, and matrices have two 1-byte entries for number of elements in each dimension. However, the arbitrary variable creation B_CALL doesn't handle lists or matrices in any special way, so the OS only allocates as many bytes as the size argument you pass to it and writes that value to the variable header. So GetCalc("L1",10) would cause the OS to allocate 10 bytes in RAM (+2 bytes for the header) and write $000A to the header. However, after it's created, if the OS subsequently looks at it, it will think it's a list with 10 elements, and thus much larger. Deleting this will result in deleting more memory than was allocated, causing your crash.

A special case for lists and matrices could be added to Axe, but I think that would add too much size for such rarely-created variable types. You can correct it manually yourself fairly easily though, like this:

Code: [Select]
!If GetCalc("L₂",N*9)→L
.Error
End
N→{L-2}ʳ

Or, optimized:
EDIT: calc84maniac says this may be unsafe, so for the costs of 2 bytes, perhaps just skip it.

Code: [Select]
!If N→{GetCalc("L₂",N*9)→L-2}ʳ+1
.Error
End
« Last Edit: September 04, 2012, 10:20:56 pm by Runer112 »

Offline Freyaday

  • The One And Only Serial Time Killing Catboy-Capoeirista-Ballerino
  • LV10 31337 u53r (Next: 2000)
  • **********
  • Posts: 1970
  • Rating: +128/-15
  • I put on my robe and pixel hat...
    • View Profile
Re: Bug Reports
« Reply #1754 on: September 04, 2012, 06:49:05 pm »
Thanks, Runer. There was some discussion about whether or not this was actually a bug. >.>
At least now a decision has been reached about what to do with it.
In other news, Frey continues kicking unprecedented levels of ass.
Proud member of LF#N--Lolis For #9678B6 Names


I'm a performer at heart; I stole it last week.
My Artwork!