home *** CD-ROM | disk | FTP | other *** search
/ Fresh Fish 4 / FreshFish_May-June1994.bin / bbs / cbm / nduk-v39.lha / V39 / include / exec / semaphores.i < prev    next >
Text File  |  1992-09-24  |  2KB  |  69 lines

  1.     IFND    EXEC_SEMAPHORES_I
  2. EXEC_SEMAPHORES_I    SET    1
  3. **
  4. **    $VER: semaphores.i 39.1 (07.02.92)
  5. **    Includes Release 39.108
  6. **
  7. **    Definitions for locking functions.
  8. **
  9. **    (C) Copyright 1986-1992 Commodore-Amiga, Inc.
  10. **        All Rights Reserved
  11. **
  12.  
  13.     IFND EXEC_NODES_I
  14.     INCLUDE "exec/nodes.i"
  15.     ENDC    ; EXEC_NODES_I
  16.  
  17.     IFND EXEC_LISTS_I
  18.     INCLUDE "exec/lists.i"
  19.     ENDC    ; EXEC_LISTS_I
  20.  
  21.     IFND EXEC_PORTS_I
  22.     INCLUDE "exec/ports.i"
  23.     ENDC    ; EXEC_PORTS_I
  24.  
  25.  
  26. *----------------------------------------------------------------
  27. *
  28. *   Signal Semaphore Structure
  29. *
  30. *----------------------------------------------------------------
  31.  
  32. ** Private structure used by ObtainSemaphore()
  33.  STRUCTURE  SSR,MLN_SIZE
  34.     APTR    SSR_WAITER
  35.     LABEL   SSR_SIZE
  36.  
  37. ** Signal Semaphore data structure
  38.  STRUCTURE  SS,LN_SIZE
  39.     WORD    SS_NESTCOUNT
  40.     STRUCT  SS_WAITQUEUE,MLH_SIZE
  41.     STRUCT  SS_MULTIPLELINK,SSR_SIZE
  42.     APTR    SS_OWNER
  43.     WORD    SS_QUEUECOUNT
  44.     LABEL   SS_SIZE
  45.  
  46. ** Semaphore procure message (for use in V39 Procure/Vacate ****/
  47.  STRUCTURE SemaphoreMessage,MN_SIZE
  48.     APTR    SSM_SEMAPHORE
  49.     LABEL   SSM_SIZEOF
  50.  
  51.  
  52. *----------------------------------------------------------------
  53. *
  54. *   Semaphore Structure (Old Procure/Vacate type, not reliable)
  55. *
  56. *----------------------------------------------------------------
  57.  
  58.  
  59.  STRUCTURE  SM,MP_SIZE        ; Do not use these semaphores!
  60.     WORD    SM_BIDS          ; number of bids for lock
  61.     LABEL   SM_SIZE
  62.  
  63. *------ unions:
  64.  
  65. SM_LOCKMSG    EQU  MP_SIGTASK
  66.  
  67.  
  68.     ENDC    ; EXEC_SEMAPHORES_I
  69.