User Guide
5-2  Ampex 1308911-02
Model No.
Running Head
DST API Overview libdd2 API Functions
dst_rewind()  Rewind tape to Beginning of Partition (BOP). 
dst_setdrive()  Change tape drive configuration parameters. 
dst_setparam()  Change tape drive data block size and tape device driver debug 
level. 
dst_setpos()  Set tape drive position to the specified location. 
dst_space()    Change current position by a specified number of blocks or files, or 
set current position to end of data (EOD). 
dst_status()  Get information on tape drive and tape cartridge.
dst_unload()  Unload the tape cartridge from the tape drive. 
dst_version()  Get version information for the tape device driver. 
dst_weof()  Write filemark(s) to tape. 
dst_weof_ex() Write filemark(s) to tape (extended).
5.2.2 Position Specifications
The libdd2 API permits applications to specify tape drive position in either token form or 
standard C structure form. Three positioning formats are supported: DST (standard DD-2), 
DST600, and DIS. Each format can be converted from token form to structure form or vica 
versa. In order to obtain DIS timecode, however, a position must be retrieved from tape in 
structure form and converted to a token.
The token form of a position specification is a portable byte array that is not subject to host 
platform byte-ordering or alignment variations. A token position written on one host platform 
can be read by a program running on a different host platform. The structure form of a position 
specification may not be portable across platforms.
The libdd2 API functions use the following structures, unions, and typedefs to get, set, and 
convert position.
dst_position_st
This structure type is used to get, set, or convert a position specification.
typedef struct
{
dst_pos_type_en type; /* Position type */
dst_position_un pos; /* Position */
} dst_position_st;










