diff options
| author | wdenk <wdenk> | 2003-04-20 16:52:09 +0000 | 
|---|---|---|
| committer | wdenk <wdenk> | 2003-04-20 16:52:09 +0000 | 
| commit | 059ae173e93a4a0aa698ce1e2d87d33cc55cf8c0 (patch) | |
| tree | 2eb520e6a89a978a9aa4eb2666eac0fadfcc7539 /include/bmp_layout.h | |
| parent | 824a1ebffece80586d52c343b2f451086154dff8 (diff) | |
| download | olio-uboot-2014.01-059ae173e93a4a0aa698ce1e2d87d33cc55cf8c0.tar.xz olio-uboot-2014.01-059ae173e93a4a0aa698ce1e2d87d33cc55cf8c0.zip | |
Add files needed for bitmap load support
Diffstat (limited to 'include/bmp_layout.h')
| -rw-r--r-- | include/bmp_layout.h | 77 | 
1 files changed, 77 insertions, 0 deletions
| diff --git a/include/bmp_layout.h b/include/bmp_layout.h new file mode 100644 index 000000000..7285a264d --- /dev/null +++ b/include/bmp_layout.h @@ -0,0 +1,77 @@ +/* (C) Copyright 2002 + * Detlev Zundel, DENX Software Engineering, dzu@denx.de. + * + * See file CREDITS for list of people who contributed to this + * project. + * + * This program is free software; you can redistribute it and/or + * modify it under the terms of the GNU General Public License as + * published by the Free Software Foundation; either version 2 of + * the License, or (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, + * MA 02111-1307 USA + */ + +/************************************************************************/ +/* ** Layout of a bmp file						*/ +/************************************************************************/ + +#ifndef _BMP_H_ +#define _BMP_H_ + +typedef struct bmp_color_table_entry { +  __u8 blue; +  __u8 green; +  __u8 red; +  __u8 reserved; +} __attribute__((packed)) bmp_color_table_entry_t; + +/* When accessing these fields, remember that they are stored in little +   endian format, so use linux macros, e.g. le32_to_cpu(width)          */ + +typedef	struct bmp_header { +  /* Header */ +  char signature[2]; +  __u32 file_size; +  __u32 reserved; +  __u32 data_offset; +  /* InfoHeader */ +  __u32 size; +  __u32 width; +  __u32 height; +  __u16 planes; +  __u16 bit_count; +  __u32 compression; +  __u32 image_size; +  __u32 x_pixels_per_m; +  __u32 y_pixels_per_m; +  __u32 colors_used; +  __u32 colors_important; +  /* ColorTable */ +   +}  __attribute__((packed)) bmp_header_t; + +typedef struct bmp_image { +  bmp_header_t header; +  /* We use a zero sized array just as a placeholder for variable +     sized array */ +  bmp_color_table_entry_t color_table[0]; +} bmp_image_t; + +/* Data in the bmp_image is aligned to this length */ +#define BMP_DATA_ALIGN 4 + +/* Constants for the compression field */ +#define BMP_BI_RGB  0 +#define BMP_BI_RLE8 1 +#define BMP_BI_RLE4 2 + +#endif /* _BMP_H_ */ |