home *** CD-ROM | disk | FTP | other *** search
/ Club Amiga de Montreal - CAM / CAM_CD_1.iso / files / 066.lha / MidiDev / midibase.i < prev    next >
Text File  |  1986-11-20  |  2KB  |  63 lines

  1. ; midi/midibase.i
  2.  
  3.     ifnd    MIDI_MIDIBASE_I
  4. MIDI_MIDIBASE_I set 1
  5.  
  6.     ifnd    EXEC_LIBRARIES_I
  7.     include "exec/libraries.i"
  8.     endc
  9.  
  10.     ifnd    EXEC_SEMAPHORES_I
  11.     include "exec/semaphores.i"
  12.     endc
  13.  
  14.     ifnd    LIBRARIES_DOS_I
  15.     include "libraries/dos.i"
  16.     endc
  17.  
  18.     ifnd    MIDI_MIDI_I
  19.     include "midi/midi.i"
  20.     endc
  21.  
  22.  
  23.     STRUCTURE    MidiBase,LIB_SIZE    ; Library Base
  24.     STRUCT    ml_SourceList,LH_SIZE        ; Source List
  25.     STRUCT    ml_DestList,LH_SIZE        ; Dest List
  26.  
  27.     STRUCT    ml_ListSemaphore,SS_SIZE    ; locks source/dest lists - blocks Src & Dst list management
  28.                         ; (locked when LockBase is called)
  29.     STRUCT    ml_RouteSemaphore,SS_SIZE   ; locks routes - blocks msg routing & RPList management in Src & Dst
  30.     ULONG    ml_SegList            ; Segment List for the library
  31.     ULONG    ml_SysBase            ; SysBase
  32.     ULONG    ml_DosBase            ; DosBase
  33.  
  34.     LABEL    sizeof_MidiBase
  35.  
  36.  
  37.     STRUCTURE    MTaskInfo,0 ; Task info structure for PermNodes
  38.     APTR    ti_Name     ; Process Name
  39.     WORD    ti_Pri        ; Process Priority
  40.     APTR    ti_Entry    ; Entry point
  41.     UWORD    ti_Stack    ; Stack Size
  42.  
  43.     UWORD    ti_Sources    ; source count
  44.     APTR    ti_SourceList    ; source list
  45.     UWORD    ti_Dests    ; dest count
  46.     APTR    ti_DestList    ; dest list
  47.  
  48.     STRUCT    ti_Semaphore,SS_SIZE    ; signal semaphore for locking this task
  49.  
  50.     UWORD    ti_UsageCount
  51.     APTR    ti_TaskPort    ; task's MsgPort
  52.     BPTR    ti_Segment    ; BPTR pointer to tasks segment
  53.     LABEL    sizeof_MTaskInfo
  54.  
  55.  
  56.     STRUCTURE    MNodeInfo,0 ; PermNode info structure
  57.     APTR    ni_Name     ; Node Name
  58.     APTR    ni_Image    ; Node Image
  59.     APTR    ni_Node     ; Node pointer
  60.     LABEL    sizeof_MNodeInfo
  61.  
  62.     endc
  63.