New bitmap method SetRGBConversionFunction which can be used to
[tangerine.git] / rom / dos / inhibit.c
blob1500b45632b33ea4e9c25678c4b7114b83269aec
1 /*
2 Copyright © 1995-2006, The AROS Development Team. All rights reserved.
3 $Id$
4 */
5 #include <proto/exec.h>
7 #include "dos_intern.h"
9 /*****************************************************************************
11 NAME */
12 #include <proto/dos.h>
14 AROS_LH2(LONG, Inhibit,
16 /* SYNOPSIS */
17 AROS_LHA(CONST_STRPTR, name, D1),
18 AROS_LHA(LONG, onoff, D2),
20 /* LOCATION */
21 struct DosLibrary *, DOSBase, 121, Dos)
23 /* FUNCTION
25 Stop a filesystem from being used.
27 INPUTS
29 name -- Name of the device to inhibit (including a ':')
30 onoff -- Specify whether to inhinit (DOSTRUE) or uninhibit (DOSFALSE)
31 the device
33 RESULT
35 A boolean telling whether the action was carried out.
37 NOTES
39 After uninhibiting a device anything might have happened like the disk
40 in the drive was removed.
42 EXAMPLE
44 BUGS
46 SEE ALSO
48 INTERNALS
50 *****************************************************************************/
52 AROS_LIBFUNC_INIT
53 AROS_LIBBASE_EXT_DECL(struct DosLibrary *, DOSBase)
55 struct IOFileSys iofs;
57 InitIOFS(&iofs, FSA_INHIBIT, DOSBase);
59 iofs.IOFS.io_Device = GetDevice(name, &iofs.IOFS.io_Unit, DOSBase);
61 if(iofs.IOFS.io_Device == NULL)
62 return DOSFALSE;
64 iofs.io_Union.io_INHIBIT.io_Inhibit = onoff == DOSTRUE ? TRUE : FALSE;
66 DosDoIO(&iofs.IOFS);
68 return iofs.io_DosError == 0 ? DOSTRUE : DOSFALSE;
70 AROS_LIBFUNC_EXIT
71 } /* Inhibit */