DEFINITION MODULE Audio; (*$ Implementation:=FALSE *)
(* 10-Mar-1992/cn *)

FROM SYSTEM IMPORT ADDRESS;
FROM ExecD IMPORT nonstd,IOFlagSet,IORequest,Message;

CONST
 audioName="audio.device";

 hardChannels=4;

 allocMinprec=-128;
 allocMaxprec=127;

 free=nonstd+0;
 setPrec=nonstd+1;
 finish=nonstd+2;
 perVol=nonstd+3;
 lock=nonstd+4;
 waitCycle=nonstd+5;

 noUnit=32;
 allocate=noUnit+0;

 pervol=IOFlagSet{4};
 syncCycle=IOFlagSet{5};
 noWait=IOFlagSet{6};
 writeMessage=IOFlagSet{7};

 noAllocation=-10;
 allocFailed=-11;
 channelStolen=-12;

TYPE
 IOAudio=RECORD
  request:IORequest;
  allocKey:INTEGER;
  data:ADDRESS;
  length:LONGCARD;
  period:CARDINAL;
  volume:CARDINAL;
  cycles:CARDINAL;
  writeMsg:Message;
 END;
 IOAudioPtr=POINTER TO IOAudio;

END Audio.noimp
