dev builds
themes manual
device status forums
mailing lists
IRC bugs
dev guide

Rockbox mail archive

Subject: Re: [PATCH] loadable fonts finally fixed

Re: [PATCH] loadable fonts finally fixed

From: Greg Haerr <>
Date: Sun, 15 Sep 2002 21:53:56 -0600

: -- with the large fonts menus need to scroll too (the large fonts look
: GREAT by the way)

Yes. The current text display API isn't very helpful to
automate this stuff. I suggest that the lcd_puts and/or
lcd_putsxy automatically set up a string for scrolling
if/when the string is wider than the display width. In this
way, the applications programmers don't need to special-case
everything like the current code is written.

If someone decides to do this, I suggest we move to a new,
fnt_puts (or tputs) API, for a couple of reasons. First, the font
code isn't really lcd driver code. The other reason
is that lcd_puts doesn't take a 'font' argument and lcd_putsxy
does... It's goofy.

: -- all the space icons have dots. (I assume to give them width, but
: this is kind of annoying

I don't know what you mean here.. There shouldn't be
any dots added by my font code.

: -- the game still use the built in fonts. The debug screen and others
: should use these fonts too (maybe the menus?)

This is likely that they need to execute an lcd_setfont(FONT_UI),
which will cause lcd_puts to use the loaded font. The
default is FONT_SYSFIXED, which is the compiled-in font.

The required fix here is that each application that takes over
the screen needs to call a single lcd_setfont (should be renamed
fnt_setfont) that sets the font for all lcd_puts and lcd_putsxy

: -- the built in font is quite ugly (we all know this)

Yes, X5x8 has to go. Anybody have a 8 pixel high font
in bdf format? Where did the original one come from??

: -- on larger fonts, scrolling does not work in the directory browser
: for items that are not "long enough"

Yes, the tree and menu code needs to slightly rethink the
fact that now any height font may be loaded.

: -- nice idea! what about a font browser selection menu (now we have
: .eq , .wps , and .fnt files (make it so my nearly blind granpappy can
: see the fonts without having to load a new font on the computer)

My current font loader will only allow a single font to be
loaded, but this will be rectified when I add a font_free() routine,
which I'll add to my list. Of course, there's nothing wrong
with loading multiple fonts sometime... (the only potential issue
here is we have no malloc() so we're using a fixed-size
static buffer for all font loads... I removed the multiple-font
load capability in the last debug session; I'll put it back)

: -- quick screens (Fx/ON + buttons) are impossible to read with large
: fonts (use the built in font here)

Another idea here might be to allow two fonts to be loaded
(for language reasons): one regular-sized and one large...
This needs more thinking in the font browser selection menu.
(which of course should show the font before allowing the user
to select it)

: -- wormlet menu screen loos improper with large fonts

lcd_setfont will fix this

: :
: that is all for now. keep up the incredible work.

Thanks. It's nice to finally have something working.


Received on 2002-09-16

Page template was last modified "Tue Sep 7 00:00:02 2021" The Rockbox Crew -- Privacy Policy