X-Git-Url: https://git.reactos.org/?p=reactos.git;a=blobdiff_plain;f=reactos%2Fsubsystems%2Fntvdm%2Fbios%2Fbios.h;h=9b47f163a0d2fd36484378050e5135ed01bdf5ae;hp=cc1bb94b803d1e7fe978d1b2a4f38aba4e687e6a;hb=02bef19b583fbdc09d284e1a8bc853ff5f91f647;hpb=de36490031fc50d59ea0c93c10305ad0aa07c850 diff --git a/reactos/subsystems/ntvdm/bios/bios.h b/reactos/subsystems/ntvdm/bios/bios.h index cc1bb94b803..9b47f163a0d 100644 --- a/reactos/subsystems/ntvdm/bios/bios.h +++ b/reactos/subsystems/ntvdm/bios/bios.h @@ -22,6 +22,8 @@ #define BIOS_EQUIPMENT_LIST 0x2C // HACK: Disable FPU for now +#pragma pack(push, 1) + /* * BIOS Data Area at 0040:XXXX * @@ -29,7 +31,6 @@ * and: http://www.bioscentral.com/misc/bda.htm * for more information. */ -#pragma pack(push, 1) typedef struct { WORD SerialPorts[4]; // 0x00 @@ -96,13 +97,30 @@ typedef struct BYTE Reserved17[15]; // 0x121 BYTE Reserved18[3]; // 0x130 } BIOS_DATA_AREA, *PBIOS_DATA_AREA; -#pragma pack(pop) - C_ASSERT(sizeof(BIOS_DATA_AREA) == 0x133); +/* + * BIOS Configuration Table at F000:E6F5 for 100% compatible BIOSes. + * + * See: http://www.ctyme.com/intr/rb-1594.htm + * for more information. + */ +typedef struct _BIOS_CONFIG_TABLE +{ + WORD Length; // 0x00 + BYTE Model; // 0x02 + BYTE SubModel; // 0x03 + BYTE BiosRevision; // 0x04 + BYTE BiosFeature[5]; // 0x05 -- 0x09 + // Other BIOSes may extend this table. We don't. +} BIOS_CONFIG_TABLE, *PBIOS_CONFIG_TABLE; + +#pragma pack(pop) + /* FUNCTIONS ******************************************************************/ extern PBIOS_DATA_AREA Bda; +extern PBIOS_CONFIG_TABLE Bct; VOID WINAPI BiosEquipmentService(LPWORD Stack); VOID WINAPI BiosGetMemorySize(LPWORD Stack);