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-FileFgetdta()Fsfirst()Fsnext()Fsetdta() GEMDOSSyntaxVOID Fsetdta( ndta )
DTA *ndta;
Function Fsetdta() sets the location of a new DTA (Disk Transfer
Address) in memory.
Opcode 26 (0x1A)
Availability All GEMDOSversions.
Parameters ndta is a pointer to a valid memory area which will be used
as the new DTA. The DTA structure is defined under the entry
for Fgetdta().
Binding pea ndta
move.w #$1A,-(sp)
trap #1
addq.l #6,sp
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 Fgetdta(), Fsfirst(), Fsnext()