[LogoShip]

Home

Daqarta for DOS Contents

Introduction

Downloads

Free Registration

Contact Us
Daqarta for DOS
Data AcQuisition And Real-Time Analysis
Shareware for Legacy Systems
(Use Daqarta for Windows with modern systems)

From the Daqarta for DOS Help system:
 
DAQARTA - STIM3A
ADVANCED STIMULUS SIGNAL GENERATOR

Play Wave:

This allows you to play an entire file as a signal source. It is similar to Arb, but with some important differences: Instead of using low DOS memory, it uses extended (XMS) memory to hold the Play files. Since most systems have a lot of extended memory available, you can use really large files.

In order to use Play, you must make the XMS memory available to DOS by including HIMEM.SYS in your CONFIG.SYS file.

Where an Arb file is typically expected to contain a single cycle of the desired waveform, the Play file typically contains many cycles. Usually this is a complete recording of a complex sound that you want to manipulate, such as an animal vocalization.

Due to this difference, Play files use a Rate control instead of the standard Freq control. The playback rate may be set up to 512 times higher than originally recorded, though high playback factors require greater CPU performance to handle the higher number of samples that must be processed.

Since there can be no meaningful Phase control with an unknown number of cycles of unknown frequencies, Phase is arbitrarily calibrated such that 360 degrees is 1024 samples at x1 Rate. As Rate increases, the time represented by these 1024 samples decreases proportionally.

Play files can use the same modulators as Arb files, but some of controls behave differently. Phase modulation uses the above translation, such that 100% modulation gives +/-1024 samples of shift in the relative position of the waveform.

Frequency modulation is really Rate modulation, and there is an interaction between the FM Deviation and the basic Rate to keep things within range. Similar limits apply to Sweep.

Play uses linear interpolation to play back files at different rates. This is efficient, but it does introduce a certain amount of distortion due to the fact that the straight lines used for the interpolation don't always give a good fit to the true wave shape. In general, this situation is improved by using more points per cycle of the waveform, which gives a better fit. So the best situation for low distortion is when you record low frequencies or use high sample rates.

Since Play files are loaded into extended memory, they reduce the size of file that can be recorded using DDisk Memory mode.

Play mode has its own submenu that allows up to 8 Play files to be loaded at one time. These files are available to any component page of either DAC, and more than one page can use the same file simultaneously but completely independently.


Play Files 0-7:

By default, the 8 Play file locations show as simply Play0 through Play7 when Play files are not loaded. To load a file to a particular location, move the cursor to that spot and hit ENTER. You will be prompted for the name of the file to load.

Files may be either ordinary .WAV files (which includes Daqarta DDisk files), or Daqarta instantaneous waveform files. Array files or averaged files are not allowed. (Unlike Arb, Play can't use waveform averages.)

You may also use custom user-created .DAT files. A .DAT file is simply a series of 16-bit signed integer values in 2s-complement binary format. A special TXT2DAT utility is provided to allow conversion of plain text files to this format.

The .WAV files may be mono or stereo. If you load a stereo file, it will appear in two adjacent Play locations. The .WAV files may be either 8-bit or 16-bit. 8-bit files will be converted to 16-bit data internally when loaded.

The actual file extensions are not important here; the loader first looks for the .WAV header, and if that is not present the file is assumed to be a .DAT file. There is no .DAT header, so all non-WAV files are assumed to be 16-bit mono. You can thus use whatever file extensions suit your needs.

Once the file is loaded, the menu location will change to show the first 7 characters of the file name instead of the Play0-7 default. If you load a mono file, the name will appear in all upper-case characters. If you load a stereo file, the top entry (left channel) will be upper-case, and the next (right channel) will be lower-case.

When a file is loaded, it does not become active (shown highlighted in inverse video) until you select it. Note that the loading process enters Pause mode, so you will need to unPause before you can select the file.

You may delete a file to make room for another or to free up extended (XMS) memory for longer DDisk Memory files. To do this, that Play must not be active. Hit ALT-ENTER with the cursor there, and you will be prompted with:

  '(R)eplace, (D)elete, or ESC ?'.


From - Play File Start Point:

Selects the starting sample to be used from the Play file. This allows you to start your original recording a little early to make sure you get everything, and then edit out the initial lag time. Or you may have several repetitions of a sound, and you can use this to select different ones for your test.

The Smpls / Secs control (below the following 'To' control) allows you enter the starting point in samples or seconds.


To - Play File Stop Point:

Complementary to the above 'From' control, this sets the end of the area to be used from the Play file.


Units (Smpls / Sec):

This is a global units control. In the Play menu, it allows you to toggle the above From and To controls between sample values and seconds values for display and data entry.


Burst (Single / Repeat):

If you use the Play wave with the Burst modulator, this control tells what to do when the selected (From  To) region is shorter than the total Burst duration. When set to Single, the burst will only play the selected portion of the file once per burst; the remainder of the burst will be filled with zeroes. When set to Repeat, the selected portion will be repeated throughout the entire burst.


Rate (Abs / Rel):

If the Play file was recorded at a sample rate that differs from that currently in use, this control allows you to select whether the Rate control should show Absolute rate, where 1.0000 means that the effective playback is the same as recorded, or Relative, where 1.0000 means that each output sample uses the next Play sample exactly.

For example, suppose the file was recorded at a sample rate of 20000 Hz but the current sample rate is 44100 Hz. If you set this control to Rel and set the main Rate to 1.0000, the file will play back faster by a ratio of 44100/20000 or 2.205 times faster. You would have to set Rate to 20000/44100 or 0.4535 in order to get the same effective playback rate as recorded.

Alternatively, if you set this control to Abs, then the above conversion is applied automatically and you get the original playback when Rate is 1.0000.

But note that it's not truly the "original" playback, since STIM3A must interpolate between samples to compensate, so there will be some distortion due to the linear interpolation. On the other hand, playing exactly one file sample for each output sample eliminates waveform distortion, but all the frequencies will be higher by a factor of 2.205 and the duration will only be 0.4535 as long.


Data (Interp / Round / Step):

This control is similar to the one at the bottom of the Arb menu. Normally, you will want to leave it in Interp mode. This means that STIM3A will interpolate between Play file values to find the proper output value at any given instant of time, just as the normal internal Wave types do.

But if you are using the Play file for something other than a sound source, there may be times when you want only the exact file values, such as when using the file as a test sequence generator. Round mode will always select the nearest exact value.

Step mode is often more useful for sequence generation, since it uses the Timing menu instead of the Rate control. The Step Timing option, for instance, allows you to step through the Play file using exact data values, but holding each for a specified number of samples.

You can also use the tricks discussed for the Arb file to select random values from the set of Play data.

In Step mode, the trace sync defaults to the Timing Step size, even if Spec or Slow are active. If you set Timing Step to the Play size (shown on the message line when you select a Play Wave), then the sync point will be the start of the Play cycle. You can use the main Daqarta Trigger Delay to move the sync point forward or backward in the cycle.

GO:

Questions? Comments? Contact us!

We respond to ALL inquiries, typically within 24 hrs.
INTERSTELLAR RESEARCH:
25 Years of Innovative Instrumentation
© Copyright 1999 - 2006 by Interstellar Research