NAME
DeviceTuple -- Decode a device tuple
SYNOPSIS
return=DeviceTuple( tuple_data, storage)
a0 a1
ULONG DeviceTuple( ubyte *, struct devicetdata *);
FUNCTION
Extracts SIZE, TYPE, and SPEED from a device tuple (generally
obtained with copytuple()).
INPUTS
tuple_data - Pointer to a CISTPL_DEVICE tuple (generally obtained
with copytuple()).
storage - Pointer to a devicetdata structure in which results
are to be stored.
struct devicetdata {
ULONG dtd_DTsize; /* Size of card (bytes) */
ULONG dtd_DTspeed; /* Speed in nanoseconds */
ubyte dtd_dttype; /* type of card */
ubyte dtd_dtflags; /* other flags */
};
RETURN
SIZE (same as dtd_DTsize) if the device tuple could be decoded.
FALSE (0) if the tuple is believed to be invalid. The tuple is
considered to be invalid if:
The tuple link value is 0.
The device type/speed byte is $00, or $FF.
The device type is DTYPE_EXTEND, which is undefined
as of this writing.
The extended speed byte is a value which is
undefined as of this writing.
The extended speed byte is extended again which is
undefined as of this writing.
The device Size byte is $FF.
NOTES
Some cards may not have a size specified in the device
tuple. An example would be an I/O card. The size would be
returned as one (1) in this case.
You should not call this function with a partial CISTPL_DEVICE
tuple, or the return values may be junk.
SEE ALSO
copytuple(), resources/card.h, resources/card.i