home *** CD-ROM | disk | FTP | other *** search
/ ARM Club 3 / TheARMClub_PDCD3.iso / hensa / programming / oslib / oslib_1 / OSLib / Computer / Hdr / OSFind < prev    next >
Encoding:
Text File  |  1995-06-22  |  2.7 KB  |  111 lines

  1. ;Assembler header file for OSFind
  2. ;written by DefMod (Jun 12 1995) on Thu Jun 22 12:14:15 1995
  3. ;Jonathan Coxhead, Acorn Computers Ltd
  4.  
  5.         [       :LNOT: :DEF: Get_Types
  6.         GBLS    Get_Types
  7.         ]
  8.         [       :LNOT: :DEF: Types_Hdr
  9. Get_Types                       SETS    "GET OS:Hdr.Types"
  10.         |
  11. Get_Types                       SETS    ""
  12.         ]
  13.         $Get_Types
  14.  
  15.         [       :LNOT: :DEF: Get_OS
  16.         GBLS    Get_OS
  17.         ]
  18.         [       :LNOT: :DEF: OS_Hdr
  19. Get_OS                          SETS    "GET OS:Hdr.OS"
  20.         |
  21. Get_OS                          SETS    ""
  22.         ]
  23.         $Get_OS
  24.  
  25.         [       :LNOT: :DEF: Get_FileSwitch
  26.         GBLS    Get_FileSwitch
  27.         ]
  28.         [       :LNOT: :DEF: FileSwitch_Hdr
  29. Get_FileSwitch                  SETS    "GET OS:Hdr.FileSwitch"
  30.         |
  31. Get_FileSwitch                  SETS    ""
  32.         ]
  33.         $Get_FileSwitch
  34.  
  35.         [       :LNOT: :DEF: OSFind_Hdr
  36.         GBLS    OSFind_Hdr
  37.  
  38. ;Symbols for constants
  39. OSFind_Path                     *       &1
  40. OSFind_PathVar                  *       &2
  41. OSFind_NoPath                   *       &3
  42. OSFind_ErrorIfAbsent            *       &8
  43. OSFind_ErrorIfDir               *       &4
  44.  
  45. ;Symbols for structure offsets and sizes
  46. OSFind_Flags                    *       Bits
  47.  
  48.  
  49. ;Symbols for SWI's and SWI reason codes
  50. XOS_Find                        *       &2000D
  51. OS_Find                         *       &D
  52.  
  53. OSFind_Openin                   *       &40
  54.    ;Entry
  55.    ;  R0 = &40 :OR: flags (OSFind_Flags)
  56.    ;  R1 -> file_name (String)
  57.    ;  R2 -> path (String)
  58.    ;Exit
  59.    ;  R0 = file (OS_F)
  60.  
  61. OSFind_Openout                  *       &80
  62.    ;Entry
  63.    ;  R0 = &80 :OR: flags (OSFind_Flags)
  64.    ;  R1 -> file_name (String)
  65.    ;  R2 -> path (String)
  66.    ;Exit
  67.    ;  R0 = file (OS_F)
  68.  
  69. OSFind_Openup                   *       &C0
  70.    ;Entry
  71.    ;  R0 = &C0 :OR: flags (OSFind_Flags)
  72.    ;  R1 -> file_name (String)
  73.    ;  R2 -> path (String)
  74.    ;Exit
  75.    ;  R0 = file (OS_F)
  76.  
  77. OSFind_Close                    *       &0
  78.    ;Entry
  79.    ;  R0 = &0
  80.    ;  R1 = file (OS_F)
  81.  
  82. FindV                           *       &D
  83.  
  84. UpCallFind_CreateOpenup         *       &101
  85.    ;Entry
  86.    ;  R0 = &3
  87.    ;  R1 -> file_name (String)
  88.    ;  R2 = file (OS_F)
  89.    ;  R6 -> special (String)
  90.    ;  R8 = fs_info (FileSwitch_FSInfo)
  91.    ;  R9 = &101
  92.  
  93. UpCallFind_Openup               *       &102
  94.    ;Entry
  95.    ;  R0 = &3
  96.    ;  R1 -> file_name (String)
  97.    ;  R2 = file (OS_F)
  98.    ;  R6 -> special (String)
  99.    ;  R8 = fs_info (FileSwitch_FSInfo)
  100.    ;  R9 = &102
  101.  
  102. UpCallFind_Close                *       &103
  103.    ;Entry
  104.    ;  R0 = &3
  105.    ;  R1 = file (OS_F)
  106.    ;  R8 = fs_info (FileSwitch_FSInfo)
  107.    ;  R9 = &103
  108.  
  109.         ]
  110.         END
  111.