multiboot.h (2178B)
1 /* $Id$ 2 ** 3 ** Copyright 1999 Sidney Cammeresi. 4 ** All rights reserved. 5 ** 6 ** Redistribution and use in source and binary forms, with or without 7 ** modification, are permitted provided that the following conditions 8 ** are met: 9 ** 10 ** 1. Redistributions of source code must retain the above copyright notice, 11 ** this list of conditions and the following disclaimer. 12 ** 13 ** 2. Redistributions in binary form must reproduce the above copyright 14 ** notice, this list of conditions and the following disclaimer in the 15 ** documentation and/or other materials provided with the distribution. 16 ** 17 ** 3. The name of the author may not be used to endorse or promote products 18 ** derived from this software without specific prior written permission. 19 ** 20 ** THIS SOFTWARE IS PROVIDED BY THE AUTHOR `AS IS' AND ANY EXPRESS OR IMPLIED 21 ** WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF 22 ** MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN 23 ** NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, 24 ** SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED 25 ** TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR 26 ** PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF 27 ** LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING 28 ** NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS 29 ** SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 30 */ 31 32 #ifndef _MULTIBOOT_H_ 33 #define _MULTIBOOT_H_ 34 35 #define MBI_MEM 0x00000001 36 #define MBI_BOOTDEV 0x00000002 37 #define MBI_CMDLINE 0x00000004 38 #define MBI_MODS 0x00000008 39 #define MBI_SYMS_AOUT 0x00000010 40 #define MBI_SYMS_ELF 0x00000020 41 #define MBI_MMAP 0x00000040 42 43 typedef struct 44 { 45 unsigned int flags, mem_lower, mem_upper, boot_device; 46 char *cmdline; 47 unsigned int mods_count, mods_addr; 48 union 49 { 50 struct 51 { 52 unsigned int tabsize, strsize, addr, _pad_; 53 } sym_aout; 54 struct 55 { 56 unsigned int num, size, addr, shndx; 57 } sym_elf; 58 } mb_sym_un; 59 unsigned int mmap_length, mmap_addr; 60 } multiboot_info; 61 62 63 #endif 64