home *** CD-ROM | disk | FTP | other *** search
/ Dave Lowe: AssemPro For Development Amiga Driver / Lowe_AssemProForDevelopmentAmigaDriver.adf / Includes / exec / semaphores.i < prev    next >
Encoding:
Text File  |  1978-06-06  |  1.5 KB  |  73 lines

  1.  
  2.     IFND EXEC_SEMAPHORES_I@
  3. EXEC_SEMAPHORES_I@ = 1
  4. ;*********************************************************************
  5. ;
  6. ;   Commodore Amiga -- ROM Operating System Executive Include File
  7. ;
  8. ;*********************************************************************
  9. ;
  10. ;   Source Control:
  11. ;
  12. ;       $Header: semaphores.i,v 33.1 86/03/07 17:31:08 neil Exp $
  13. ;
  14. ;       $Locker:  $
  15. ;
  16. ;*********************************************************************
  17.  
  18.     IFND EXEC_NODES_I@
  19.     INCLUDE "exec/nodes.i"
  20.     ENDIF
  21.  
  22.     IFND EXEC_LISTS_I@
  23.     INCLUDE "exec/lists.i"
  24.     ENDIF
  25.  
  26.     IFND EXEC_PORTS_I@
  27.     INCLUDE "exec/ports.i"
  28.     ENDIF
  29.  
  30.  
  31. ;----------------------------------------------------------------
  32. ;
  33. ;   Semaphore Structure
  34. ;
  35. ;----------------------------------------------------------------
  36.  
  37.  
  38.  STRUCTURE  SM,MP_SIZE
  39.     WORD    SM_BIDS           ; number of bids for lock
  40.     LABEL   SM_SIZE
  41.  
  42.  
  43. ;------ unions:
  44.  
  45. SM_LOCKMSG    EQU  MP_SIGTASK
  46.  
  47.  
  48. ;----------------------------------------------------------------
  49. ;
  50. ;   Signal Semaphore Structure
  51. ;
  52. ;----------------------------------------------------------------
  53.  
  54. ; this is the structure used to request a signal semaphore -- allocated
  55. ; on the fly by ObtainSemaphore()
  56.  STRUCTURE  SSR,MLN_SIZE
  57.     APTR    SSR_WAITER
  58.     LABEL   SSR_SIZE
  59.  
  60.  
  61. ; this is the actual semaphore itself -- allocated statically
  62.  STRUCTURE  SS,LN_SIZE
  63.     SHORT   SS_NESTCOUNT
  64.     STRUCT  SS_WAITQUEUE,MLH_SIZE
  65.     STRUCT  SS_MULTIPLELINK,SSR_SIZE
  66.     APTR    SS_OWNER
  67.     SHORT   SS_QUEUECOUNT
  68.     LABEL   SS_SIZE
  69.  
  70.     ENDIF
  71.     END
  72.