Reorganize boot code.
[seabios.git] / src / boot.h
1 // Storage for boot definitions.
2 #ifndef __BOOT_H
3 #define __BOOT_H
4
5
6 /****************************************************************
7  * Initial Program Load (IPL)
8  ****************************************************************/
9
10 struct ipl_entry_s {
11     u16 type;
12     u16 flags;
13     u32 vector;
14     char *description;
15 };
16
17 struct ipl_s {
18     struct ipl_entry_s table[8];
19     u16 count;
20     u32 bootorder;
21     u8 checkfloppysig;
22 };
23
24 #define IPL_TYPE_FLOPPY      0x01
25 #define IPL_TYPE_HARDDISK    0x02
26 #define IPL_TYPE_CDROM       0x03
27 #define IPL_TYPE_BEV         0x80
28
29
30 /****************************************************************
31  * Function defs
32  ****************************************************************/
33
34 // boot.c
35 extern struct ipl_s IPL;
36 void boot_setup();
37 void add_bev(u16 seg, u16 bev, u16 desc);
38 void interactive_bootmenu();
39
40 #endif // __BOOT_H