home *** CD-ROM | disk | FTP | other *** search
/ back2roots/padua / padua.7z / padua / lang / odinlib2_7.lzh / ODIN.I < prev    next >
Encoding:
Text File  |  1990-10-16  |  1.3 KB  |  66 lines

  1. ;odin2.i
  2. ;includefile for odin.library.
  3. ;using semaphore instead of spacemanager
  4. ;Last updated 27-aug-90
  5. ;Version = 2.3
  6.  
  7.     IFND    ODIN_I
  8. ODIN_I    EQU    1
  9.  
  10. odinNAME    MACRO
  11.     DC.B    'odin.library',0
  12.     CNOP    0,2
  13.     ENDM
  14.  
  15.     STRUCTURE odin,LIB_SIZE
  16.     APTR    odin_SegList
  17.     UBYTE    odin_Flags
  18.     UBYTE    odin_pad
  19.     ;------------------------------------------------
  20.     ;- You must ObtainSemaphore() this before using
  21.     ;- WaitList!
  22.     ;------------------------------------------------
  23.     STRUCT    odin_Sem,SS_SIZE        ;signal semaphore
  24.     STRUCT    odin_WaitList,MLH_SIZE
  25.     LABEL    odin_Sizeof
  26.  
  27. ;--- prefix for envelopes
  28.  
  29.     STRUCTURE    Envelope,MLN_SIZE    ;first a link for use in e-space
  30.     APTR    e_name        ;ptr to ASCIIZ string
  31.     ULONG    e_len        ;bytelength of contents
  32.     APTR    e_copyfunc    ;opt. C-function for copying
  33.     APTR    e_proc        ;C-function to call in Eval
  34.     LABEL    e_sizeof
  35.  
  36. ;--- wait-structure used in WaitList
  37.  
  38.     STRUCTURE    WaitStruct,MLN_SIZE
  39.     APTR    ow_envelope
  40.     APTR    ow_waittask
  41.     UBYTE    ow_sigbit
  42.     BYTE    ow_type
  43.     LABEL    ow_sizeof
  44.  
  45. ow_replyport    EQU    ow_waittask
  46.  
  47. ;--- ow_types
  48.  
  49. RD_REQUEST    EQU    0
  50. IN_REQUEST    EQU    1
  51. ASYNCIN_REQUEST    EQU    2
  52. ASYNCRD_REQUEST    EQU    3
  53.  
  54. ;--- the et parameter to Eval()
  55.  
  56. EVAL_PROCESS    EQU    0
  57. EVAL_TASK        EQU    1
  58.  
  59. ;--- the struct put to a MsgPort by AsyncIn/AsyncRd
  60.  
  61.     STRUCTURE    EnvMsg,MN_SIZE
  62.     APTR    em_env;
  63.     LABEL    em_sizeof
  64.  
  65.     ENDC    !ODIN_I
  66.