1*fordeck ddafile $Revision: 7.7 $
2      Subroutine dDaFile(Lu,iOpt,Buf,lBuf_,iDisk)
3************************************************************************
4*                                                                      *
5*     (c) Copyright. All rights reserved                               *
6*                                                                      *
7*     This code or parts thereof may not be copdied or redistributed,  *
8*     without the written permission of the author. The use is re -    *
9*     stricted to research purposes only, and the matrial may not be   *
10*     included in any commercial product.                              *
11*                                                                      *
12*----------------------------------------------------------------------*
13*                                                                      *
14*     purpose:                                                         *
15*     Control direct access I/O operations                             *
16*                                                                      *
17*     calling arguments:                                               *
18*     Lu      : integer, input                                         *
19*               logical unit number (Lu={1,2,...40,50,60,70,80,90}     *
20*     iOpt    : integer, input                                         *
21*               option code                                            *
22*               iOpt= 0 dummy write                                    *
23*               iOpt= 1 synchonous write                               *
24*               iOpt= 2 synchonous read                                *
25*               iOpt= 5 synchonous rewind                              *
26*               iOpt= 6 asynchronous write                             *
27*               iOpt= 7 asynchronous read                              *
28*               iOpt=10 asynchronous rewind                            *
29*               Note: At present the asynchronous modes are not        *
30*                     supported and work identically the synchonous    *
31*                     modes                                            *
32*     Buf     : array of integers, input/output                        *
33*               Buffer carrying/receiving the data to write/read       *
34*     lBuf    : integer, input                                         *
35*               length of the buffer Buf                               *
36*     iDisk   : integer, input/output                                  *
37*               disk address                                           *
38*                                                                      *
39*----------------------------------------------------------------------*
40*                                                                      *
41*     written by:                                                      *
42*     P.O. Widmark, IBM Sweden, 1991                                   *
43*     M.P. Fuelscher, University of Lund, Sweden, 1993, 1996, 1997     *
44*     L Serrano-Andres,University of Lund, Sweden, 1996                *
45*     R. Lindh, Univeristy of Lund, Sweden, 2001                       *
46*                                                                      *
47************************************************************************
48
49      Implicit Integer (A-Z)
50
51*#include <SysDef.fh>
52      Include 'blksize.fh'
53      Include 'fio.inc'
54
55      Real*8 Buf(lBuf_)
56
57*      Include 'fnc.inc'
58
59      If ( Query ) Call LUCIAqEnter('dDafile')
60      min_Block_Length=MBL(Lu)
61*      lBuf=lBuf_*RtoI
62      lBuf=lBuf_
63      If ( Trace ) then
64        Write (6,*) ' >>> Enter dDaFile <<<'
65        Write (6,*) ' unit      :',Lu
66        Write (6,*) ' option    :',iOpt
67        Write (6,*) ' length    :',lBuf
68        Write (6,*) ' disk adr. :',iDisk
69      End If
70
71      Call iDaFile_(Lu,iOpt,Buf,lBuf,iDisk)
72
73      If ( Trace ) Write (6,*) ' >>> Exit dDaFile <<<'
74      If ( Query ) Call LUCIAqExit('dDafile')
75      Return
76      End
77c $Id$
78