Update README file with more information on using the bios.
[people/mcb30/legacybios.git] / src / cbt.c
1 // BIOS configuration table.
2 //
3 // Copyright (C) 2008  Kevin O'Connor <kevin@koconnor.net>
4 // Copyright (C) 2002  MandrakeSoft S.A.
5 //
6 // This file may be distributed under the terms of the GNU GPLv3 license.
7
8 #include "biosvar.h" // CONFIG_BIOS_TABLE
9
10 // DMA channel 3 used by hard disk BIOS
11 #define CBT_F1_DMA3USED (1<<7)
12 // 2nd interrupt controller (8259) installed
13 #define CBT_F1_2NDPIC   (1<<6)
14 // Real-Time Clock installed
15 #define CBT_F1_RTC      (1<<5)
16 // INT 15/AH=4Fh called upon INT 09h
17 #define CBT_F1_INT154F  (1<<4)
18 // wait for external event (INT 15/AH=41h) supported
19 #define CBT_F1_WAITEXT  (1<<3)
20 // extended BIOS area allocated (usually at top of RAM)
21 #define CBT_F1_EBDA     (1<<2)
22 // bus is Micro Channel instead of ISA
23 #define CBT_F1_MCA      (1<<1)
24 // system has dual bus (Micro Channel + ISA)
25 #define CBT_F1_MCAISA   (1<<0)
26
27 // INT 16/AH=09h (keyboard functionality) supported
28 #define CBT_F2_INT1609  (1<<6)
29
30 struct bios_config_table_s BIOS_CONFIG_TABLE = {
31     .size     = sizeof(BIOS_CONFIG_TABLE) - 2,
32     .model    = CONFIG_MODEL_ID,
33     .submodel = CONFIG_SUBMODEL_ID,
34     .biosrev  = CONFIG_BIOS_REVISION,
35     .feature1 = (
36         CBT_F1_2NDPIC | CBT_F1_RTC | CBT_F1_EBDA
37         | (CONFIG_KBD_CALL_INT15_4F ? CBT_F1_INT154F : 0)),
38     .feature2 = CBT_F2_INT1609,
39     .feature3 = 0,
40     .feature4 = 0,
41     .feature5 = 0,
42 };