Command Operation ------- --------- adcmd_allocate allocate one or more of the four audio channels. adcmd_finish abort the current write request on one or more of the channels. Can be done immediately or at the end of the current cycle. adcmd_free free one or more audio channels. adcmd_lock lock one or more audio channels. adcmd_pervol change the period and volume for writes in progress. can be done immediately or at the end of the cycle. adcmd_setprec set the allocation precedence of one or more channels. adcmd_waitcycle wait for the current write cycle to complete on a single channel. Returns at the end of the cycle or immediately if no cycle is active on the channel. cmd_flush purge all write cycles and waitcycles (in-progress and queued) for one or more channels. cmd_read return a pointer to the i/o block currently writing on a single channel. cmd_reset reset one or more channels their initialized state. all active and queued requests will be aborted. cmd_start resume writes to one or more channels that were stopped. cmd_stop stop any write cycle in progress on one or more channels. cmd_write start a write cycle on a single channel. Exec Functions as Used in This Chapter -------------------------------------- abortio() abort a command to the audio device. if in progress, it is stopped immediately, otherwise it is removed from the queue. beginio() initiate a command and return immediately (asynchronous request). checkio() determine the current state of an i/o request. closedevice() relinquish use of the audio device. opendevice() obtain use of the audio device. wait() wait for a signal from the audio device. waitport() wait for the audio message port to receive a message. Exec Support Functions as Used in This Chapter ---------------------------------------------- allocmem() allocate a block of memory. createport() create a signal message port for reply messages from the audio device. Exec will signal a task when a message arrives at the reply port. deleteport() delete the message port created by createport(). freemem() free a block of previously allocated memory.