X-Git-Url: http://wien.tomnetworks.com/gitweb/?a=blobdiff_plain;f=src%2Fbiosvar.h;h=2b755e3f419c8a8f3ae9b0e5fc772c073a73db27;hb=3bbd11f0053cc813ce11101147cf66d36b376f96;hp=808793d25f7b439bbdbc74bd888e2a7b26c602d8;hpb=8f469b9676127ba6bb52609d89ec774e61db0ee1;p=seabios.git diff --git a/src/biosvar.h b/src/biosvar.h index 808793d..2b755e3 100644 --- a/src/biosvar.h +++ b/src/biosvar.h @@ -1,6 +1,6 @@ // Variable layouts of bios. // -// Copyright (C) 2008,2009 Kevin O'Connor +// Copyright (C) 2008-2010 Kevin O'Connor // // This file may be distributed under the terms of the GNU LGPLv3 license. #ifndef __BIOSVAR_H @@ -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) @@ -97,7 +103,7 @@ struct bios_data_area_s { u8 floppy_media_state[4]; u8 floppy_track[2]; u8 kbd_flag2; - u8 kbd_flag3; + u8 kbd_led; struct segoff_s user_wait_complete_flag; u32 user_wait_timeout; // 40:A0 @@ -123,33 +129,6 @@ struct bios_data_area_s { #define FMS_DOUBLE_STEPPING (1<<5) #define FMS_DATA_RATE_MASK (0xc0) -// Bit definitions for kbd_flag[0123] -#define KF0_RSHIFT (1<<0) -#define KF0_LSHIFT (1<<1) -#define KF0_CTRLACTIVE (1<<2) -#define KF0_ALTACTIVE (1<<3) -#define KF0_SCROLLACTIVE (1<<4) -#define KF0_NUMACTIVE (1<<5) -#define KF0_CAPSACTIVE (1<<6) - -#define KF1_LCTRL (1<<0) -#define KF1_LALT (1<<1) -#define KF1_PAUSEACTIVE (1<<3) -#define KF1_SCROLL (1<<4) -#define KF1_NUM (1<<5) -#define KF1_CAPS (1<<6) - -#define KF2_LAST_E1 (1<<0) -#define KF2_LAST_E0 (1<<1) -#define KF2_RCTRL (1<<2) -#define KF2_RALT (1<<3) -#define KF2_101KBD (1<<4) - -#define KF3_SCROLL_LED (1<<0) -#define KF3_NUM_LED (1<<1) -#define KF3_CAPS_LED (1<<2) -#define KF3_CMD_PENDING (1<<6) - // Accessor functions #define GET_BDA(var) \ GET_FARVAR(SEG_BDA, ((struct bios_data_area_s *)0)->var) @@ -243,6 +222,7 @@ struct extended_bios_data_area_s { u8 other2[0xC4]; // 0x121 - Begin custom storage. + u8 ps2ctr; struct usbkeyinfo usbkey_last; int RTCusers; @@ -260,8 +240,6 @@ struct extended_bios_data_area_s { // Stack space available for code that needs it. u8 extra_stack[512] __aligned(8); - - u8 cdemu_buf[2048 * !!CONFIG_CDROM_EMU]; } PACKED; // The initial size and location of EBDA