•  Back 
  •  The make-up of a DFS 
  •  Index 
  •  Tree View 
  •  Cross references 
  •  Help page 
  •  Show info about hypertext 
  •  View a new file 
Topic       : TOS - The Operating System
Author      : 
Version     : tos.hyp (December 19, 2008)
Subject     : Programmieren/Atari
Nodes       : 3010
Index Size  : 93790
HCP-Version : 5
Compiled on : Atari
@charset    : atarist
@lang       : 
@default    : Title
@help       : 
@options    : +g -i -s +x +zz -t4
@width      : 70
View Ref-File11.5.15.1.5  dfs_drv_open                                          TOS

 Name:        »dfs_drv_open«

 Parameters:

                  a0  =  DMD *d 
               -> d0  =  long errcode 

 Description: MagiC supports exactly 26 simultaneously active 
              filesystems that are assigned letters 'A'..'Z'. 
              dfs_drv_open has two tasks:

                1. At the first access to a drive (say D:), the kernel 
                   creates a DMD (drive medium descriptor) and 
                   'offers' this to the XFSs. The DOS_XFS offers this 
                   again to all DFS drivers in turn. The entry d_dfs 
                   is still a NULL-pointer, d_drive is initialized 
                   (between 0 and 25, corresponding to 'A'..'Z'). The 
                   DFS drivers now attempt to recognize 'their' 
                   filesystem on the drive. If this succeeds, then 
                   d_dfs and d_root have to be initialized, in which 
                   case the return value is then E_OK. Else EDRIVE is 
                   reported, and the DOS_XFS tries the next DFS.

                2. At a repeated access d_dfs is already initialized, 
                   and the DFS has the opportunity to test for a 
                   medium change. If everything is in order, E_OK has 
                   to be returned. Else the disk medium change routine 
                   of the kernel has to be called and E_CHNG returned. 
                   For this one obtains the pointer to the medium 
                   change routine of the kernel with Dcntl.

 Group:       Make-up of a DFS

 See also:    MagiC's DFS-concept