rem: rc = update_DSPEcho((struct AHIEffDSPEcho *) effect, audioctrl, AHIBase);
add: rc = update_DSPEcho( (struct AHIEffDSPEcho *) effect, audioctrl );
context: SetEffect ( REG(a0, ULONG *effect),            REG(a2, struct AHIPrivAudioCtrl *audioctrl),            REG(a6, struct AHIBase *AHIBase) ){  struct Library        *AHIsubBase;  ULONG                  rc;  if(AHIBase->ahib_DebugLevel >= AHI_DEBUG_ALL)  {    Debug_SetEffect(effect, audioctrl);  }  AHIsubBase = audioctrl->ahiac_SubLib;  rc = AHIsub_SetEffect(effect, &audioctrl->ac);  if(audioctrl->ac.ahiac_Flags & AHIACF_NOMIXING     || rc != AHIS_UNKNOWN)  {    return rc;   /* We're done! */  }  switch(*effect)  {  /*   *  MASTERVOLUME   */    case AHIET_MASTERVOLUME:    {      struct AHIEffMasterVolume *emv = (struct AHIEffMasterVolume *) effect;            if(audioctrl->ahiac_SetMasterVolume != emv->ahiemv_Volume)      {        audioctrl->ahiac_SetMasterVolume = emv->ahiemv_Volume;        rc = update_MasterVolume(audioctrl, AHIBase);      }      break;    }    case AHIET_MASTERVOLUME|AHIET_CANCEL:      if(audioctrl->ahiac_SetMasterVolume != 0x10000)      {        audioctrl->ahiac_SetMasterVolume = 0x10000;        rc = update_MasterVolume(audioctrl, AHIBase);      }      break;      /*   *  OUTPUTBUFFER   */    case AHIET_OUTPUTBUFFER:      audioctrl->ahiac_EffOutputBufferStruct = (struct AHIEffOutputBuffer *) effect;      rc = AHIE_OK;      break;    case AHIET_OUTPUTBUFFER|AHIET_CANCEL:      audioctrl->ahiac_EffOutputBufferStruct = NULL;      rc = AHIE_OK;      break;  /*   *  DSPMASK   */    case AHIET_DSPMASK:      rc = update_DSPMask((struct AHIEffDSPMask *) effect, audioctrl, AHIBase);      break;          case AHIET_DSPMASK|AHIET_CANCEL:      clear_DSPMask(audioctrl, AHIBase);      rc = AHIE_OK;      break;  /*   *  DSPECHO   */    case AHIET_DSPECHO:      rc = update_DSPEcho((struct AHIEffDSPEcho *) effect, audioctrl, AHIBase);      break;          case AHIET_DSPECHO|AHIET_CANCEL:      free_DSPEcho(audioctrl, AHIBase);      rc = AHIE_OK;      break;  /*   *  CHANNELINFO   */    case AHIET_CHANNELINFO:      audioctrl->ahiac_EffChannelInfoStruct = (struct AHIEffChannelInfo *) effect;      rc = AHIE_OK;      break;          case AHIET_CHANNELINFO|AHIET_CANCEL:      audioctrl->ahiac_EffChannelInfoStruct = NULL;      rc = AHIE_OK;      break;  }  return rc;}