grml...
[seabios.git] / src / biosvar.h
index df0df0eba47939723f4be69e480ed4408ff6cd27..b6f7174c59dd7b3ffd739c1ff85f45cd172ce91c 100644 (file)
@@ -25,6 +25,12 @@ struct rmode_IVT {
 #define SET_IVT(vector, segoff)                                         \
     SET_FARVAR(SEG_IVT, ((struct rmode_IVT *)0)->ivec[vector], segoff)
 
+#define FUNC16(func) ({                                 \
+        ASSERT32FLAT();                                 \
+        extern void func (void);                        \
+        SEGOFF(SEG_BIOS, (u32)func - BUILD_BIOS_ADDR);  \
+    })
+
 
 /****************************************************************
  * Bios Data Area (BDA)
@@ -106,7 +112,8 @@ struct bios_data_area_s {
     struct segoff_s video_savetable;
     u8 other_ac[4];
     // 40:B0
-    u8 other_b0[10];
+    u8 other_b0[9];
+    u8 vbe_flag;
     u16 vbe_mode;
 } PACKED;
 
@@ -216,7 +223,6 @@ struct extended_bios_data_area_s {
     u8 other2[0xC4];
 
     // 0x121 - Begin custom storage.
-    u8 bootsplash_active;
     u8 ps2ctr;
     struct usbkeyinfo usbkey_last;
 
@@ -233,6 +239,10 @@ struct extended_bios_data_area_s {
 
     u16 boot_sequence;
 
+    /* TSC emulation timekeepers */
+    u64 tsc_8254;
+    int last_tsc_8254;
+
     // Stack space available for code that needs it.
     u8 extra_stack[512] __aligned(8);
 } PACKED;