home *** CD-ROM | disk | FTP | other *** search
/ RISC DISC 1 / RISC_DISC_1.iso / pd_share / code / oslib / h / free < prev    next >
Encoding:
Text File  |  1994-09-07  |  2.7 KB  |  95 lines

  1. #ifndef free_H
  2. #define free_H
  3.  
  4. /* C header file for Free
  5.  * written by DefMod (Sep  7 1994) on Wed Sep  7 21:23:32 1994
  6.  * Copyright © Acorn Computers Ltd, 1994
  7.  */
  8.  
  9. /*************************************************************************
  10.  * This source file was written by Acorn Computers Limited. It is part   *
  11.  * of the OSLib library for writing applications for RISC OS. It may be  *
  12.  * used freely in the creation of programs for RISC OS.                  *
  13.  *************************************************************************/
  14.  
  15. #ifndef types_H
  16.    #include "types.h"
  17. #endif
  18.  
  19. #ifndef os_H
  20.    #include "os.h"
  21. #endif
  22.  
  23. /**********************************
  24.  * SWI names and SWI reason codes *
  25.  **********************************/
  26. #undef  Free_Register
  27. #define Free_Register                           0x444C0
  28. #undef  XFree_Register
  29. #define XFree_Register                          0x644C0
  30. #undef  Free_DeRegister
  31. #define Free_DeRegister                         0x444C1
  32. #undef  XFree_DeRegister
  33. #define XFree_DeRegister                        0x644C1
  34.  
  35. /*************************
  36.  * Function declarations *
  37.  *************************/
  38.  
  39. #ifdef __cplusplus
  40.    extern "C" {
  41. #endif
  42.  
  43. /*************************************************************
  44.  * NOTE: The following functions provide direct access to    *
  45.  *       the SWI's noted in the function description.        *
  46.  *       Please read the relevant PRM section for more       *
  47.  *       information on their input/output parameters.       *
  48.  *************************************************************/
  49.  
  50. /* ------------------------------------------------------------------------
  51.  * Function:      free_register()
  52.  *
  53.  * Description:   Provides an interactive free space display for a filing
  54.  *                system
  55.  *
  56.  * Input:         fs_no - value of R0 on entry
  57.  *                fn - value of R1 on entry
  58.  *                workspace - value of R2 on entry
  59.  *
  60.  * Other notes:   Calls SWI 0x444C0.
  61.  */
  62.  
  63. extern os_error *xfree_register (int fs_no,
  64.       void *fn,
  65.       void *workspace);
  66. extern void free_register (int fs_no,
  67.       void *fn,
  68.       void *workspace);
  69.  
  70. /* ------------------------------------------------------------------------
  71.  * Function:      free_de_register()
  72.  *
  73.  * Description:   Removes the filing system from the list of filing systems
  74.  *                known by the Free module
  75.  *
  76.  * Input:         fs_no - value of R0 on entry
  77.  *                fn - value of R1 on entry
  78.  *                workspace - value of R2 on entry
  79.  *
  80.  * Other notes:   Calls SWI 0x444C1.
  81.  */
  82.  
  83. extern os_error *xfree_de_register (int fs_no,
  84.       void *fn,
  85.       void *workspace);
  86. extern void free_de_register (int fs_no,
  87.       void *fn,
  88.       void *workspace);
  89.  
  90. #ifdef __cplusplus
  91.    }
  92. #endif
  93.  
  94. #endif
  95.