# Re: \[PATCH\]\[FBDEV\]: fb\_putcs() and fb\_setfont() methods

- From: Geert Uytterhoeven \<geert@linux-m68k.org\>
- Date: 2003-01-08 10:44:50 
- List: linux-fbdev
- Page: https://ratatoskr.run/linux-fbdev/2003/01/517983
- Thread: https://ratatoskr.run/lkml/2003/01/516885/t.md

```text
On Tue, 7 Jan 2003, James Simmons wrote:
> > Why? (a) only those which will use putcs, and (b) I see no 512 chars limit
> > anywhere in new code. And in old code it is there only because of passed
> > data are only 16bit, not 32bit wide... With simple search&replace you can
> > extend it to any size you want, as long as you'll not use sparse font
> > bitmap.
> 
> The current "core" console code screen_buf layout is designed after VGA 
> text mode. 16 bits which only 8 bits are used to represent a character, 9 
> if you have high_fonts flag set. The other 8,7 bits are for attributes. 
> This is very limiting and it does effect fbcon.c :-( I like to the console
> system remove these awful limitation in the future. This why I like to see 
> fbdev drivers avoid touching strings from the console layer.

Please note that Tony's new accel_putcs() code uses __u32 to pass the character
indices.  So it's not limited to 256/512 characters per font. Fonts can be as
large as you want. Sparse fonts can be handled as well, if accel_putcs() takes
care of the conversion from sparse character indices to dense character
indices.

His code can be viewed as a way to do multiple monochrome to color expansions
with one single call, using a predefined table of patterns. Quite generic,
unless you want to have multi-color fonts later :-)

Gr{oetje,eeting}s,

						Geert

--
Geert Uytterhoeven -- There's lots of Linux beyond ia32 -- geert@linux-m68k.org

In personal conversations with technical people, I call myself a hacker. But
when I'm talking to journalists I just say "programmer" or something like that.
							    -- Linus Torvalds



-------------------------------------------------------
This SF.NET email is sponsored by:
SourceForge Enterprise Edition + IBM + LinuxWorld = Something 2 See!
http://www.vasoftware.com
```
