Digital Delay Version 1.0.
Copyright 1994, Ted Felix.
This is Freeware.


Digital Delay
=============
Digital delay is an effect that is more commonly known as echo.  It is used in 
recording to add depth to sound.  It can also be used for many other 
applications.  The Delay Time parameter is the time between echoes.  Feedback 
allows you to specify how much of the echo effect should be fed back into the 
input so that it continues to echo.  Mix Level sets the amount of effect sound 
to be mixed with the direct input (100% is all effect no direct, 0% is all 
direct no effect).  Output Level will let you set the volume of the output. 

Two input levels are selectable via the Options pulldown menu.  Line Level is 
for inputs like a CD player plugged into the back of the sound card.  
Instrument is perfect for an electric guitar, or keyboard.  Microphones will 
also work at Instrument level, although they might sound a bit quiet.  See the 
usage notes below for more details.

Always keep the feedback and output level parameters at reasonable levels.  
Increasing the feedback too high can cause runaway echoes that will build up 
to the point of clipping.  This does not sound pleasant, not to mention what 
it can do to speakers.  The output level has an extremely (perhaps absurdly) 
wide range.  Use this parameter with care, feedback on the sound card may 
occur when the Output Level is too high. 


Files
=====
- DELAY.TXT is what you are reading
- MWAVE.TXT contains info on IBM's Mwave* technology.
- README.TXT covers installation points.
- LEGAL.DOC has the legal disclaimers, and copyright notice.
- DELAY.EXE - The Windows executable
- DELAY.DSP - The DSP executable module
- WPP.DLL   - The Windows++ Object-Oriented Class Library (see below)


Specifications
==============
This program uses the 44.1kHz Analog-Digital, Digital-Analog converters on the 
IBM WindSurfer* board.  The specs of the board are the specs of this effect.  
The WindSurfer* was rated in PC Magazine (April 12, 1994) as follows:

Frequency Response:         20Hz-20kHz (+0.5, -2.0dB)
Total Harmonic Distortion:  .017%
Signal to Noise Ratio:      Better than 73dB unweighted

Effect Parameter Ranges...
Delay time:                 0-696msec
Feedback:                   -100% to +100%
Effect Mix Level:           0-100%
Output Level:               + or - 12,799%  Although I don't recommend it!


Usage Notes
===========
(In no particular order)

- This effect uses all available memory on a 32K Mwave* board.

- Conflicts with the "Mwave Audio Control" application may occur.  Depending 
  on the version of Audio Control (the mixer), one of two things might happen.  
  - If the mixer has reserved the Line In and Out ports exclusively, Digital 
    Delay will complain that someone else is using the ports ("Input 
    Connection failed.  Another application is using the Line Input...").  Try 
    clicking on the "Audio" button in the Audio Control window.  This should 
    release the exclusive reservation.  
  - Some versions of Audio Control go for shared reservation of the Line In 
    and Out ports.  This means that as long as the "Aux" slider is turned up 
    (and the Master), the input will always go directly to the output.  
    Digital Delay will still work, but setting the Effect Mix % to 100 will 
    not eliminate the direct signal.  The solution is to simply turn down the 
    Aux slider in the Audio Control window. 

- Only "Instrument" and "Line Level" inputs are provided.  Use Instrument to 
  play around with a microphone.  It's a little quiet, but it works.  I have 
  found the mic preamp in the WindSurfer to be a bit sensitive to crosstalk 
  with the output.  For Pro-Audio applications, this is unacceptable, so I've 
  limited the selection.  When I add digital input attenuation, a "mic level" 
  input selection will be available.

- Clipping will occur, and it will be very harsh.  Instead of plain clipping, 
  this delay will wrap around, making clipping extremely noticeable.  Version 
  2.00 of the WindSurfer software included a really nice standalone Peak Meter 
  that could be used to monitor the raw input.  That has unfortunately been 
  removed from v3.00.  Looks like another project for me.

- Input is from the Left channel only.  Output is to both Left and Right.

- Since this effect uses all available DSP memory, no other DSP apps can be 
  running at the same time.  This also will not run on AudioVation* due to the 
  memory limitations (4Kwords of Data).  A version could easily be produced to 
  use all available PC memory.  This would make concurrency with other Mwave 
  apps possible.  Then the question will be, "Can I play MIDI Synth through 
  the Delay?"  Eventually, the answer will be yes.

- It doesn't save the last set of parameters, and call them up when it is 
  restarted.  This is only version 1.0.  The option to save sets of parameters 
  would be nice, especially when more effects are added (like equalization, 
  reverb, stereo chorus...).

- Version 1.1 will be better.

- Uses a heavily modified version of Paul Dilascia's Windows++ Library for 
  C++.  See his book "Windows++" for more details.  Windows++ has a few more 
  features than Borland's Object Windows.  It is, however, buggy, and needs a 
  bit of work to be used in a final product.  Overall, I am very satisfied 
  with it, and learned a lot about Windows in the process of incorporating it.  
  I highly recommend the book.  It is a great lesson in Object Oriented design 
  and implementation in C++.  This program was written entirely in C++ using 
  Object Oriented Design to model the various Mwave* concepts.  Because of its 
  high degree of reuseability, I'm hoping that future effects will be trivial 
  to implement. 

- Contacting me:

  Internet: tfelix@vnet.ibm.com
  BBS:      Waldo's Magic, 301-929-1722   User ID: Felix
  Mail:     Ted Felix
            18700 Walker House Rd. #607
            Gaithersburg, MD 20879-2556
  Phone:    301-640-4362 (Work)

- I fully support the Freeware concept.  If, however, you want to support my 
  efforts, feel free to send large amounts of currency.  A note that you are 
  using it would be equally appreciated.  The more notes, the more likely new 
  effects will be implemented.

* Mwave, AudioVation and WindSurfer are registered trademarks of International 
  Business Machines Corporation.

