Topic : The ATARI Compendium
Author : Scott Sanders / JAY Software
Version : 1.25 (20/6/2003)
Subject : Documentation
Nodes : 1117
Index Size : 32614
HCP-Version : 6
Compiled on : Atari
@charset : UTF-8
@lang : en
@default :
@help : %About
@options : +g -i -t4 +y +z
@width : 100
View Ref-FileFsetdta()Fsfirst()Fsnext()Fgetdta() GEMDOSSyntaxDTA *Fgetdta( VOID )
Function Fgetdta() returns current DTA (Disk Transfer Address)
Opcode 47 (0x2F)
Availability All GEMDOSversions.
Parameters None.
Binding move.w #$2F,-(sp)
trap #1
addq.l #2,sp
Return Value Fgetdta() returns a pointer to the current Disk Transfer
Address. The structure DTA is defined as:
typedef struct
{
BYTE d_reserved[21];
BYTE d_attrib;
UWORD d_time;
UWORD d_date;
LONG d_length;
char d_fname[14];
} DTA;
Comments When an application starts, its DTA overlaps the command
line string in the processes' basepage. Any use of the
Fsfirst() or Fsnext() call without first reallocating a new
DTA will cause the processes' command line to be
corrupted. To prevent this, you should use Fsetdta() to
define a new DTA structure for your process prior to using
Fsfirst() or Fsnext(). Be careful to avoid assigning your
DTA to a local or automatic variable without setting it to
its original value before the variable goes out of scope.
See Also Fsetdta(), Fsfirst(), Fsnext()