2005-04-16 15:20:36 -07:00
/* 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
2011-03-30 22:57:33 -03:00
uSHORT cylinders ; /* Up to 1024 */
uCHAR heads ; /* Up to 255 */
uCHAR sectors ; /* Up to 63 */
2005-04-16 15:20:36 -07:00
# 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 */
2008-05-02 01:07:27 +02:00
uINT extendedMemSize ; /* in KB */
uINT osType ; /* Same as DPTSIG's definition */
2005-04-16 15:20:36 -07:00
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