diff options
Diffstat (limited to 'private/ntos/boot/detect/i386/pnpbios.h')
-rw-r--r-- | private/ntos/boot/detect/i386/pnpbios.h | 87 |
1 files changed, 87 insertions, 0 deletions
diff --git a/private/ntos/boot/detect/i386/pnpbios.h b/private/ntos/boot/detect/i386/pnpbios.h new file mode 100644 index 000000000..bd063676f --- /dev/null +++ b/private/ntos/boot/detect/i386/pnpbios.h @@ -0,0 +1,87 @@ +/*++ BUILD Version: 0001 // Increment this if a change has global effects + +Copyright (c) 1991 Microsoft Corporation + +Module Name: + + biosp.h + +Abstract: + + PnP BIOS/ISA sepc related definitions + +Author: + + Shie-Lin Tzong (shielint) April 12, 1995 + +Revision History: + +--*/ + +// +// Pnp BIOS device node structure +// + +typedef struct _PNP_BIOS_DEVICE_NODE { + USHORT Size; + UCHAR Node; + ULONG ProductId; + UCHAR DeviceType[3]; + USHORT DeviceAttributes; + // followed by AllocatedResourceBlock, PossibleResourceBlock + // and CompatibleDeviceId +} PNP_BIOS_DEVICE_NODE, far *FPPNP_BIOS_DEVICE_NODE; + +// +// Pnp BIOS Installation check +// + +typedef struct _PNP_BIOS_INSTALLATION_CHECK { + UCHAR Signature[4]; // $PnP (ascii) + UCHAR Revision; + UCHAR Length; + USHORT ControlField; + UCHAR Checksum; + ULONG EventFlagAddress; // Physical address + USHORT RealModeEntryOffset; + USHORT RealModeEntrySegment; + USHORT ProtectedModeEntryOffset; + ULONG ProtectedModeCodeBaseAddress; + ULONG OemDeviceId; + USHORT RealModeDataBaseAddress; + ULONG ProtectedModeDataBaseAddress; +} PNP_BIOS_INSTALLATION_CHECK, far *FPPNP_BIOS_INSTALLATION_CHECK; + +// +// PnP BIOS ROM definitions +// + +#define PNP_BIOS_START 0xF0000 +#define PNP_BIOS_END 0xFFFFF +#define PNP_BIOS_HEADER_INCREMENT 16 + +// +// PnP BIOS API function codes +// + +#define PNP_BIOS_GET_NUMBER_DEVICE_NODES 0 +#define PNP_BIOS_GET_DEVICE_NODE 1 +#define PNP_BIOS_SET_DEVICE_NODE 2 +#define PNP_BIOS_GET_EVENT 3 +#define PNP_BIOS_SEND_MESSAGE 4 +#define PNP_BIOS_GET_DOCK_INFORMATION 5 +// Function 6 is reserved. +#define PNP_BIOS_SELECT_BOOT_DEVICE 7 +#define PNP_BIOS_GET_BOOT_DEVICE 8 +#define PNP_BIOS_SET_OLD_ISA_RESOURCES 9 +#define PNP_BIOS_GET_OLD_ISA_RESOURCES 0xA +#define PNP_BIOS_GET_ISA_CONFIGURATION 0x40 + +typedef USHORT ( far * ENTRY_POINT) (int Function, ...); + +// +// Control Flags for Get_Device_Node +// + +#define GET_CURRENT_CONFIGURATION 1 +#define GET_NEXT_BOOT_CONFIGURATION 2 |