gbadev.org forum archive

This is a read-only mirror of the content originally found on forum.gbadev.org (now offline), salvaged from Wayback machine copies. A new forum can be found here.

Coding > libgba ANSI console bloat

#58102 - wintermute - Thu Oct 20, 2005 9:18 pm

In this post, tepples wrote:

Problem that I've found is that if you bring in stdio, it appears that you bring in the floating-point version of the printf engine (printf, fprintf, sprintf) and not the integer version (iprintf, fiprintf, siprintf). This brings in the whole 40 KB floating-point emulation library, which is significant especially on GBA. At least consoleInit() from libgba has this problem, and for this reason my GBAMP compatible demos will probably use something lightweight such as AGBTTY and not the libgba/libnds built-in console code.


Ever consider reporting these things?

http://www.devkitpro.org/bugs.shtml

#58268 - tepples - Sat Oct 22, 2005 1:57 am

I considered it, but I thought better of it because as dovoto implied, it would probably have been resolved invalid. Where I come from (MozillaZine forums), it's polite to discuss misbehavior on a forum first, seeing if others can reproduce the problem or even think it's important, so that I don't waste maintainers' time by reporting intended behavior as a bug.

Here goes nothing...

(And now for something completely different)

I wonder... how much speed can I expect out of this driver?
_________________
-- Where is he?
-- Who?
-- You know, the human.
-- I think he moved to Tilwick.

#58273 - wintermute - Sat Oct 22, 2005 2:56 am

Discussion on a forum is fine if the forum in question is the primary means of support for the item under discussion. Unfortunately the other developers and I seldom have the time to work through all the messages here looking for things that may be related to devkitARM and the associated libraries so we often miss some of the problems that are mentioned.

Dovoto was just poking fun because we removed the broken printing functions and replaced them with proper stdio support. There are many reasons for going down that route, not least the ease of porting text based apps and eventually more standard file IO handling.

The floating point thing with the console code was due to using sscanf to decipher the ansi escape sequences. This has been replaced with the integer equivalent in CVS and brings the ansi console example down to 26k from around 42k. It can probably be dropped a little further by using custom code to extract the ansi sequence parameters but we'll leave it at that for the time being.