Ignore:
Timestamp:
Jan 1, 2014, 12:47:38 AM (10 years ago)
Author:
Bruno Cornec
Message:
  • Update mindi-busybox to 1.21.1
File:
1 edited

Legend:

Unmodified
Added
Removed
  • branches/3.2/mindi-busybox/util-linux/fbset.c

    r2725 r3232  
    1212 *     Geert Uytterhoeven (Geert.Uytterhoeven@cs.kuleuven.ac.be)
    1313 */
     14
     15//usage:#define fbset_trivial_usage
     16//usage:       "[OPTIONS] [MODE]"
     17//usage:#define fbset_full_usage "\n\n"
     18//usage:       "Show and modify frame buffer settings"
     19//usage:
     20//usage:#define fbset_example_usage
     21//usage:       "$ fbset\n"
     22//usage:       "mode \"1024x768-76\"\n"
     23//usage:       "    # D: 78.653 MHz, H: 59.949 kHz, V: 75.694 Hz\n"
     24//usage:       "    geometry 1024 768 1024 768 16\n"
     25//usage:       "    timings 12714 128 32 16 4 128 4\n"
     26//usage:       "    accel false\n"
     27//usage:       "    rgba 5/11,6/5,5/0,0/0\n"
     28//usage:       "endmode\n"
    1429
    1530#include "libbb.h"
     
    257272        p = token[1];
    258273        i = index_in_strings(
    259             "geometry\0timings\0interlaced\0double\0vsync\0hsync\0csync\0extsync\0",
     274            "geometry\0timings\0interlaced\0double\0vsync\0hsync\0csync\0extsync\0rgba\0",
    260275            token[0]);
    261276        switch (i) {
     
    328343//bb_info_msg("EXTSYNC[%s]", p);
    329344            break;
     345        case 8: {
     346            int red_offset, red_length;
     347            int green_offset, green_length;
     348            int blue_offset, blue_length;
     349            int transp_offset, transp_length;
     350
     351            sscanf(p, "%d/%d,%d/%d,%d/%d,%d/%d",
     352                &red_offset, &red_length,
     353                &green_offset, &green_length,
     354                &blue_offset, &blue_length,
     355                &transp_offset, &transp_length);
     356            base->red.offset = red_offset;
     357            base->red.length = red_length;
     358            base->red.msb_right = 0;
     359            base->green.offset = green_offset;
     360            base->green.length = green_length;
     361            base->green.msb_right = 0;
     362            base->blue.offset = blue_offset;
     363            base->blue.length = blue_length;
     364            base->blue.msb_right = 0;
     365            base->transp.offset = transp_offset;
     366            base->transp.length = transp_length;
     367            base->transp.msb_right = 0;
     368        }
    330369        }
    331370    }
     
    371410        OPT_SHOW     = (1 << 1),
    372411        OPT_READMODE = (1 << 2),
    373         OPT_ALL      = (1 << 9),
     412        OPT_ALL      = (1 << 3),
    374413    };
    375414    struct fb_var_screeninfo var_old, var_set;
     
    388427    argc--;
    389428    for (; argc > 0 && (thisarg = *argv) != NULL; argc--, argv++) {
    390         if (thisarg[0] == '-') for (i = 0; i < ARRAY_SIZE(g_cmdoptions); i++) {
     429        if (thisarg[0] != '-') {
     430            if (!ENABLE_FEATURE_FBSET_READMODE || argc != 1)
     431                bb_show_usage();
     432            mode = thisarg;
     433            options |= OPT_READMODE;
     434            goto contin;
     435        }
     436        for (i = 0; i < ARRAY_SIZE(g_cmdoptions); i++) {
    391437            if (strcmp(thisarg + 1, g_cmdoptions[i].name) != 0)
    392438                continue;
     
    457503            goto contin;
    458504        }
    459         if (!ENABLE_FEATURE_FBSET_READMODE || argc != 1)
    460             bb_show_usage();
    461         mode = *argv;
    462         options |= OPT_READMODE;
     505        bb_show_usage();
    463506 contin: ;
    464507    }
     
    472515            bb_error_msg_and_die("unknown video mode '%s'", mode);
    473516        }
     517        options |= OPT_CHANGE;
    474518#endif
    475519    }
Note: See TracChangeset for help on using the changeset viewer.