home *** CD-ROM | disk | FTP | other *** search
/ Club Amiga de Montreal - CAM / CAM_CD_1.iso / files / 224a.lha / Includes / exec / semaphores < prev    next >
Encoding:
Text File  |  1989-04-08  |  1.2 KB  |  40 lines

  1.  
  2. {s Semaphore
  3.     struct 34 sm_MsgPort        ( { MsgPort=34;exec/ports )
  4.     WORD   sm_Bids
  5.         soffset @  16 soffset !   ( same as:  )
  6.     APTR   sm_LockMsg             (   #define sm_LockMsg  mp_SigTask )
  7.         soffset !
  8.    s}
  9.  
  10. {s SemaphoreRequest
  11.     struct  8 sr_Link       ( { MinNode=8;exec/nodes )
  12.     APTR    sr_Waiter
  13.    s}
  14.  
  15. {s SignalSemaphore
  16.     struct  14 ss_Link      ( { Node=14;exec/nodes )
  17.     WORD    ss_NestCount
  18.     struct  12 ss_WaitQueue  ( { MinList=12;exec/lists )
  19.     STRUCT  SemaphoreRequest ss_MultipleLink
  20.     APTR    ss_Owner
  21.     WORD    ss_QueueCount
  22.    s}
  23.  
  24. >Exec   -600 (r A1 r)    AddSemaphore        (s sem -- )
  25. >Exec   -606 (r A1 r)    RemSemaphore        (s sem -- )
  26.  
  27. >Exec   -564 (r A0 r)    ObtainSemaphore     (s sem -- )
  28. >Exec   -570 (r A0 r)    ReleaseSemaphore    (s sem -- )
  29.  
  30. >Exec   -582 (r A0 r)    ObtainSemaphoreList (s sem -- )
  31. >Exec   -588 (r A0 r)    ReleaseSemaphoreList (s sem -- )
  32.  
  33. >Exec ^ -576 (r A0 r)    AttemptSemaphore    (s sem -- f )
  34. >Exec ^ -594 (r A1 r)    FindSemaphore       (s sem -- sem )
  35. >Exec   -558 (r A0 r)    InitSemaphore       (s sem -- )
  36.  
  37. >Exec ^ -540 (r A1 A0 r) Procure             (s bidmsg semap -- f )
  38. >Exec   -546 (r A0 r)    Vacate              (s sem -- )
  39.  
  40.