📄 sys_info.h
字号:
/* BSDI sys_info.h,v 1.6 1998/06/03 19:14:59 karels Exp *//* * Copyright (c) 1996-1999 Distributed Processing Technology Corporation * All rights reserved. * * Redistribution and use in source form, with or without modification, are * permitted provided that redistributions of source code must retain the * above copyright notice, this list of conditions and the following disclaimer. * * This software is provided `as is' by Distributed Processing Technology and * any express or implied warranties, including, but not limited to, the * implied warranties of merchantability and fitness for a particular purpose, * are disclaimed. In no event shall Distributed Processing Technology be * liable for any direct, indirect, incidental, special, exemplary or * consequential damages (including, but not limited to, procurement of * substitute goods or services; loss of use, data, or profits; or business * interruptions) however caused and on any theory of liability, whether in * contract, strict liability, or tort (including negligence or otherwise) * arising in any way out of the use of this driver software, even if advised * of the possibility of such damage. * */#ifndef __SYS_INFO_H#define __SYS_INFO_H/*File - SYS_INFO.H **************************************************************************** * *Description: * * This file contains structure definitions for the OS dependent *layer system information buffers. * *Copyright Distributed Processing Technology, Corp. * 140 Candace Dr. * Maitland, Fl. 32751 USA * Phone: (407) 830-5522 Fax: (407) 260-5366 * All Rights Reserved * *Author: Don Kemper *Date: 5/10/94 * *Editors: * *Remarks: * * *****************************************************************************//*Include Files ------------------------------------------------------------- */#include "osd_util.h"#ifndef NO_PACK#if defined (_DPT_AIX)#pragma options align=packed#else#pragma pack(1)#endif /* aix */#endif // no unpack/*struct - driveParam_S - start *=========================================================================== * *Description: * * This structure defines the drive parameters seen during *booting. * *---------------------------------------------------------------------------*/#ifdef __cplusplus struct driveParam_S {#else typedef struct {#endif uSHORT cylinders; /* Upto 1024 */ uCHAR heads; /* Upto 255 */ uCHAR sectors; /* Upto 63 */#ifdef __cplusplus//---------- Portability Additions ----------- in sp_sinfo.cpp#ifdef DPT_PORTABLE uSHORT netInsert(dptBuffer_S *buffer); uSHORT netExtract(dptBuffer_S *buffer);#endif // DPT PORTABLE//-------------------------------------------- };#else } driveParam_S;#endif/*driveParam_S - end *//*struct - sysInfo_S - start *=========================================================================== * *Description: * * This structure defines the command system information that *should be returned by every OS dependent layer. * *---------------------------------------------------------------------------*//*flags - bit definitions */#define SI_CMOS_Valid 0x0001#define SI_NumDrivesValid 0x0002#define SI_ProcessorValid 0x0004#define SI_MemorySizeValid 0x0008#define SI_DriveParamsValid 0x0010#define SI_SmartROMverValid 0x0020#define SI_OSversionValid 0x0040#define SI_OSspecificValid 0x0080 /* 1 if OS structure returned */#define SI_BusTypeValid 0x0100#define SI_ALL_VALID 0x0FFF /* All Std SysInfo is valid */#define SI_NO_SmartROM 0x8000/*busType - definitions */#define SI_ISA_BUS 0x00#define SI_MCA_BUS 0x01#define SI_EISA_BUS 0x02#define SI_PCI_BUS 0x04#ifdef __cplusplus struct sysInfo_S {#else typedef struct {#endif uCHAR drive0CMOS; /* CMOS Drive 0 Type */ uCHAR drive1CMOS; /* CMOS Drive 1 Type */ uCHAR numDrives; /* 0040:0075 contents */ uCHAR processorFamily; /* Same as DPTSIG's definition */ uCHAR processorType; /* Same as DPTSIG's definition */ uCHAR smartROMMajorVersion; uCHAR smartROMMinorVersion; /* SmartROM version */ uCHAR smartROMRevision; uSHORT flags; /* See bit definitions above */ uSHORT conventionalMemSize; /* in KB */ uLONG extendedMemSize; /* in KB */ uLONG osType; /* Same as DPTSIG's definition */ uCHAR osMajorVersion; uCHAR osMinorVersion; /* The OS version */ uCHAR osRevision;#ifdef _SINIX_ADDON uCHAR busType; /* See defininitions above */ uSHORT osSubRevision; uCHAR pad[2]; /* For alignment */#else uCHAR osSubRevision; uCHAR busType; /* See defininitions above */ uCHAR pad[3]; /* For alignment */#endif driveParam_S drives[16]; /* SmartROM Logical Drives */#ifdef __cplusplus//---------- Portability Additions ----------- in sp_sinfo.cpp#ifdef DPT_PORTABLE uSHORT netInsert(dptBuffer_S *buffer); uSHORT netExtract(dptBuffer_S *buffer);#endif // DPT PORTABLE//-------------------------------------------- };#else } sysInfo_S;#endif/*sysInfo_S - end *//*struct - DOS_Info_S - start *=========================================================================== * *Description: * * This structure defines the system information specific to a *DOS workstation. * *---------------------------------------------------------------------------*//*flags - bit definitions */#define DI_DOS_HIGH 0x01 /* DOS is loaded high */#define DI_DPMI_VALID 0x02 /* DPMI version is valid */#ifdef __cplusplus struct DOS_Info_S {#else typedef struct {#endif uCHAR flags; /* See bit definitions above */ uSHORT driverLocation; /* SmartROM BIOS address */ uSHORT DOS_version; uSHORT DPMI_version;#ifdef __cplusplus//---------- Portability Additions ----------- in sp_sinfo.cpp#ifdef DPT_PORTABLE uSHORT netInsert(dptBuffer_S *buffer); uSHORT netExtract(dptBuffer_S *buffer);#endif // DPT PORTABLE//-------------------------------------------- };#else } DOS_Info_S;#endif/*DOS_Info_S - end *//*struct - Netware_Info_S - start *=========================================================================== * *Description: * * This structure defines the system information specific to a *Netware machine. * *---------------------------------------------------------------------------*/#ifdef __cplusplus struct Netware_Info_S {#else typedef struct {#endif uCHAR driverName[13]; /* ie PM12NW31.DSK */ uCHAR serverName[48]; uCHAR netwareVersion; /* The Netware OS version */ uCHAR netwareSubVersion; uCHAR netwareRevision; uSHORT maxConnections; /* Probably 250 or 1000 */ uSHORT connectionsInUse; uSHORT maxVolumes; uCHAR unused; uCHAR SFTlevel; uCHAR TTSlevel; uCHAR clibMajorVersion; /* The CLIB.NLM version */ uCHAR clibMinorVersion; uCHAR clibRevision;#ifdef __cplusplus//---------- Portability Additions ----------- in sp_sinfo.cpp#ifdef DPT_PORTABLE uSHORT netInsert(dptBuffer_S *buffer); uSHORT netExtract(dptBuffer_S *buffer);#endif // DPT PORTABLE//-------------------------------------------- };#else } Netware_Info_S;#endif/*Netware_Info_S - end *//*struct - OS2_Info_S - start *=========================================================================== * *Description: * * This structure defines the system information specific to an *OS/2 machine. * *---------------------------------------------------------------------------*/#ifdef __cplusplus struct OS2_Info_S {#else typedef struct {#endif uCHAR something;#ifdef __cplusplus//---------- Portability Additions ----------- in sp_sinfo.cpp#ifdef DPT_PORTABLE uSHORT netInsert(dptBuffer_S *buffer); uSHORT netExtract(dptBuffer_S *buffer);#endif // DPT PORTABLE//-------------------------------------------- };#else } OS2_Info_S;#endif/*OS2_Info_S - end *//*struct - WinNT_Info_S - start *=========================================================================== * *Description: * * This structure defines the system information specific to a *Windows NT machine. * *---------------------------------------------------------------------------*/#ifdef __cplusplus struct WinNT_Info_S {#else typedef struct {#endif uCHAR something;#ifdef __cplusplus//---------- Portability Additions ----------- in sp_sinfo.cpp#ifdef DPT_PORTABLE uSHORT netInsert(dptBuffer_S *buffer); uSHORT netExtract(dptBuffer_S *buffer);#endif // DPT PORTABLE//-------------------------------------------- };#else } WinNT_Info_S;#endif/*WinNT_Info_S - end *//*struct - SCO_Info_S - start *=========================================================================== * *Description: * * This structure defines the system information specific to an *SCO UNIX machine. * *---------------------------------------------------------------------------*/#ifdef __cplusplus struct SCO_Info_S {#else typedef struct {#endif uCHAR something;#ifdef __cplusplus//---------- Portability Additions ----------- in sp_sinfo.cpp#ifdef DPT_PORTABLE uSHORT netInsert(dptBuffer_S *buffer); uSHORT netExtract(dptBuffer_S *buffer);#endif // DPT PORTABLE//-------------------------------------------- };#else } SCO_Info_S;#endif/*SCO_Info_S - end *//*struct - USL_Info_S - start *=========================================================================== * *Description: * * This structure defines the system information specific to a *USL UNIX machine. * *---------------------------------------------------------------------------*/#ifdef __cplusplus struct USL_Info_S {#else typedef struct {#endif uCHAR something;#ifdef __cplusplus//---------- Portability Additions ----------- in sp_sinfo.cpp#ifdef DPT_PORTABLE uSHORT netInsert(dptBuffer_S *buffer); uSHORT netExtract(dptBuffer_S *buffer);#endif // DPT PORTABLE//-------------------------------------------- };#else } USL_Info_S;#endif/*USL_Info_S - end */ /* Restore default structure packing */#ifndef NO_UNPACK#if defined (_DPT_AIX)#pragma options align=reset#elif defined (UNPACK_FOUR)#pragma pack(4)#else#pragma pack()#endif /* aix */#endif // no unpack#endif // __SYS_INFO_H
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -