974 lines
28 KiB
C
974 lines
28 KiB
C
/*++
|
|
|
|
Copyright (c) 1992 Microsoft Corporation
|
|
|
|
Module Name:
|
|
|
|
mon.h
|
|
|
|
Abstract:
|
|
|
|
This is the main include file for monitors support programs.
|
|
|
|
Author:
|
|
|
|
Andre Vachon (andreva) 16-Jul-1992
|
|
|
|
Revision History:
|
|
|
|
--*/
|
|
|
|
|
|
//
|
|
// Calculate the byte offset of a field in a structure of type type.
|
|
//
|
|
|
|
#define FIELD_OFFSET(type, field) ((LONG)&(((type *)0)->field))
|
|
|
|
|
|
//
|
|
// New Type
|
|
//
|
|
|
|
typedef struct _LINE_STRUCT {
|
|
int OptionalField; // indicates how the field is to be treated
|
|
int FieldType; // type of data being manipulated
|
|
int StringId; // If MANDATORY, index of the String to match
|
|
// for STRING_FIELD.
|
|
// If store offset at which to store the data
|
|
// in the structure.
|
|
// Otherwise, integer in which to store the data
|
|
int FloatBits; // Number of bits after the decimal in the float.
|
|
} LINE_STRUCT, *PLINE_STRUCT;
|
|
|
|
//
|
|
// OptinalField Definition
|
|
//
|
|
|
|
#define OP_OPTIONAL 0
|
|
#define OP_MANDATORY 1
|
|
#define OP_STORE 2
|
|
#define OP_STORE_CHOICE 3
|
|
#define OP_MULTIPLE_CHOICE 4
|
|
#define OP_STOP 5
|
|
|
|
//
|
|
// FieldType definitions
|
|
//
|
|
|
|
#define STRING_FIELD 0
|
|
#define UCHAR_FIELD 2
|
|
#define USHORT_FIELD 3
|
|
#define ULONG_FIELD 4
|
|
#define NO_MORE_FIELDS 8
|
|
|
|
typedef enum _STRING_ID {
|
|
siColon = 0,
|
|
siComma,
|
|
siEqual,
|
|
siHV,
|
|
siPercent,
|
|
siSlash,
|
|
si07Vpp,
|
|
si10Vpp,
|
|
siActive,
|
|
siAnalog,
|
|
siAspect,
|
|
siB,
|
|
siBack,
|
|
siBlue,
|
|
siBorder,
|
|
siBottom,
|
|
siCapability,
|
|
siChromaticity,
|
|
siClock,
|
|
siColor,
|
|
siCompatibility,
|
|
siComposite,
|
|
siConfiguration,
|
|
siCRT,
|
|
siDate,
|
|
siDecay,
|
|
siDescription,
|
|
siDimension,
|
|
siDisplay,
|
|
siDots,
|
|
siECL,
|
|
siFile,
|
|
siFrequency,
|
|
siFront,
|
|
siG,
|
|
siGamma,
|
|
siGreen,
|
|
siGreens,
|
|
siHeight,
|
|
siHorizontal,
|
|
siHz,
|
|
siInches,
|
|
siIndex,
|
|
siInformation,
|
|
siInterlaced,
|
|
siKHz,
|
|
siLeft,
|
|
siLength,
|
|
siLevel,
|
|
siLimits,
|
|
siLine,
|
|
siLines,
|
|
siManufactured,
|
|
siManufacturer,
|
|
siMaximum,
|
|
siMHz,
|
|
siMinimum,
|
|
simm,
|
|
siModel,
|
|
siMonitor,
|
|
siMonochrome,
|
|
simSec,
|
|
siName,
|
|
siNegative,
|
|
siNonInterlaced,
|
|
siNumber,
|
|
siOf,
|
|
siOn,
|
|
siOperational,
|
|
siPhosphor,
|
|
siPixel,
|
|
siPolarity,
|
|
siPorch,
|
|
siPositive,
|
|
siPreAdjusted,
|
|
siPulse,
|
|
siR,
|
|
siRatio,
|
|
siRed,
|
|
siResolution,
|
|
siRetrace,
|
|
siRevision,
|
|
siRight,
|
|
siScan,
|
|
siSeparate,
|
|
siSerial,
|
|
siSize,
|
|
siStartup,
|
|
siSync,
|
|
siSyncOnG,
|
|
siTiming,
|
|
siTimings,
|
|
siTop,
|
|
siTTL,
|
|
siType,
|
|
siuSec,
|
|
siVDDP,
|
|
siVersion,
|
|
siVertical,
|
|
siVideo,
|
|
siWidth,
|
|
siWhite,
|
|
siX,
|
|
siY,
|
|
siZ
|
|
} STRING_ID, *PSTRING_ID;
|
|
|
|
//
|
|
// String Table
|
|
//
|
|
|
|
char *StringTable[] = {
|
|
":",
|
|
",",
|
|
"=",
|
|
"(H:V)",
|
|
"%",
|
|
"/",
|
|
"0.7Vp-p",
|
|
"1.0Vp-p",
|
|
"Active",
|
|
"Analog",
|
|
"Aspect",
|
|
"B",
|
|
"Back",
|
|
"Blue",
|
|
"Border",
|
|
"Bottom",
|
|
"Capability",
|
|
"Chromaticity",
|
|
"Clock",
|
|
"Color",
|
|
"Compatibility",
|
|
"Composite",
|
|
"Configuration",
|
|
"CRT",
|
|
"Date",
|
|
"Decay",
|
|
"Description",
|
|
"Dimension",
|
|
"Display",
|
|
"Dots",
|
|
"ECL",
|
|
"File",
|
|
"Frequency",
|
|
"Front",
|
|
"G",
|
|
"Gamma",
|
|
"Green",
|
|
"Greens",
|
|
"Height",
|
|
"Horizontal",
|
|
"Hz",
|
|
"Inches",
|
|
"Index",
|
|
"Information",
|
|
"Interlaced",
|
|
"KHz",
|
|
"Left",
|
|
"Length",
|
|
"Level",
|
|
"Limits",
|
|
"Line",
|
|
"Lines",
|
|
"Manufactured",
|
|
"Manufacturer",
|
|
"Maximum",
|
|
"MHz",
|
|
"Minimum",
|
|
"mm",
|
|
"Model",
|
|
"Monitor",
|
|
"Monochrome",
|
|
"mSec",
|
|
"Name",
|
|
"Negative",
|
|
"Non-Interlaced",
|
|
"Number",
|
|
"Of",
|
|
"On",
|
|
"Operational",
|
|
"Phosphor",
|
|
"Pixel",
|
|
"Polarity",
|
|
"Porch",
|
|
"Positive",
|
|
"Pre-Adjusted",
|
|
"Pulse",
|
|
"R",
|
|
"Ratio",
|
|
"Red",
|
|
"Resolution",
|
|
"Retrace",
|
|
"Revision",
|
|
"Right",
|
|
"Scan",
|
|
"Separate",
|
|
"Serial",
|
|
"Size",
|
|
"Start-up",
|
|
"Sync",
|
|
"SyncOnGreenS",
|
|
"Timing",
|
|
"Timings",
|
|
"Top",
|
|
"TTL",
|
|
"Type",
|
|
"uSec",
|
|
"VDDP",
|
|
"Version",
|
|
"Vertical",
|
|
"Video",
|
|
"Width",
|
|
"White",
|
|
"X",
|
|
"Y",
|
|
"Z"
|
|
};
|
|
|
|
//
|
|
// One netry in the table
|
|
//
|
|
|
|
#define MAX_FIELD_ENTRIES 16
|
|
|
|
typedef struct _LINE_DESCRIPTION {
|
|
LINE_STRUCT LineStruct[MAX_FIELD_ENTRIES];
|
|
} LINE_DESCRIPTION, *PLINE_DESCRIPTION;
|
|
|
|
LINE_DESCRIPTION MonitorDescription[] = {
|
|
{
|
|
OP_MANDATORY, STRING_FIELD, siDisplay, 0,
|
|
OP_MANDATORY, STRING_FIELD, siCapability, 0,
|
|
OP_MANDATORY, STRING_FIELD, siFile, 0,
|
|
OP_MANDATORY, NO_MORE_FIELDS
|
|
},
|
|
{
|
|
OP_MANDATORY, STRING_FIELD, siFile, 0,
|
|
OP_MANDATORY, STRING_FIELD, siInformation, 0,
|
|
OP_MANDATORY, NO_MORE_FIELDS
|
|
},
|
|
{
|
|
OP_MANDATORY, STRING_FIELD, siDate, 0,
|
|
OP_MANDATORY, STRING_FIELD, siEqual, 0,
|
|
OP_STORE, USHORT_FIELD,
|
|
FIELD_OFFSET(CM_MONITOR_DESCRIPTION, Date[0]), 0,
|
|
OP_MANDATORY, STRING_FIELD, siSlash, 0,
|
|
OP_STORE, USHORT_FIELD,
|
|
FIELD_OFFSET(CM_MONITOR_DESCRIPTION, Date[1]), 0,
|
|
OP_MANDATORY, STRING_FIELD, siSlash, 0,
|
|
OP_STORE, USHORT_FIELD,
|
|
FIELD_OFFSET(CM_MONITOR_DESCRIPTION, Date[2]), 0,
|
|
OP_MANDATORY, NO_MORE_FIELDS
|
|
},
|
|
{
|
|
OP_MANDATORY, STRING_FIELD, siVDDP, 0,
|
|
OP_MANDATORY, STRING_FIELD, siVersion, 0,
|
|
OP_MANDATORY, STRING_FIELD, siEqual, 0,
|
|
OP_STORE, UCHAR_FIELD,
|
|
FIELD_OFFSET(CM_MONITOR_DESCRIPTION, VDDPVersion), 0,
|
|
OP_MANDATORY, NO_MORE_FIELDS
|
|
},
|
|
{
|
|
OP_MANDATORY, STRING_FIELD, siFile, 0,
|
|
OP_MANDATORY, STRING_FIELD, siRevision, 0,
|
|
OP_MANDATORY, STRING_FIELD, siEqual, 0,
|
|
OP_STORE, UCHAR_FIELD,
|
|
FIELD_OFFSET(CM_MONITOR_DESCRIPTION, FileRevision), 0,
|
|
OP_MANDATORY, NO_MORE_FIELDS
|
|
},
|
|
{
|
|
OP_MANDATORY, STRING_FIELD, siDescription, 0,
|
|
OP_MANDATORY, NO_MORE_FIELDS
|
|
},
|
|
{
|
|
OP_MANDATORY, STRING_FIELD, siManufacturer, 0,
|
|
OP_MANDATORY, STRING_FIELD, siEqual, 0,
|
|
OP_STORE, STRING_FIELD,
|
|
FIELD_OFFSET(CM_MONITOR_DESCRIPTION, Manufacturer[0]), 12,
|
|
OP_MANDATORY, NO_MORE_FIELDS
|
|
},
|
|
{
|
|
OP_MANDATORY, STRING_FIELD, siModel, 0,
|
|
OP_MANDATORY, STRING_FIELD, siNumber, 0,
|
|
OP_MANDATORY, STRING_FIELD, siEqual, 0,
|
|
OP_STORE, STRING_FIELD,
|
|
FIELD_OFFSET(CM_MONITOR_DESCRIPTION, ModelNumber[0]), 12,
|
|
OP_MANDATORY, NO_MORE_FIELDS
|
|
},
|
|
{
|
|
OP_MANDATORY, STRING_FIELD, siResolution, 0,
|
|
OP_MANDATORY, NO_MORE_FIELDS
|
|
},
|
|
{
|
|
OP_MANDATORY, STRING_FIELD, siVersion, 0,
|
|
OP_MANDATORY, STRING_FIELD, siEqual, 0,
|
|
OP_STORE, STRING_FIELD,
|
|
FIELD_OFFSET(CM_MONITOR_DESCRIPTION, Version[0]), 12,
|
|
OP_MANDATORY, NO_MORE_FIELDS
|
|
},
|
|
{
|
|
OP_MANDATORY, STRING_FIELD, siSerial, 0,
|
|
OP_MANDATORY, STRING_FIELD, siNumber, 0,
|
|
OP_MANDATORY, STRING_FIELD, siEqual, 0,
|
|
OP_STORE, STRING_FIELD,
|
|
FIELD_OFFSET(CM_MONITOR_DESCRIPTION, SerialNumber[0]), 12,
|
|
OP_MANDATORY, NO_MORE_FIELDS
|
|
},
|
|
{
|
|
OP_MANDATORY, STRING_FIELD, siDate, 0,
|
|
OP_MANDATORY, STRING_FIELD, siManufactured, 0,
|
|
OP_MANDATORY, STRING_FIELD, siEqual, 0,
|
|
OP_STORE, USHORT_FIELD,
|
|
FIELD_OFFSET(CM_MONITOR_DESCRIPTION, DateManufactured[0]), 0,
|
|
OP_MANDATORY, STRING_FIELD, siSlash, 0,
|
|
OP_STORE, USHORT_FIELD,
|
|
FIELD_OFFSET(CM_MONITOR_DESCRIPTION, DateManufactured[1]), 0,
|
|
OP_MANDATORY, STRING_FIELD, siSlash, 0,
|
|
OP_STORE, USHORT_FIELD,
|
|
FIELD_OFFSET(CM_MONITOR_DESCRIPTION, DateManufactured[2]), 0,
|
|
OP_MANDATORY, NO_MORE_FIELDS
|
|
},
|
|
{
|
|
OP_MANDATORY, STRING_FIELD, siStartup, 0,
|
|
OP_MANDATORY, STRING_FIELD, siCompatibility, 0,
|
|
OP_MANDATORY, STRING_FIELD, siEqual, 0,
|
|
OP_STORE, STRING_FIELD,
|
|
FIELD_OFFSET(CM_MONITOR_DESCRIPTION, StartUpCompatibility[0]), 3,
|
|
OP_MANDATORY, NO_MORE_FIELDS
|
|
},
|
|
{
|
|
OP_MANDATORY, STRING_FIELD, siNumber, 0,
|
|
OP_MANDATORY, STRING_FIELD, siOf, 0,
|
|
OP_MANDATORY, STRING_FIELD, siOperational, 0,
|
|
OP_MANDATORY, STRING_FIELD, siLimits, 0,
|
|
OP_MANDATORY, STRING_FIELD, siEqual, 0,
|
|
OP_STORE, USHORT_FIELD,
|
|
FIELD_OFFSET(CM_MONITOR_DESCRIPTION, NumberOperationalLimits), 0,
|
|
OP_MANDATORY, NO_MORE_FIELDS
|
|
},
|
|
{
|
|
OP_MANDATORY, STRING_FIELD, siNumber, 0,
|
|
OP_MANDATORY, STRING_FIELD, siOf, 0,
|
|
OP_MANDATORY, STRING_FIELD, siPreAdjusted, 0,
|
|
OP_MANDATORY, STRING_FIELD, siTimings, 0,
|
|
OP_MANDATORY, STRING_FIELD, siEqual, 0,
|
|
OP_STORE, USHORT_FIELD,
|
|
FIELD_OFFSET(CM_MONITOR_DESCRIPTION, NumberPreadjustedTimings), 0,
|
|
OP_MANDATORY, NO_MORE_FIELDS
|
|
},
|
|
{
|
|
OP_MANDATORY, STRING_FIELD, siMonitor, 0,
|
|
OP_MANDATORY, STRING_FIELD, siType, 0,
|
|
OP_MANDATORY, STRING_FIELD, siEqual, 0,
|
|
OP_STORE_CHOICE, UCHAR_FIELD,
|
|
FIELD_OFFSET(CM_MONITOR_DESCRIPTION, MonitorType), 0,
|
|
OP_MULTIPLE_CHOICE, STRING_FIELD, siMonochrome, 0,
|
|
OP_MULTIPLE_CHOICE, STRING_FIELD, siColor, 1,
|
|
OP_MANDATORY, NO_MORE_FIELDS
|
|
},
|
|
{
|
|
OP_MANDATORY, STRING_FIELD, siCRT, 0,
|
|
OP_MANDATORY, STRING_FIELD, siSize, 0,
|
|
OP_MANDATORY, STRING_FIELD, siEqual, 0,
|
|
OP_STORE, UCHAR_FIELD,
|
|
FIELD_OFFSET(CM_MONITOR_DESCRIPTION, CRTSize), 0,
|
|
OP_MANDATORY, STRING_FIELD, siInches, 0,
|
|
OP_MANDATORY, NO_MORE_FIELDS
|
|
},
|
|
{
|
|
OP_MANDATORY, STRING_FIELD, siRed, 0,
|
|
OP_MANDATORY, STRING_FIELD, siPhosphor, 0,
|
|
OP_MANDATORY, STRING_FIELD, siDecay, 0,
|
|
OP_MANDATORY, STRING_FIELD, siEqual, 0,
|
|
OP_STORE, USHORT_FIELD,
|
|
FIELD_OFFSET(CM_MONITOR_DESCRIPTION, RedPhosphoreDecay), 0,
|
|
OP_MANDATORY, STRING_FIELD, simSec, 0,
|
|
OP_MANDATORY, NO_MORE_FIELDS
|
|
},
|
|
{
|
|
OP_MANDATORY, STRING_FIELD, siGreen, 0,
|
|
OP_MANDATORY, STRING_FIELD, siPhosphor, 0,
|
|
OP_MANDATORY, STRING_FIELD, siDecay, 0,
|
|
OP_MANDATORY, STRING_FIELD, siEqual, 0,
|
|
OP_STORE, USHORT_FIELD,
|
|
FIELD_OFFSET(CM_MONITOR_DESCRIPTION, GreenPhosphoreDecay), 0,
|
|
OP_MANDATORY, STRING_FIELD, simSec, 0,
|
|
OP_MANDATORY, NO_MORE_FIELDS
|
|
},
|
|
{
|
|
OP_MANDATORY, STRING_FIELD, siBlue, 0,
|
|
OP_MANDATORY, STRING_FIELD, siPhosphor, 0,
|
|
OP_MANDATORY, STRING_FIELD, siDecay, 0,
|
|
OP_MANDATORY, STRING_FIELD, siEqual, 0,
|
|
OP_STORE, USHORT_FIELD,
|
|
FIELD_OFFSET(CM_MONITOR_DESCRIPTION, BluePhosphoreDecay), 0,
|
|
OP_MANDATORY, STRING_FIELD, simSec, 0,
|
|
OP_MANDATORY, NO_MORE_FIELDS
|
|
},
|
|
{
|
|
OP_MANDATORY, STRING_FIELD, siBorder, 0,
|
|
OP_MANDATORY, STRING_FIELD, siColor, 0,
|
|
OP_MANDATORY, STRING_FIELD, siEqual, 0,
|
|
OP_STORE, UCHAR_FIELD,
|
|
FIELD_OFFSET(CM_MONITOR_DESCRIPTION, BorderColorRed), 0,
|
|
OP_MANDATORY, STRING_FIELD, siPercent, 0,
|
|
OP_MANDATORY, STRING_FIELD, siR, 0,
|
|
OP_MANDATORY, STRING_FIELD, siComma, 0,
|
|
OP_STORE, UCHAR_FIELD,
|
|
FIELD_OFFSET(CM_MONITOR_DESCRIPTION, BorderColorGreen), 0,
|
|
OP_MANDATORY, STRING_FIELD, siPercent, 0,
|
|
OP_MANDATORY, STRING_FIELD, siG, 0,
|
|
OP_MANDATORY, STRING_FIELD, siComma, 0,
|
|
OP_STORE, UCHAR_FIELD,
|
|
FIELD_OFFSET(CM_MONITOR_DESCRIPTION, BorderColorBlue), 0,
|
|
OP_MANDATORY, STRING_FIELD, siPercent, 0,
|
|
OP_MANDATORY, STRING_FIELD, siB, 0,
|
|
OP_MANDATORY, NO_MORE_FIELDS
|
|
},
|
|
{
|
|
OP_MANDATORY, STRING_FIELD, siWhite, 0,
|
|
OP_MANDATORY, STRING_FIELD, siChromaticity, 0,
|
|
OP_MANDATORY, STRING_FIELD, siEqual, 0,
|
|
OP_STORE, USHORT_FIELD,
|
|
FIELD_OFFSET(CM_MONITOR_DESCRIPTION, WhiteChromaticityX), 3,
|
|
OP_MANDATORY, STRING_FIELD, siX, 0,
|
|
OP_MANDATORY, STRING_FIELD, siComma, 0,
|
|
OP_STORE, USHORT_FIELD,
|
|
FIELD_OFFSET(CM_MONITOR_DESCRIPTION, WhiteChromaticityY), 3,
|
|
OP_MANDATORY, STRING_FIELD, siY, 0,
|
|
OP_MANDATORY, STRING_FIELD, siComma, 0,
|
|
OP_STORE, USHORT_FIELD,
|
|
FIELD_OFFSET(CM_MONITOR_DESCRIPTION, WhiteChromaticityZ), 3,
|
|
OP_MANDATORY, STRING_FIELD, siZ, 0,
|
|
OP_MANDATORY, NO_MORE_FIELDS
|
|
},
|
|
{
|
|
OP_MANDATORY, STRING_FIELD, siRed, 0,
|
|
OP_MANDATORY, STRING_FIELD, siChromaticity, 0,
|
|
OP_MANDATORY, STRING_FIELD, siEqual, 0,
|
|
OP_STORE, USHORT_FIELD,
|
|
FIELD_OFFSET(CM_MONITOR_DESCRIPTION, RedChromaticityX), 3,
|
|
OP_MANDATORY, STRING_FIELD, siX, 0,
|
|
OP_MANDATORY, STRING_FIELD, siComma, 0,
|
|
OP_STORE, USHORT_FIELD,
|
|
FIELD_OFFSET(CM_MONITOR_DESCRIPTION, RedChromaticityY), 3,
|
|
OP_MANDATORY, STRING_FIELD, siY, 0,
|
|
OP_MANDATORY, NO_MORE_FIELDS
|
|
},
|
|
{
|
|
OP_MANDATORY, STRING_FIELD, siGreen, 0,
|
|
OP_MANDATORY, STRING_FIELD, siChromaticity, 0,
|
|
OP_MANDATORY, STRING_FIELD, siEqual, 0,
|
|
OP_STORE, USHORT_FIELD,
|
|
FIELD_OFFSET(CM_MONITOR_DESCRIPTION, GreenChromaticityX), 3,
|
|
OP_MANDATORY, STRING_FIELD, siX, 0,
|
|
OP_MANDATORY, STRING_FIELD, siComma, 0,
|
|
OP_STORE, USHORT_FIELD,
|
|
FIELD_OFFSET(CM_MONITOR_DESCRIPTION, GreenChromaticityY), 3,
|
|
OP_MANDATORY, STRING_FIELD, siY, 0,
|
|
OP_MANDATORY, NO_MORE_FIELDS
|
|
},
|
|
{
|
|
OP_MANDATORY, STRING_FIELD, siBlue, 0,
|
|
OP_MANDATORY, STRING_FIELD, siChromaticity, 0,
|
|
OP_MANDATORY, STRING_FIELD, siEqual, 0,
|
|
OP_STORE, USHORT_FIELD,
|
|
FIELD_OFFSET(CM_MONITOR_DESCRIPTION, BlueChromaticityX), 3,
|
|
OP_MANDATORY, STRING_FIELD, siX, 0,
|
|
OP_MANDATORY, STRING_FIELD, siComma, 0,
|
|
OP_STORE, USHORT_FIELD,
|
|
FIELD_OFFSET(CM_MONITOR_DESCRIPTION, BlueChromaticityY), 3,
|
|
OP_MANDATORY, STRING_FIELD, siY, 0,
|
|
OP_MANDATORY, NO_MORE_FIELDS
|
|
},
|
|
{
|
|
OP_MANDATORY, STRING_FIELD, siWhite, 0,
|
|
OP_MANDATORY, STRING_FIELD, siGamma, 0,
|
|
OP_MANDATORY, STRING_FIELD, siEqual, 0,
|
|
OP_STORE, USHORT_FIELD,
|
|
FIELD_OFFSET(CM_MONITOR_DESCRIPTION, WhiteGamma), 2,
|
|
OP_MANDATORY, NO_MORE_FIELDS
|
|
},
|
|
{
|
|
OP_MANDATORY, STRING_FIELD, siRed, 0,
|
|
OP_MANDATORY, STRING_FIELD, siGamma, 0,
|
|
OP_MANDATORY, STRING_FIELD, siEqual, 0,
|
|
OP_STORE, USHORT_FIELD,
|
|
FIELD_OFFSET(CM_MONITOR_DESCRIPTION, RedGamma), 2,
|
|
OP_MANDATORY, NO_MORE_FIELDS
|
|
},
|
|
{
|
|
OP_MANDATORY, STRING_FIELD, siGreen, 0,
|
|
OP_MANDATORY, STRING_FIELD, siGamma, 0,
|
|
OP_MANDATORY, STRING_FIELD, siEqual, 0,
|
|
OP_STORE, USHORT_FIELD,
|
|
FIELD_OFFSET(CM_MONITOR_DESCRIPTION, GreenGamma), 2,
|
|
OP_MANDATORY, NO_MORE_FIELDS
|
|
},
|
|
{
|
|
OP_MANDATORY, STRING_FIELD, siBlue, 0,
|
|
OP_MANDATORY, STRING_FIELD, siGamma, 0,
|
|
OP_MANDATORY, STRING_FIELD, siEqual, 0,
|
|
OP_STORE, USHORT_FIELD,
|
|
FIELD_OFFSET(CM_MONITOR_DESCRIPTION, BlueGamma), 2,
|
|
OP_MANDATORY, NO_MORE_FIELDS
|
|
},
|
|
{
|
|
OP_STOP
|
|
}
|
|
};
|
|
|
|
LINE_DESCRIPTION OperationalLimits[] = {
|
|
{
|
|
OP_MANDATORY, STRING_FIELD, siOperational, 0,
|
|
OP_MANDATORY, STRING_FIELD, siLimits, 0,
|
|
OP_MANDATORY, NO_MORE_FIELDS
|
|
},
|
|
{
|
|
OP_MANDATORY, STRING_FIELD, siMinimum, 0,
|
|
OP_MANDATORY, STRING_FIELD, siHorizontal, 0,
|
|
OP_MANDATORY, STRING_FIELD, siFrequency, 0,
|
|
OP_MANDATORY, STRING_FIELD, siEqual, 0,
|
|
OP_STORE, ULONG_FIELD,
|
|
FIELD_OFFSET(CM_MONITOR_OPERATIONAL_LIMITS, MinimumHorizontalFrequency), 3,
|
|
OP_MANDATORY, STRING_FIELD, siKHz, 0,
|
|
OP_MANDATORY, NO_MORE_FIELDS
|
|
},
|
|
{
|
|
OP_MANDATORY, STRING_FIELD, siMaximum, 0,
|
|
OP_MANDATORY, STRING_FIELD, siHorizontal, 0,
|
|
OP_MANDATORY, STRING_FIELD, siFrequency, 0,
|
|
OP_MANDATORY, STRING_FIELD, siEqual, 0,
|
|
OP_STORE, ULONG_FIELD,
|
|
FIELD_OFFSET(CM_MONITOR_OPERATIONAL_LIMITS, MaximumHorizontalFrequency), 3,
|
|
OP_MANDATORY, STRING_FIELD, siKHz, 0,
|
|
OP_MANDATORY, NO_MORE_FIELDS
|
|
},
|
|
{
|
|
OP_MANDATORY, STRING_FIELD, siMinimum, 0,
|
|
OP_MANDATORY, STRING_FIELD, siVertical, 0,
|
|
OP_MANDATORY, STRING_FIELD, siFrequency, 0,
|
|
OP_MANDATORY, STRING_FIELD, siEqual, 0,
|
|
OP_STORE, ULONG_FIELD,
|
|
FIELD_OFFSET(CM_MONITOR_OPERATIONAL_LIMITS, MinimumVerticalFrequency), 3,
|
|
OP_MANDATORY, STRING_FIELD, siHz, 0,
|
|
OP_MANDATORY, NO_MORE_FIELDS
|
|
},
|
|
{
|
|
OP_MANDATORY, STRING_FIELD, siMaximum, 0,
|
|
OP_MANDATORY, STRING_FIELD, siVertical, 0,
|
|
OP_MANDATORY, STRING_FIELD, siFrequency, 0,
|
|
OP_MANDATORY, STRING_FIELD, siEqual, 0,
|
|
OP_STORE, ULONG_FIELD,
|
|
FIELD_OFFSET(CM_MONITOR_OPERATIONAL_LIMITS, MaximumVerticalFrequency), 3,
|
|
OP_MANDATORY, STRING_FIELD, siHz, 0,
|
|
OP_MANDATORY, NO_MORE_FIELDS
|
|
},
|
|
{
|
|
OP_MANDATORY, STRING_FIELD, siMaximum, 0,
|
|
OP_MANDATORY, STRING_FIELD, siPixel, 0,
|
|
OP_MANDATORY, STRING_FIELD, siClock, 0,
|
|
OP_MANDATORY, STRING_FIELD, siEqual, 0,
|
|
OP_STORE, ULONG_FIELD,
|
|
FIELD_OFFSET(CM_MONITOR_OPERATIONAL_LIMITS, MaximumPixelClock), 3,
|
|
OP_MANDATORY, STRING_FIELD, siMHz, 0,
|
|
OP_MANDATORY, NO_MORE_FIELDS
|
|
},
|
|
{
|
|
OP_MANDATORY, STRING_FIELD, siMaximum, 0,
|
|
OP_MANDATORY, STRING_FIELD, siHorizontal, 0,
|
|
OP_MANDATORY, STRING_FIELD, siDots, 0,
|
|
OP_MANDATORY, STRING_FIELD, siEqual, 0,
|
|
OP_STORE, USHORT_FIELD,
|
|
FIELD_OFFSET(CM_MONITOR_OPERATIONAL_LIMITS, MaximumHorizontalDots), 0,
|
|
OP_MANDATORY, NO_MORE_FIELDS
|
|
},
|
|
{
|
|
OP_MANDATORY, STRING_FIELD, siMaximum, 0,
|
|
OP_MANDATORY, STRING_FIELD, siVertical, 0,
|
|
OP_MANDATORY, STRING_FIELD, siLines, 0,
|
|
OP_MANDATORY, STRING_FIELD, siEqual, 0,
|
|
OP_STORE, USHORT_FIELD,
|
|
FIELD_OFFSET(CM_MONITOR_OPERATIONAL_LIMITS, MaximumVerticalLines), 0,
|
|
OP_MANDATORY, NO_MORE_FIELDS
|
|
},
|
|
{
|
|
OP_MANDATORY, STRING_FIELD, siMinimum, 0,
|
|
OP_MANDATORY, STRING_FIELD, siHorizontal, 0,
|
|
OP_MANDATORY, STRING_FIELD, siRetrace, 0,
|
|
OP_MANDATORY, STRING_FIELD, siEqual, 0,
|
|
OP_STORE, USHORT_FIELD,
|
|
FIELD_OFFSET(CM_MONITOR_OPERATIONAL_LIMITS, MinimumHorizontalRetrace), 3,
|
|
OP_MANDATORY, STRING_FIELD, siuSec, 0,
|
|
OP_MANDATORY, NO_MORE_FIELDS
|
|
},
|
|
{
|
|
OP_MANDATORY, STRING_FIELD, siMinimum, 0,
|
|
OP_MANDATORY, STRING_FIELD, siVertical, 0,
|
|
OP_MANDATORY, STRING_FIELD, siRetrace, 0,
|
|
OP_MANDATORY, STRING_FIELD, siEqual, 0,
|
|
OP_STORE, USHORT_FIELD,
|
|
FIELD_OFFSET(CM_MONITOR_OPERATIONAL_LIMITS, MinimumVerticalRetrace), 3,
|
|
OP_MANDATORY, STRING_FIELD, simSec, 0,
|
|
OP_MANDATORY, NO_MORE_FIELDS
|
|
},
|
|
{
|
|
OP_MANDATORY, STRING_FIELD, siHorizontal, 0,
|
|
OP_MANDATORY, STRING_FIELD, siLine, 0,
|
|
OP_MANDATORY, STRING_FIELD, siDimension, 0,
|
|
OP_MANDATORY, STRING_FIELD, siEqual, 0,
|
|
OP_STORE, USHORT_FIELD,
|
|
FIELD_OFFSET(CM_MONITOR_OPERATIONAL_LIMITS, HorizontalLineDimension), 0,
|
|
OP_MANDATORY, STRING_FIELD, simm, 0,
|
|
OP_MANDATORY, NO_MORE_FIELDS
|
|
},
|
|
{
|
|
OP_MANDATORY, STRING_FIELD, siVertical, 0,
|
|
OP_MANDATORY, STRING_FIELD, siHeight, 0,
|
|
OP_MANDATORY, STRING_FIELD, siDimension, 0,
|
|
OP_MANDATORY, STRING_FIELD, siEqual, 0,
|
|
OP_STORE, USHORT_FIELD,
|
|
FIELD_OFFSET(CM_MONITOR_OPERATIONAL_LIMITS, VerticalHeightDimension), 0,
|
|
OP_MANDATORY, STRING_FIELD, simm, 0,
|
|
OP_MANDATORY, NO_MORE_FIELDS
|
|
},
|
|
{
|
|
OP_STOP
|
|
}
|
|
};
|
|
|
|
LINE_DESCRIPTION PreAdjustedTiming[] = {
|
|
{
|
|
OP_MANDATORY, STRING_FIELD, siPreAdjusted, 0,
|
|
OP_MANDATORY, STRING_FIELD, siTiming, 0,
|
|
OP_MANDATORY, STRING_FIELD, siName, 0,
|
|
OP_MANDATORY, STRING_FIELD, siEqual, 0,
|
|
OP_STORE, STRING_FIELD,
|
|
FIELD_OFFSET(CM_MONITOR_PREADJUSTED_TIMING, PreadjustedTimingName[0]), 12,
|
|
OP_MANDATORY, NO_MORE_FIELDS
|
|
},
|
|
{
|
|
OP_MANDATORY, STRING_FIELD, siHorizontal, 0,
|
|
OP_MANDATORY, STRING_FIELD, siResolution, 0,
|
|
OP_MANDATORY, STRING_FIELD, siEqual, 0,
|
|
OP_STORE, USHORT_FIELD,
|
|
FIELD_OFFSET(CM_MONITOR_PREADJUSTED_TIMING, HorizontalResolution), 0,
|
|
OP_MANDATORY, STRING_FIELD, siDots, 0,
|
|
OP_MANDATORY, NO_MORE_FIELDS
|
|
},
|
|
{
|
|
OP_MANDATORY, STRING_FIELD, siVertical, 0,
|
|
OP_MANDATORY, STRING_FIELD, siResolution, 0,
|
|
OP_MANDATORY, STRING_FIELD, siEqual, 0,
|
|
OP_STORE, USHORT_FIELD,
|
|
FIELD_OFFSET(CM_MONITOR_PREADJUSTED_TIMING, VerticalResolution), 0,
|
|
OP_MANDATORY, STRING_FIELD, siLines, 0,
|
|
OP_MANDATORY, NO_MORE_FIELDS
|
|
},
|
|
{
|
|
OP_MANDATORY, STRING_FIELD, siHorizontal, 0,
|
|
OP_MANDATORY, STRING_FIELD, siFrequency, 0,
|
|
OP_MANDATORY, STRING_FIELD, siEqual, 0,
|
|
OP_STORE, ULONG_FIELD,
|
|
FIELD_OFFSET(CM_MONITOR_PREADJUSTED_TIMING, HorizontalFrequency), 3,
|
|
OP_MANDATORY, STRING_FIELD, siKHz, 0,
|
|
OP_MANDATORY, NO_MORE_FIELDS
|
|
},
|
|
{
|
|
OP_MANDATORY, STRING_FIELD, siVertical, 0,
|
|
OP_MANDATORY, STRING_FIELD, siFrequency, 0,
|
|
OP_MANDATORY, STRING_FIELD, siEqual, 0,
|
|
OP_STORE, ULONG_FIELD,
|
|
FIELD_OFFSET(CM_MONITOR_PREADJUSTED_TIMING, VeriticalFrequency), 3,
|
|
OP_MANDATORY, STRING_FIELD, siHz, 0,
|
|
OP_MANDATORY, NO_MORE_FIELDS
|
|
},
|
|
{
|
|
OP_MANDATORY, STRING_FIELD, siPixel, 0,
|
|
OP_MANDATORY, STRING_FIELD, siAspect, 0,
|
|
OP_MANDATORY, STRING_FIELD, siRatio, 0,
|
|
OP_MANDATORY, STRING_FIELD, siHV, 0,
|
|
OP_MANDATORY, STRING_FIELD, siEqual, 0,
|
|
OP_STORE, UCHAR_FIELD,
|
|
FIELD_OFFSET(CM_MONITOR_PREADJUSTED_TIMING, PixelWidthRatio), 0,
|
|
OP_MANDATORY, STRING_FIELD, siColon, 0,
|
|
OP_STORE, UCHAR_FIELD,
|
|
FIELD_OFFSET(CM_MONITOR_PREADJUSTED_TIMING, PixelHeightRatio), 0,
|
|
OP_MANDATORY, NO_MORE_FIELDS
|
|
},
|
|
{
|
|
OP_MANDATORY, STRING_FIELD, siHorizontal, 0,
|
|
OP_MANDATORY, STRING_FIELD, siActive, 0,
|
|
OP_MANDATORY, STRING_FIELD, siLine, 0,
|
|
OP_MANDATORY, STRING_FIELD, siLength, 0,
|
|
OP_MANDATORY, STRING_FIELD, siEqual, 0,
|
|
OP_STORE, USHORT_FIELD,
|
|
FIELD_OFFSET(CM_MONITOR_PREADJUSTED_TIMING, HorizontalActiveLineLength), 0,
|
|
OP_MANDATORY, STRING_FIELD, simm, 0,
|
|
OP_MANDATORY, NO_MORE_FIELDS
|
|
},
|
|
{
|
|
OP_MANDATORY, STRING_FIELD, siVertical, 0,
|
|
OP_MANDATORY, STRING_FIELD, siActive, 0,
|
|
OP_MANDATORY, STRING_FIELD, siHeight, 0,
|
|
OP_MANDATORY, STRING_FIELD, siEqual, 0,
|
|
OP_STORE, USHORT_FIELD,
|
|
FIELD_OFFSET(CM_MONITOR_PREADJUSTED_TIMING, VertivalActiveHeight), 0,
|
|
OP_MANDATORY, STRING_FIELD, simm, 0,
|
|
OP_MANDATORY, NO_MORE_FIELDS
|
|
},
|
|
{
|
|
OP_MANDATORY, STRING_FIELD, siVideo, 0,
|
|
OP_MANDATORY, STRING_FIELD, siType, 0,
|
|
OP_MANDATORY, STRING_FIELD, siEqual, 0,
|
|
OP_STORE_CHOICE, UCHAR_FIELD,
|
|
FIELD_OFFSET(CM_MONITOR_PREADJUSTED_TIMING, VideoType), 0,
|
|
OP_MULTIPLE_CHOICE, STRING_FIELD, siTTL, 0,
|
|
OP_MULTIPLE_CHOICE, STRING_FIELD, siAnalog, 1,
|
|
OP_MULTIPLE_CHOICE, STRING_FIELD, siECL, 2,
|
|
OP_MANDATORY, NO_MORE_FIELDS
|
|
},
|
|
{
|
|
OP_MANDATORY, STRING_FIELD, siVideo, 0,
|
|
OP_MANDATORY, STRING_FIELD, siLevel, 0,
|
|
OP_MANDATORY, STRING_FIELD, siEqual, 0,
|
|
OP_STORE_CHOICE, UCHAR_FIELD,
|
|
FIELD_OFFSET(CM_MONITOR_PREADJUSTED_TIMING, VideoLevel), 0,
|
|
OP_MULTIPLE_CHOICE, STRING_FIELD, si07Vpp, 0,
|
|
OP_MULTIPLE_CHOICE, STRING_FIELD, si10Vpp, 1,
|
|
OP_MANDATORY, NO_MORE_FIELDS
|
|
},
|
|
{
|
|
OP_MANDATORY, STRING_FIELD, siSync, 0,
|
|
OP_MANDATORY, STRING_FIELD, siType, 0,
|
|
OP_MANDATORY, STRING_FIELD, siEqual, 0,
|
|
OP_STORE_CHOICE, UCHAR_FIELD,
|
|
FIELD_OFFSET(CM_MONITOR_PREADJUSTED_TIMING, SyncType), 0,
|
|
OP_MULTIPLE_CHOICE, STRING_FIELD, siTTL, 0,
|
|
OP_MULTIPLE_CHOICE, STRING_FIELD, siAnalog, 1,
|
|
OP_MULTIPLE_CHOICE, STRING_FIELD, siECL, 2,
|
|
OP_MANDATORY, NO_MORE_FIELDS
|
|
},
|
|
{
|
|
OP_MANDATORY, STRING_FIELD, siSync, 0,
|
|
OP_MANDATORY, STRING_FIELD, siConfiguration, 0,
|
|
OP_MANDATORY, STRING_FIELD, siEqual, 0,
|
|
OP_STORE_CHOICE, UCHAR_FIELD,
|
|
FIELD_OFFSET(CM_MONITOR_PREADJUSTED_TIMING, SyncConfiguration), 0,
|
|
OP_MULTIPLE_CHOICE, STRING_FIELD, siSeparate, 0,
|
|
OP_MULTIPLE_CHOICE, STRING_FIELD, siComposite, 1,
|
|
OP_MULTIPLE_CHOICE, STRING_FIELD, siSyncOnG, 2,
|
|
OP_MANDATORY, NO_MORE_FIELDS
|
|
},
|
|
{
|
|
OP_MANDATORY, STRING_FIELD, siScan, 0,
|
|
OP_MANDATORY, STRING_FIELD, siType, 0,
|
|
OP_MANDATORY, STRING_FIELD, siEqual, 0,
|
|
OP_STORE_CHOICE, UCHAR_FIELD,
|
|
FIELD_OFFSET(CM_MONITOR_PREADJUSTED_TIMING, ScanType), 0,
|
|
OP_MULTIPLE_CHOICE, STRING_FIELD, siInterlaced, 0,
|
|
OP_MULTIPLE_CHOICE, STRING_FIELD, siNonInterlaced, 1,
|
|
OP_MANDATORY, NO_MORE_FIELDS
|
|
},
|
|
{
|
|
OP_MANDATORY, STRING_FIELD, siHorizontal, 0,
|
|
OP_MANDATORY, STRING_FIELD, siSync, 0,
|
|
OP_MANDATORY, STRING_FIELD, siPolarity, 0,
|
|
OP_MANDATORY, STRING_FIELD, siEqual, 0,
|
|
OP_STORE_CHOICE, UCHAR_FIELD,
|
|
FIELD_OFFSET(CM_MONITOR_PREADJUSTED_TIMING, HorizontalSyncPolarity), 0,
|
|
OP_MULTIPLE_CHOICE, STRING_FIELD, siNegative, 0,
|
|
OP_MULTIPLE_CHOICE, STRING_FIELD, siPositive, 1,
|
|
OP_MANDATORY, NO_MORE_FIELDS
|
|
},
|
|
{
|
|
OP_MANDATORY, STRING_FIELD, siVertical, 0,
|
|
OP_MANDATORY, STRING_FIELD, siSync, 0,
|
|
OP_MANDATORY, STRING_FIELD, siPolarity, 0,
|
|
OP_MANDATORY, STRING_FIELD, siEqual, 0,
|
|
OP_STORE_CHOICE, UCHAR_FIELD,
|
|
FIELD_OFFSET(CM_MONITOR_PREADJUSTED_TIMING, VerticalSyncPolarity), 0,
|
|
OP_MULTIPLE_CHOICE, STRING_FIELD, siNegative, 0,
|
|
OP_MULTIPLE_CHOICE, STRING_FIELD, siPositive, 1,
|
|
OP_MANDATORY, NO_MORE_FIELDS
|
|
},
|
|
{
|
|
OP_MANDATORY, STRING_FIELD, siHorizontal, 0,
|
|
OP_MANDATORY, STRING_FIELD, siActive, 0,
|
|
OP_MANDATORY, STRING_FIELD, siEqual, 0,
|
|
OP_STORE, ULONG_FIELD,
|
|
FIELD_OFFSET(CM_MONITOR_PREADJUSTED_TIMING, HorizontalAcitve), 3,
|
|
OP_MANDATORY, STRING_FIELD, siuSec, 0,
|
|
OP_MANDATORY, NO_MORE_FIELDS
|
|
},
|
|
{
|
|
OP_MANDATORY, STRING_FIELD, siHorizontal, 0,
|
|
OP_MANDATORY, STRING_FIELD, siRight, 0,
|
|
OP_MANDATORY, STRING_FIELD, siBorder, 0,
|
|
OP_MANDATORY, STRING_FIELD, siEqual, 0,
|
|
OP_STORE, USHORT_FIELD,
|
|
FIELD_OFFSET(CM_MONITOR_PREADJUSTED_TIMING, HorizontalRightBorder), 3,
|
|
OP_MANDATORY, STRING_FIELD, siuSec, 0,
|
|
OP_MANDATORY, NO_MORE_FIELDS
|
|
},
|
|
{
|
|
OP_MANDATORY, STRING_FIELD, siHorizontal, 0,
|
|
OP_MANDATORY, STRING_FIELD, siFront, 0,
|
|
OP_MANDATORY, STRING_FIELD, siPorch, 0,
|
|
OP_MANDATORY, STRING_FIELD, siEqual, 0,
|
|
OP_STORE, USHORT_FIELD,
|
|
FIELD_OFFSET(CM_MONITOR_PREADJUSTED_TIMING, HorizontalFrontPorch), 3,
|
|
OP_MANDATORY, STRING_FIELD, siuSec, 0,
|
|
OP_MANDATORY, NO_MORE_FIELDS
|
|
},
|
|
{
|
|
OP_MANDATORY, STRING_FIELD, siHorizontal, 0,
|
|
OP_MANDATORY, STRING_FIELD, siPulse, 0,
|
|
OP_MANDATORY, STRING_FIELD, siWidth, 0,
|
|
OP_MANDATORY, STRING_FIELD, siEqual, 0,
|
|
OP_STORE, USHORT_FIELD,
|
|
FIELD_OFFSET(CM_MONITOR_PREADJUSTED_TIMING, HorizontalPulseWidth), 3,
|
|
OP_MANDATORY, STRING_FIELD, siuSec, 0,
|
|
OP_MANDATORY, NO_MORE_FIELDS
|
|
},
|
|
{
|
|
OP_MANDATORY, STRING_FIELD, siHorizontal, 0,
|
|
OP_MANDATORY, STRING_FIELD, siBack, 0,
|
|
OP_MANDATORY, STRING_FIELD, siPorch, 0,
|
|
OP_MANDATORY, STRING_FIELD, siEqual, 0,
|
|
OP_STORE, USHORT_FIELD,
|
|
FIELD_OFFSET(CM_MONITOR_PREADJUSTED_TIMING, HorizontalBackPorch), 3,
|
|
OP_MANDATORY, STRING_FIELD, siuSec, 0,
|
|
OP_MANDATORY, NO_MORE_FIELDS
|
|
},
|
|
{
|
|
OP_MANDATORY, STRING_FIELD, siHorizontal, 0,
|
|
OP_MANDATORY, STRING_FIELD, siLeft, 0,
|
|
OP_MANDATORY, STRING_FIELD, siBorder, 0,
|
|
OP_MANDATORY, STRING_FIELD, siEqual, 0,
|
|
OP_STORE, USHORT_FIELD,
|
|
FIELD_OFFSET(CM_MONITOR_PREADJUSTED_TIMING, HorizontalLeftBorder), 3,
|
|
OP_MANDATORY, STRING_FIELD, siuSec, 0,
|
|
OP_MANDATORY, NO_MORE_FIELDS
|
|
},
|
|
{
|
|
OP_MANDATORY, STRING_FIELD, siVertical, 0,
|
|
OP_MANDATORY, STRING_FIELD, siActive, 0,
|
|
OP_MANDATORY, STRING_FIELD, siEqual, 0,
|
|
OP_STORE, ULONG_FIELD,
|
|
FIELD_OFFSET(CM_MONITOR_PREADJUSTED_TIMING, VerticalActive), 3,
|
|
OP_MANDATORY, STRING_FIELD, simSec, 0,
|
|
OP_MANDATORY, NO_MORE_FIELDS
|
|
},
|
|
{
|
|
OP_MANDATORY, STRING_FIELD, siVertical, 0,
|
|
OP_MANDATORY, STRING_FIELD, siBottom, 0,
|
|
OP_MANDATORY, STRING_FIELD, siBorder, 0,
|
|
OP_MANDATORY, STRING_FIELD, siEqual, 0,
|
|
OP_STORE, USHORT_FIELD,
|
|
FIELD_OFFSET(CM_MONITOR_PREADJUSTED_TIMING, VerticalBottomBorder), 3,
|
|
OP_MANDATORY, STRING_FIELD, simSec, 0,
|
|
OP_MANDATORY, NO_MORE_FIELDS
|
|
},
|
|
{
|
|
OP_MANDATORY, STRING_FIELD, siVertical, 0,
|
|
OP_MANDATORY, STRING_FIELD, siFront, 0,
|
|
OP_MANDATORY, STRING_FIELD, siPorch, 0,
|
|
OP_MANDATORY, STRING_FIELD, siEqual, 0,
|
|
OP_STORE, USHORT_FIELD,
|
|
FIELD_OFFSET(CM_MONITOR_PREADJUSTED_TIMING, VerticalFrontPorch), 3,
|
|
OP_MANDATORY, STRING_FIELD, simSec, 0,
|
|
OP_MANDATORY, NO_MORE_FIELDS
|
|
},
|
|
{
|
|
OP_MANDATORY, STRING_FIELD, siVertical, 0,
|
|
OP_MANDATORY, STRING_FIELD, siPulse, 0,
|
|
OP_MANDATORY, STRING_FIELD, siWidth, 0,
|
|
OP_MANDATORY, STRING_FIELD, siEqual, 0,
|
|
OP_STORE, USHORT_FIELD,
|
|
FIELD_OFFSET(CM_MONITOR_PREADJUSTED_TIMING, VerticalPulseWidth), 3,
|
|
OP_MANDATORY, STRING_FIELD, simSec, 0,
|
|
OP_MANDATORY, NO_MORE_FIELDS
|
|
},
|
|
{
|
|
OP_MANDATORY, STRING_FIELD, siVertical, 0,
|
|
OP_MANDATORY, STRING_FIELD, siBack, 0,
|
|
OP_MANDATORY, STRING_FIELD, siPorch, 0,
|
|
OP_MANDATORY, STRING_FIELD, siEqual, 0,
|
|
OP_STORE, USHORT_FIELD,
|
|
FIELD_OFFSET(CM_MONITOR_PREADJUSTED_TIMING, VerticalBackPorch), 3,
|
|
OP_MANDATORY, STRING_FIELD, simSec, 0,
|
|
OP_MANDATORY, NO_MORE_FIELDS
|
|
},
|
|
{
|
|
OP_MANDATORY, STRING_FIELD, siVertical, 0,
|
|
OP_MANDATORY, STRING_FIELD, siTop, 0,
|
|
OP_MANDATORY, STRING_FIELD, siBorder, 0,
|
|
OP_MANDATORY, STRING_FIELD, siEqual, 0,
|
|
OP_STORE, USHORT_FIELD,
|
|
FIELD_OFFSET(CM_MONITOR_PREADJUSTED_TIMING, VerticalTopBorder), 3,
|
|
OP_MANDATORY, STRING_FIELD, simSec, 0,
|
|
OP_MANDATORY, NO_MORE_FIELDS
|
|
},
|
|
{
|
|
OP_STOP
|
|
}
|
|
};
|