Commit Graph

34 Commits

Author SHA1 Message Date
Timo Teräs
67dc7b21ca fbsplash: fix regression from e4fa7b7
commit e4fa7b7 (limit progress bar flicker) made the progress bar
counter unsigned causing i < 0 to never come true.

Signed-off-by: Timo Teräs <timo.teras@iki.fi>
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2012-10-17 19:39:34 +02:00
Linus Walleij
6d463de46b fbsplash: support non-RGB565 pixels in 16-bit mode
function                                             old     new   delta
fbsplash_main                                        953     989     +36
fb_pixel_value                                        80     110     +30

Signed-off-by: Linus Walleij <triad@df.lth.se>
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2012-09-06 16:52:31 +02:00
Yin Kangkai
3ac066c256 fbsplash: use line_length instead of xres * bytes_per_pixel
In some system (e.g. my "strange" device), line_length is not equal xres *
bytes_per_pixel, so we need to use line_length in scr_fix to mmap and draw
rectangle etc.

My "strange" device output this:
bytes_per_pixel: 4
xres: 600, yres: 1024
yoffset: 0, xoffset: 0, line_length: 2432
G.addr: b74da000

Signed-off-by: Yin Kangkai <kangkai.yin@intel.com>
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2012-02-29 18:07:59 +01:00
Peter Korsgaard
cd06e06eee fbsplash: support 8bit mode
Fake truecolor support using a RGB:332 palette.

function                                             old     new   delta
fb_setpal                                              -     172    +172
fbsplash_main                                        920     953     +33
fb_pixel_value                                        50      80     +30
fb_write_pixel                                        47      51      +4
------------------------------------------------------------------------------
(add/remove: 1/0 grow/shrink: 3/0 up/down: 239/0)             Total: 239 bytes

Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2011-10-17 05:31:52 +02:00
Peter Korsgaard
e4fa7b7965 fbsplash: limit progress bar flicker
Progress bar updates flicker quite a bit on slow hw / high resolutions
as the background is completely cleared before the new progress bar
position is drawn on top.

Improve it by first drawing the progress bar and then only fill the
remaining rows with the background.

function                                             old     new   delta
fb_drawprogressbar                                   444     429     -15

Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2011-10-17 04:35:23 +02:00
Denys Vlasenko
66426760be *: remove "Options:" string from help texts
function                                             old     new   delta
packed_usage                                       28706   28623     -83

Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2011-06-05 03:58:28 +02:00
Pere Orga
5bc8c005a8 move remaining help text from include/usage.src.h
Signed-off-by: Pere Orga <gotrunks@gmail.com>
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2011-04-11 03:29:49 +02:00
Nuno Lucas
0e89fd9c39 fbsplash: Add support for 24 and 32 bit color depth
function                                             old     new   delta
fb_drawprogressbar                                   372     447     +75
fb_pixel_value                                         -      50     +50
fb_write_pixel                                         -      47     +47
fbsplash_main                                        889     920     +31
fb_drawfullrectangle                                 101     131     +30
------------------------------------------------------------------------------
(add/remove: 2/0 grow/shrink: 3/0 up/down: 233/0)             Total: 233 bytes

Signed-off-by: Nuno Lucas <ntlucas@gmail.com>
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2011-03-28 15:30:59 +02:00
Dan Fandrich
07078c2966 Let fbsplash display images even when a second buffer is active
If a previous application uses double buffering and makes the
second buffer visible, fbsplash's images (written to the first
buffer) otherwise won't be visible.

Signed-off-by: Dan Fandrich <dan@coneharvesters.com>
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2011-02-05 03:34:52 +01:00
Denys Vlasenko
0ef64bdb40 *: make GNU licensing statement forms more regular
This change retains "or later" state! No licensing _changes_ here,
only form is adjusted (article, space between "GPL" and "v2" and so on).

Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2010-08-16 20:14:46 +02:00
Denys Vlasenko
7783248eaa *: s/xatoi_u/xatoi_positive/g - I got bored of mistyping xatoi_u as xatou_i
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2010-08-12 14:14:45 +02:00
Denys Vlasenko
d9a3e89f50 consolidate ESC sequences
function                                             old     new   delta
bell                                                   2       -      -2
CMdown                                                 2       -      -2
Ceos                                                   4       -      -4
Ceol                                                   4       -      -4
CMup                                                   4       -      -4
SOs                                                    5       -      -5
SOn                                                    5       -      -5
CMrc                                                   9       -      -9

Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2010-05-16 23:42:13 +02:00
Denys Vlasenko
814da220a5 fbsplash: reinstate drawing of over/undersized images; shrink
Based on the patch by Nuno Lucas <ntlucas@gmail.com>

function                                             old     new   delta
fbsplash_main                                        938     864     -74

Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2010-03-14 23:59:54 +01:00
Denys Vlasenko
10544a8410 compat and warning fixes
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2010-02-09 00:26:10 +01:00
Denys Vlasenko
a7ccdeef39 libbb: added xfdopen_for_read/write
function                                             old     new   delta
xfdopen_helper                                         -      40     +40
logdir_open                                         1163    1184     +21
process_stdin                                        433     443     +10
xfdopen_for_write                                      -       9      +9
doCommands                                          2465    2474      +9
patch_main                                          1214    1222      +8
bbunpack                                             457     465      +8
xfdopen_for_read                                       -       7      +7
scan_tree                                            258     262      +4
xstrtoul_range_sfx                                   230     231      +1
sendmail_main                                        957     955      -2
passwd_main                                         1027    1023      -4
parse                                                969     964      -5
test_main                                            253     247      -6
sed_main                                             655     649      -6
dos2unix_main                                        437     429      -8
fbsplash_main                                        950     938     -12
handle_dir_common                                    371     354     -17
expand_vars_to_list                                 2197    2169     -28
update_passwd                                       1275    1246     -29
------------------------------------------------------------------------------
(add/remove: 3/0 grow/shrink: 7/10 up/down: 117/-117)           Total: 0 bytes

Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2009-11-15 23:28:11 +01:00
Vladimir Dronnikov
6eaac025a1 fbsplash: allow compressed image files
Signed-off-by: Vladimir Dronnikov <dronnikov@gmail.com>
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2009-11-07 04:14:50 +01:00
Denys Vlasenko
7bb346f23c *: use {i,u}toa() where appropriate
function                                             old     new   delta
startservice                                         377     363     -14
setari_u                                              54      40     -14
ash_main                                            1375    1361     -14
------------------------------------------------------------------------------
(add/remove: 0/0 grow/shrink: 0/3 up/down: 0/-42)             Total: -42 bytes

Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2009-10-06 22:09:50 +02:00
Bernhard Reutner-Fischer
7307e06122 - bail out if screen resolution does not match PPM dimensions.
Previously a 640x480 PPM on an e.g. 720x400 console would just segfault when
  reading the lines. While this bug should perhaps be fixed to handle such cases
  properly we just exit gracefully until somebody is willing to take care of it
  properly.
2009-02-18 15:28:43 +00:00
Bernhard Reutner-Fischer
8dcb33c3eb - document ppm header and skip whitespace 2009-02-18 15:13:05 +00:00
Bernhard Reutner-Fischer
051fdb9e7a - PPMs can have comments in the header.
Thanks to Denys for pointing that out. (~+7b)
2009-02-16 12:36:50 +00:00
Bernhard Reutner-Fischer
4efcec9378 - misc untested shrinkage:
$ ./scripts/bloat-o-meter _bb_un.oorig busybox_unstripped
function                                             old     new   delta
fbsplash_main                                        595     985    +390
fb_drawimage                                         493       -    -493
------------------------------------------------------------------------------
(add/remove: 0/1 grow/shrink: 1/0 up/down: 390/-493)         Total: -103 bytes

$ size miscutils/fbsplash.o*
   text           data     bss     dec     hex filename
   2019              0       0    2019     7e3 miscutils/fbsplash.o.oorig
   1857              0       0    1857     741 miscutils/fbsplash.o.new
2009-02-14 12:36:16 +00:00
Bernhard Reutner-Fischer
dd76b79962 - update Michele address 2009-01-27 12:56:33 +00:00
Denis Vlasenko
084266ed52 fix several problems with config parser:
a bug where it underflows the string
 a bug where it never frees parser_t struct
make read_config() return 0 if parser is NULL,
 make config_close() accept and ignore NULL parser -
 eliminates many if() blocks
reverse the sense of parser bit flags - negative flags
 are harder to grok.
hexdump: revert the change to use config parser, it is BIGGER
 and also requires additional quirks in parser
*: explicitly use PARSER_NORMAL instead of 0

function                                             old     new   delta
login_main                                          1575    1596     +21
config_close                                          18      29     +11
bbunpack                                             383     391      +8
qgravechar                                           106     109      +3
rtnl_tab_initialize                                  121     117      -4
expand                                              1697    1693      -4
man_main                                             717     712      -5
nameif_main                                          674     668      -6
hexdump_main                                         597     591      -6
read_config                                          217     209      -8
dnsd_main                                           1478    1470      -8
sysctl_main                                          203     189     -14
config_open2                                          44      25     -19
make_device                                         1177    1141     -36
config_read                                          597     549     -48
------------------------------------------------------------------------------
(add/remove: 0/0 grow/shrink: 4/11 up/down: 43/-158)         Total: -115 bytes
2008-07-26 23:08:31 +00:00
Denis Vlasenko
0f99d49ae6 *: conversion to config parser
function                                             old     new   delta
config_read                                          540     597     +57
config_open2                                          41      44      +3
rtnl_rtprot_initialize                                70      66      -4
rtnl_rttable_initialize                               78      73      -5
rtnl_rtscope_initialize                               88      83      -5
rtnl_rtrealm_initialize                               48      43      -5
rtnl_rtdsfield_initialize                             48      43      -5
process_module                                       566     560      -6
bbunpack                                             391     383      -8
rtnl_tab_initialize                                  279     121    -158
------------------------------------------------------------------------------
(add/remove: 0/0 grow/shrink: 2/8 up/down: 60/-196)          Total: -136 bytes
2008-07-24 23:38:04 +00:00
Denis Vlasenko
5415c856ea libbb: [x]fopen_for_{read,write} introduced and used.
(by Valdimir)

function                                             old     new   delta
config_open2                                           -      41     +41
config_read                                          507     542     +35
find_pair                                            169     187     +18
fopen_for_write                                        -      14     +14
fopen_for_read                                         -      14     +14
find_main                                            406     418     +12
xfopen_for_write                                       -      10     +10
xfopen_for_read                                        -      10     +10
popstring                                            134     140      +6
parse_inittab                                        396     401      +5
next_token                                           923     928      +5
pack_gzip                                           1659    1661      +2
bb__parsespent                                       117     119      +2
fallbackSort                                        1719    1717      -2
evalvar                                             1376    1374      -2
qrealloc                                              36      33      -3
...
...
...
...
singlemount                                         4579    4569     -10
process_stdin                                        443     433     -10
patch_main                                          1111    1101     -10
ifupdown_main                                       2175    2165     -10
file_action_grep                                      90      80     -10
uuidcache_init                                       649     637     -12
hush_main                                            797     785     -12
read_config                                          230     217     -13
dpkg_main                                           3835    3820     -15
read_line_input                                     3134    3110     -24
sysctl_main                                          232     203     -29
config_open                                           40      10     -30
WARN_BAD_LINE                                         44       -     -44
login_main                                          1714    1575    -139
------------------------------------------------------------------------------
(add/remove: 5/1 grow/shrink: 8/74 up/down: 174/-737)        Total: -563 bytes
2008-07-21 23:05:26 +00:00
Denis Vlasenko
a60f84ebf0 *: rename ATTRIBUTE_XXX to just XXX. 2008-07-05 09:18:54 +00:00
Denis Vlasenko
7049ff8696 whitespace fixes. no code changes 2008-06-25 09:53:17 +00:00
Denis Vlasenko
1f228985b2 whitespace fixes. no code changes 2008-04-22 00:16:29 +00:00
Denis Vlasenko
7f8f0fafdb fbsplash: more compact support for named pipes + EOF scenario
function                                             old     new   delta
fbsplash_main                                       1121    1043     -78
2008-04-04 20:38:49 +00:00
Denis Vlasenko
a38ba59cc3 fbsplash: move to /sbin; small shrink
function                                             old     new   delta
fb_drawprogressbar                                   413     423     +10
fbsplash_main                                       1146    1121     -25
2008-03-28 11:17:35 +00:00
Denis Vlasenko
72b3442aeb fbsplash: support this usage:
mkfifo cmd_pipe
fbsplash -f cmd_pipe .... &
...
echo 33 >cmd_pipe
...
echo 66 >cmd_pipe

Code size: fbsplash_main +116 bytes :(
2008-03-27 13:14:29 +00:00
Denis Vlasenko
11b9f26610 fbsplash: fix broken handling of buffered case:
"{echo 45; echo 33; } | { sleep 1; fbsplash -f - ...; }"

function                                             old     new   delta
fb_drawprogressbar                                     -     413    +413
xmalloc_fgetline                                       -      46     +46
xmalloc_reads                                        184     183      -1
xmalloc_getline                                       46       -     -46
fbsplash_main                                       1472    1030    -442
------------------------------------------------------------------------------
(add/remove: 2/1 grow/shrink: 0/2 up/down: 459/-489)          Total: -30 bytes
   text    data     bss     dec     hex filename
 801181     641    7380  809202   c58f2 busybox_old
 801151     641    7380  809172   c58d4 busybox_unstripped
2008-03-26 20:06:24 +00:00
Denis Vlasenko
25a9c17f55 fbsplash: cosmetic comment and Config text fixes; rename .ini -> .cfg 2008-03-26 15:12:11 +00:00
Denis Vlasenko
c6dbb85c9e fbsplash: shrink, better help text; inifile cannot specify image now;
image can come from stdin

function                                             old     new   delta
packed_usage                                       23872   23932     +60
static.param_names                                     -      57     +57
fbsplash_main                                       1525    1472     -53
static.param_value                                   100       -    -100
------------------------------------------------------------------------------
(add/remove: 1/1 grow/shrink: 1/1 up/down: 117/-153)          Total: -36 bytes
   text    data     bss     dec     hex filename
 801202     641    7380  809223   c5907 busybox_old
 801181     641    7380  809202   c58f2 busybox_unstripped
2008-03-26 14:57:49 +00:00