Allegro.cc - Online Community

Allegro.cc Forums » Allegro Development » Allegro current issues/problems

This thread is locked; no one can reply to it. rss feed Print
 1   2 
Allegro current issues/problems
Evert
Member #794
November 2000
avatar

Ok, I'd like to hear about problems, bugs and other issues people have encountered with Allegro, the reason being that I'd like to have a clear idea of what needs to be fixed for 4.2.

I'm not looking for major feature requests or suggestions like `remove the GUI from the core distribution' or `add PNG support' because that's not going to happen for 4.2. I'd like to hear about bugs, glitches, unexpected behavior, or inconsistencies in the documentation - most preferably issues with 4.1.16 rather than an earlier version.

I know about the blitting error Richard Phipps reported last week and it's already on the list of things to look into. Spellcaster's keyboard-layout detector is another example of something I'd personally like to look into.

So, even if they've been mentioned here before, please report bugs and problems!

Richard Phipps
Member #1,632
November 2001
avatar

Joypad stick and num button detection is borked in 4.0.3, but seems to be fixed in the later WIP versions.

ImLeftFooted
Member #3,935
October 2003
avatar

This ones kind of half and half, so I'll say it anyway.

Support for an arbitrary amount of timers.

Gideon Weems
Member #3,925
October 2003

Regarding documentation, I have a few issues with some entries. I'll post soon. I can't think of any bugs at the moment.

Evert, I read your post to the mailing list, today. It's exciting to see an aggressive schedule for the 4.2 release. Things are really picking up--even I can see that.

-- edit --

Okay, most of the problems I notice come from the docs, because that's where I spend my time. I've noticed a few entries that could use some discussion--minor things, mostly:

  • Keyboard->key: Mention of key[0]. Kitty Cat and I talked a bit about this once (key[0], not adding a doc reference)

  • Bitmap: In the current description of sub-bitmaps: "Make sure not to destroy a bitmap before all of its sub-bitmaps..." Looking at the source, it seems entirely okay to destroy a bitmap that has a sub-bitmap--as long as the bitmap being destroyed is also a sub-bitmap. Am I correct?

  • Text->textout_right_ex: I would clarify "right edge" as being exclusive, not inclusive.

  • Text->textprintf_ex: Merely describing the potential length limit as "extremely long" doesn't sit right with me. Checking the source, the buffer seems to be 512 chars. How about a mention of this in the docs, something like, "At the time of this writing, this limit is 512"? Or, if the limit is likely never to change, just mention 512.

  • Available: Naming the example app node "Available Allegro examples" is ambiguous when the doc format references only the first word (i.e. the info viewer). "Examples Programs" would be a more appropriate title, in my opinion.

  • The test app(s) output doesn't reflect the new textout_ex family. For example, allegro/tests/text.exe outputs that it tests the textout functions, when it actually uses the textout_ex functions.

I've made all these changes to my copy of Allegro, at version 4.1.15. I never submitted them because I figured it wouldn't matter much, and I'm not in an authoritative position, so it might seem annoying to submit such small changes. Anyway, that's it.

Matthew Leverton
Supreme Loser
January 1999
avatar

How about the fourth button mouse patch for windows that I posted to the AD list on 24-Apr-03 and 4-May-04? :'(

Evert
Member #794
November 2000
avatar

Quote:

Support for an arbitrary amount of timers.

Arbitrary may be a bit too much to ask for; remember that they must all be called from a single thread. At some point, it would make more sense to use different threads than adding more timer function, I think. Still, increasing the limit may not be such a bad idea at all.

Quote:

How about the fourth button mouse patch for windows that I posted to the AD list on 24-Apr-03 and 4-May-04?

Sounds like a good idea - unless you want to repost it in june 2005? ;)
EDIT: There was some discussion about the patch in 2003. At the time, Eric objected because of possible portability issues (it should then also work in *nix and MaxOS X, but it's not clear how). Another issue could be with mice having more than 4 buttons: we'd have to support those too, or justify why we don't. Still, I'll bump the post and see what the current ideas on the issue are.

EDIT2:

Quote:

I've made all these changes to my copy of Allegro, at version 4.1.15. I never submitted them because I figured it wouldn't matter much, and I'm not in an authoritative position, so it might seem annoying to submit such small changes. Anyway, that's it.

Yes, please post a patch if you can! Some of those look quite sensible.

Quote:

How about a mention of this in the docs, something like, "At the time of this writing, this limit is 512"? Or, if the limit is likely never to change, just mention 512.

Allegro's buildin buffer limits are deliberately not mentioned in the docs because they may change and hunting them down in the docs is a pain. At least, that's the reason I once heard for it. Might be worth bringing up again though, and of course, eliminating arbitrary limits would be even better. :)

Matthew Leverton
Supreme Loser
January 1999
avatar

Quote:

EDIT: There was some discussion about the patch in 2003.

Well, I must have missed the original discussion. Unless I participated in it and have forgotten about that as well. (Which is quite likely!)

Quote:

At the time, Eric objected because of possible portability issues (it should then also work in *nix and MaxOS X, but it's not clear how).

If other OS's don't support four buttons, then I don't see how that should limit the Windows port. That's like saying because DOS doesn't support hardware acceleration, neither should Windows.

The argument that "not all people have four button mice", is not good as well. Not all people have hardware accelerated equipped machines. Not all people have sound cards, etc.

We aren't talking about additional functionality, we are talking about providing more complete support for what already is implemented.

Quote:

Another issue could be with mice having more than 4 buttons: we'd have to support those too, or justify why we don't. Still, I'll bump the post and see what the current ideas on the issue are.

AFAIK, the structure currently being used supports four buttons. So, we should support four buttons. We cannot support more than four, because that structure supports four. Seems quite simple...

Edit: I just browsed my archives, and saw there was indeed discussion!

And, I think all the arguments against supporting a fourth button are senseless. :) Let's be realistic here. A programmer knows that a fourth mouse button is not the norm. So if he decides to use it, he will do so sparingly - as a bonus. I am entirely unconvinced by the con arguments.

Maybe I'm just being cynical, but if we cannot agree to add support for a fourth mouse button, the future of A5 is dead.

But let's not let this thread become a pro/con argument for a button. ;)

Gideon Weems
Member #3,925
October 2003

Quote:

Allegro's buildin buffer limits are deliberately not mentioned in the docs because they may change and hunting them down in the docs is a pain. At least, that's the reason I once heard for it. Might be worth bringing up again though, and of course, eliminating arbitrary limits would be even better.

I see your point. Would you say it's fair to assume that the buffer will never decrease in size? If this is the case, I think it would be worth mentioning in the docs the minimum buffer length as 512. Any sort of concrete value is better than "extremely long".

Surt
Member #273
April 2000
avatar

Or have documented constants for the buffer lengths, that way the user can find the exact size of ther buffer, but the docs need not describe that size.

---
--
-

Gideon Weems
Member #3,925
October 2003

Yes, that would be the best solution. Though, all this talk has made me realize how nice it is to have source code available: Pretty much anyone can find the answer in a minute.

phate
Member #2,235
April 2002
avatar

Unless of course you only have the binary releases like those for borland compilers (pieces of krap with a k)

-----
For my next trick... ah fark it.
[Website][Twitter]

Hearty Games
Member #4,906
August 2004

Is there any plan to rewrite the demo or create a new demo?

The current demo is nice but the code is really a bit too complex for most beginners to learn from. The demo.c source isn't as readable as the examples are. The source refers to the meteor sprites as "aliens".

Maybe even just a simple well-written pong game included with the Allegro distribution would help a lot of newbies. It could demonstrate the basics like blitting and screen updating and timers all in one small program so beginners can see a very basic game structure using Allegro's most essential functions. It might go a long way toward eliminating the simple questions that are asked here over and over again. I know there are some very well written games in the depot that beginners can learn from but maybe it would be helpful to include such a game with the Allegro?

Just an idea 8-)

And, yes, I would be happy to go to work on such a demo if the devs would be interested in this idea. :)

---

Richard Phipps
Member #1,632
November 2001
avatar

I think that's a great idea. :)
If you only used simple primitives you could have say, pong, snake, tetris and that could let people learn as the games increase in complexity.

Hearty Games
Member #4,906
August 2004

(Edited) I see your point. My apologies. :)

---

Richard Phipps
Member #1,632
November 2001
avatar

I agree, but please start a new thread for this. I don't want to derail this equally valuable thread on allegro problems. :)

Evert: Did you also note the sound configuration problems I mentioned some time ago?
[url http://www.allegro.cc/forums/view_thread.php?_id=384996]
(It ignores any setting up I do in code in favour of the allegro .cfg file, and if that doesn't exist I can't use anything but the default settings. Allegro 4.0.3)

Evert
Member #794
November 2000
avatar

Quote:

Is there any plan to rewrite the demo or create a new demo?

I guess there is now... ;)

Quote:

And, yes, I would be happy to go to work on such a demo if the devs would be interested in this idea.

I am. I think this was discussed very briefly recently and I don't think anyone objected, at least not more strongly than as in `I'm not doing it'.
I do like some of the things in the current demo, so my suggestion would be to just make a new one and include both. Maybe that's too conservative though, and we can just add the current demo to the depot here as `Allegro 4 demo game' and create a new one. If you're interested in doing that, I say great! Although, it's probably a good idea to announce this on the mailinglist too.

Do you want to write a new demo game in time for the Allegro 4.2 release? If that is so, then time may be an issue...

Hmm... this could be a nice idea for a competition! Write a game that has to meet some pre-set criterial (uses only standard documented Allegro features in 4.2, no addon libraries, data not exceeding 1MB (say)) and the winner gets his game shipped with the new version of Allegro. ;D I like this idea...

Richard Phipps
Member #1,632
November 2001
avatar

A-Demo-Hack! Getit? :P

Should be simple, if people can motivate themselves.. ;D

23yrold3yrold
Member #1,134
March 2001
avatar

I have my Tetris game and my Asteroids game. Both are finished, engine-wise, and could be expanded a bit to demonstrate certian functionalities. Though I should probably remove the advanced stuff, like the template particle system, and infinite scrolling area (keep it to one screen). Plus I need to do actual stuff like menus and such. :) I could also clean up my Gem Findy game from Blitzhack, which is a good simple tilemap demo. I'll contribute them if you want.

We could have a "games" folder alongside the "examples" folder. Ask DanielH if you can steal some of the simple games off AGDN (Pac-Man, Pong). :)

--
Software Development == Church Development
Step 1. Build it.
Step 2. Pray.

Hearty Games
Member #4,906
August 2004

Sounds great, Evert :)

Yes, I imagine it might be difficult to put a very good demo together in time for 4.2. But a competition sounds like a neat idea. I bet we'll wind up with quite a few great potential demos to choose from.

I'll start working on my entry, but I'm sure someone will beat me to it!

(edit) Already beaten ;D

---

Gideon Weems
Member #3,925
October 2003

Great idea, one that should have been done a while ago!

Quote:

Write a game that has to meet some pre-set criterial (uses only standard documented Allegro features in 4.2, no addon libraries, data not exceeding 1MB (say))

Of course, the new demo should also have to incorporate the AUTHORS list.

Hearty Games
Member #4,906
August 2004

Quote:

Of course, the new demo should also have to incorporate the AUTHORS list.

Good point. I'm sure everyone would agree that including the authors list should be mandatory.

---

Gideon Weems
Member #3,925
October 2003

Quote:

Yes, please post a patch if you can! Some of those look quite sensible.

Thanks. I just posted two patches to the AD mailing list. I just realized that the buffer length of 512 was mentioned. I supposed that can be edited, if need be.

-- EDIT --

I take that back. Since one of the patches is larger than 100KB, it can't be posted there. I'm posting it here, instead. See below for the other file.

Evert
Member #794
November 2000
avatar

Quote:

Good point. I'm sure everyone would agree that including the authors list should be mandatory.

That would be one of the requirements, yes. Other things that come to mind are the use of a significant portion of Allegro's capabilities (the demo does a lot with rotating sprites and some blending), several update methods supported, use of a timer to regulate game speed, and not to forget: C code.
Anyway, I think this is best discussed in a new thread. I'll think on it a bit and discuss it to decide what the exact requirements would be.

Peter Wang
Member #23
April 2000

One more: nothing legally dubious.

EDIT:
From another thread: touchscreens (and tablets, I think) don't work in Windows (and probably other OSes too). There was a post about this on [AL] too, recently.

Gideon Weems
Member #3,925
October 2003

Here's the other patch.

 1   2 


Go to: