~ubuntu-branches/ubuntu/trusty/grub2/trusty-updates

« back to all changes in this revision

Viewing changes to include/multiboot.h

  • Committer: Bazaar Package Importer
  • Author(s): Robert Millan
  • Date: 2007-11-01 13:18:51 UTC
  • mto: (17.3.1 squeeze) (1.9.1 upstream)
  • mto: This revision was merged to the branch mainline in revision 15.
  • Revision ID: james.westby@ubuntu.com-20071101131851-63uqsb4dax2h1cbm
Tags: upstream-1.95+20071101
ImportĀ upstreamĀ versionĀ 1.95+20071101

Show diffs side-by-side

added added

removed removed

Lines of Context:
 
1
/* multiboot.h - multiboot header file. */
 
2
/*
 
3
 *  GRUB  --  GRand Unified Bootloader
 
4
 *  Copyright (C) 2003,2007  Free Software Foundation, Inc.
 
5
 *
 
6
 *  GRUB is free software: you can redistribute it and/or modify
 
7
 *  it under the terms of the GNU General Public License as published by
 
8
 *  the Free Software Foundation, either version 3 of the License, or
 
9
 *  (at your option) any later version.
 
10
 *
 
11
 *  GRUB is distributed in the hope that it will be useful,
 
12
 *  but WITHOUT ANY WARRANTY; without even the implied warranty of
 
13
 *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 
14
 *  GNU General Public License for more details.
 
15
 *
 
16
 *  You should have received a copy of the GNU General Public License
 
17
 *  along with GRUB.  If not, see <http://www.gnu.org/licenses/>.
 
18
 */
 
19
 
 
20
#ifndef MULTIBOOT_HEADER
 
21
#define MULTIBOOT_HEADER 1
 
22
 
 
23
/* How many bytes from the start of the file we search for the header.  */
 
24
#define MULTIBOOT_SEARCH                 8192
 
25
 
 
26
/* The magic field should contain this.  */
 
27
#define MULTIBOOT_MAGIC                  0x1BADB002
 
28
 
 
29
/* This should be in %eax.  */
 
30
#define MULTIBOOT_MAGIC2                 0x2BADB002
 
31
 
 
32
/* The bits in the required part of flags field we don't support.  */
 
33
#define MULTIBOOT_UNSUPPORTED            0x0000fffc
 
34
 
 
35
/* Alignment of multiboot modules.  */
 
36
#define MULTIBOOT_MOD_ALIGN              0x00001000
 
37
 
 
38
/* 
 
39
 * Flags set in the 'flags' member of the multiboot header.
 
40
 */
 
41
 
 
42
/* Align all boot modules on i386 page (4KB) boundaries.  */
 
43
#define MULTIBOOT_PAGE_ALIGN            0x00000001
 
44
 
 
45
/* Must pass memory information to OS.  */
 
46
#define MULTIBOOT_MEMORY_INFO           0x00000002
 
47
 
 
48
/* Must pass video information to OS.  */
 
49
#define MULTIBOOT_VIDEO_MODE            0x00000004
 
50
 
 
51
/* This flag indicates the use of the address fields in the header.  */
 
52
#define MULTIBOOT_AOUT_KLUDGE           0x00010000
 
53
 
 
54
/*
 
55
 *  Flags to be set in the 'flags' member of the multiboot info structure.
 
56
 */
 
57
 
 
58
/* is there basic lower/upper memory information? */
 
59
#define MULTIBOOT_INFO_MEMORY           0x00000001
 
60
/* is there a boot device set? */
 
61
#define MULTIBOOT_INFO_BOOTDEV          0x00000002
 
62
/* is the command-line defined? */
 
63
#define MULTIBOOT_INFO_CMDLINE          0x00000004
 
64
/* are there modules to do something with? */
 
65
#define MULTIBOOT_INFO_MODS             0x00000008
 
66
 
 
67
/* These next two are mutually exclusive */
 
68
 
 
69
/* is there a symbol table loaded? */
 
70
#define MULTIBOOT_INFO_AOUT_SYMS                0x00000010
 
71
/* is there an ELF section header table? */
 
72
#define MULTIBOOT_INFO_ELF_SHDR         0x00000020
 
73
 
 
74
/* is there a full memory map? */
 
75
#define MULTIBOOT_INFO_MEM_MAP          0x00000040
 
76
 
 
77
/* Is there drive info?  */
 
78
#define MULTIBOOT_INFO_DRIVE_INFO               0x00000080
 
79
 
 
80
/* Is there a config table?  */
 
81
#define MULTIBOOT_INFO_CONFIG_TABLE     0x00000100
 
82
 
 
83
/* Is there a boot loader name?  */
 
84
#define MULTIBOOT_INFO_BOOT_LOADER_NAME 0x00000200
 
85
 
 
86
/* Is there a APM table?  */
 
87
#define MULTIBOOT_INFO_APM_TABLE                0x00000400
 
88
 
 
89
/* Is there video information?  */
 
90
#define MULTIBOOT_INFO_VIDEO_INFO               0x00000800
 
91
 
 
92
#endif /* ! MULTIBOOT_HEADER */