home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Chip: Special Sound & MIDI
/
Chip-Special_Sound-und-Midi-auf-dem-PC.bin
/
dostools
/
scoptrax
/
scoptrax.doc
< prev
next >
Wrap
Text File
|
1992-02-01
|
57KB
|
1,585 lines
ScopeTrax Version 1.00
This Software and Documentation is
Copyright (c) 1992 by Chris S. Craig
Table of Contents
1 Introduction .................................................... 1
2 Minimum Requirements ............................................ 1
3 Configuring ScopeTrax: Using SCTXCONF.EXE ....................... 1
4 Starting ScopeTrax .............................................. 3
5 Input/Output Devices ............................................ 3
5.1 PC SPEAKER A ............................................... 4
5.2 PC SPEAKER B ............................................... 4
5.3 Sound Blaster Direct ....................................... 4
5.4 LPT1 or LPT2 ............................................... 4
5.5 Sound Blaster DMA .......................................... 4
6 Hardware Rate or Base Rate ...................................... 4
6.1 Configuring Base Rates ! ................................... 5
6.2 Base Rate and Expanded Memory Managers ..................... 6
7 Using the Editor ................................................ 6
7.1 In General ................................................. 6
7.2 Increment .................................................. 7
7.3 File ....................................................... 8
7.3.1 Select File ........................................... 8
7.3.2 Open Path/File ........................................ 8
7.3.3 Sample Rate (playback) ................................ 8
7.3.4 Exit .................................................. 8
7.3.5 Save As VOC ........................................... 8
7.3.6 Save As Raw ........................................... 8
7.4 Sound ...................................................... 9
7.5 Scope ...................................................... 9
7.5.1 Full Mode ............................................. 9
7.5.2 Half Mode ............................................. 9
7.5.3 Quarter Mode .......................................... 9
7.5.4 Toggle On/Off ......................................... 9
7.5.5 1:1 X Scale ........................................... 9
7.5.6 2:1 X Scale ........................................... 10
7.5.7 3:1 X Scale ........................................... 10
7.6 Block ...................................................... 10
7.6.1 Volume ................................................ 10
7.6.2 Reverse ............................................... 10
7.6.3 Amigafy ............................................... 10
7.6.4 Write ................................................. 11
7.6.5 Max Volume ............................................ 11
7.6.6 Echo Effect ........................................... 11
7.6.7 Sample Rate (data) .................................... 11
7.6.8 Fade Out .............................................. 12
7.6.9 Delete ................................................ 12
7.6.10 Blank ................................................ 12
7.6.11 Insert ............................................... 13
7.6.12 Record ............................................... 13
7.6.13 Mix File ............................................. 13
7.6.14 Ins File ............................................. 13
7.7 Zoom ....................................................... 13
February 1992 ScopeTrax Version 1.0 Page ii
7.8 Unzoom ..................................................... 13
7.9 Options .................................................... 13
7.9.1 Scope Size ............................................ 13
7.9.2 Graph Size ............................................ 14
7.9.3 Background ............................................ 14
7.9.4 Play Bar .............................................. 14
7.10 About ..................................................... 14
7.11 Start Index ............................................... 14
7.12 Sample Rate (playback) .................................... 14
7.13 End Index ................................................. 15
7.14 Repeat .................................................... 15
7.15 Other Editor Settings and Special Keys .................... 15
8 Other Included Software ......................................... 16
8.1 EMMPLAY.EXE ................................................ 16
8.2 FINDCARD.EXE ............................................... 17
8.3 SPACK and SUNPACK .......................................... 17
8.4 ULAW2SND.EXE ............................................... 18
9 Bugs and Recommendations ........................................ 18
10 Trouble Shooting ............................................... 19
11 Copyright and Warranty ......................................... 20
12 ScopeTrax History and Future ................................... 20
12.1 Origin .................................................... 20
12.2 Revisions ................................................. 20
12.3 Future .................................................... 21
February 1992 ScopeTrax Version 1.0 Page iii
1 Introduction
ScopeTrax is another one of those programs that plays 8 bit sound
files on an IBM PC/XT/AT, and compatible 86s, 286s, 386s, 486s .... Some
features that set this program apart from the others include the following:
* Plays sounds/samples directly through the PC's speaker without using
extra hardware.
* Supports Sound Blaster, JDAC and other parallel port DACs.
* Plays Sound Blaster VOC files, Amiga IFF files, and RAW files
(.snd).
* Displays a realtime oscilloscope when PLAYING or RECORDING samples
(286 or better recommended).
* Samples can be played in background on fast computers.
* Provides about 14 editing function, including MIX and ECHO.
* Samples can be played back at virtually 1000 to 65000Hz.
* Independent hardware rate and sample rate.
* Low sample rates can be played through PC speaker with little or no
noise (although slow 86s are still noisy, I think).
* Graphically displays the sound and allows for HIGH DETAIL zoom.
* Supports both mouse and keyboard (requires Microsoft mouse driver).
* Corrects 'time loss' problems associated with sound players.
* No features are disabled.
* No recurring 'registration' messages.
Notes:
Please read Copyright and Warranty section.
Any donations will be greatly appreciated. See History/Future sec-
tion.
:-) represents a happy face (on its side) 8^)
2 Minimum Requirements
To play a sample, only a PC with a speaker is needed.
To use the editor/scope:
1) 16 colour EGA (128K) or VGA.
2) Colour monitor (recommended).
3) A reasonable fast computer.
4) More than 90K of free memory (depends on size of sample).
3 Configuring ScopeTrax: Using SCTXCONF.EXE
The program SCTXCONF.EXE configures some of the default parameters
used in ScopeTrax. You should run this utility if your Sound Blaster I/O
port is not at the factory setting. Upon executing this utility you will
be asked to enter the following:
Base Rate:
Sets the default base rate. Refer to section 6.
Requires a number.
February 1992 ScopeTrax Version 1.0 Page 1
Background Mode:
Determines whether samples will be played in background by default. A
fast computer is recommended.
Enter "On" or "Off".
Play Bar:
Determines if a play position indicator will be displayed during back-
ground playback. With the play bar on, the detail of the scope is
reduced slightly.
Enter "On" or "Off".
Scope:
Determine if the scope will be on or off by default. Slow systems
should set this to off.
Enter "On" or "Off".
Memory to Allocate:
Sets the maximum amount of memory (in kilobytes) that ScopeTrax should
use. By default, it allocates all free memory. If for some reason
you don't want it to allocate all memory, you can use this to limit
memory usage.
Note: all allocated memory is freed after exiting from ScopeTrax.
If you want it to allocate all free memory again, enter the largest
number (i.e. 1024).
Requires a number.
Graph Colour:
Specifies the colour of the sound graph in the editor.
Requires a number.
Sound Blaster Port:
Specifies what port your Sound Blaster uses. Entering 5, for example,
sets your port to 250H.
Requires a number.
Output Device:
Sets the default output device. See section 5.
Requires a number.
Maximum Record Rate:
This allows you to record at a rate higher than 12500Hz if you own a
Sound Blaster Pro. I recommend that you use SBlaster DMA if you
record at a higher rate. This software has not been tested on a Sound
Blaster Pro, so it may not work.
Requires a number.
If you just press enter, without typing in a value, the default value is
used.
February 1992 ScopeTrax Version 1.0 Page 2
The range of valid values is given in brackets '[' and ']'. Default values
are shown in parenthesis '(' and ')'.
You are asked whether or not you want to save the configuration at the end.
SCTXCONF expects that the SCOPTRAX.EXE file is in the current directory.
Changes are written directly into SCOPTRAX.EXE.
4 Starting ScopeTrax
The command line syntax for ScopeTrax is:
scoptrax <filename> <options>
<filename> is the name of the sample to be played/loaded.
<options> are as follows (you can use '-' instead of '/'):
/r<sample rate> Sets the playback sample rate
<sample rate> = 1000 to 65535
/b<rate> Sets the hardware or base rate (explained later,
important!)
<rate> = 5000 to 24000
/d<device> Sets output device
<device> = 0 PC Speaker A
1 PC Speaker B
2 Sound Blaster Direct.
3 LPT1
4 LPT2
5 Sound Blaster DMA
/p Plays the sample and exits. This option should be
given on systems without EGA/VGA. You must spec-
ify a filename.
/? Shows a help screen.
Example:
scoptrax hello.snd /b11000 -r11000 /d2 /p
Plays the sound file 'hello.snd' at a sample rate of 11000Hz through the
Sound Blaster, then returns to DOS.
The <filename> and <options> parameters do not have to be present, the
command
scoptrax
will invoke the editor using default values.
The editor screen is divided into 3 sections. Menu options are located in
the top block (cyan). The sound graph is located in the left block
(green). The oscilloscope is in the right block (white). The editor is
explained in section 7
5 Input/Output Devices
ScopeTrax supports several output devices. For now, the only input
device is the Sound Blaster. All sampling is performed directly by polling
February 1992 ScopeTrax Version 1.0 Page 3
the card UNLESS the Sound Blaster DMA option is on. On slow computers,
using the DMA option or toggling off the scope is the only way to sample at
the full 12500Hz. The DMA option also disables the scope during recording.
Using DMA mode for recording is recommended. Direct polling is useful
when you want to set volumes for recording. You could set a low recording
rate of between 5000 - 8000Hz, then watch the scope to determine if your
sample is loud enough.
One thing I've noticed about the Sound Blaster is that if you don't
initialize the DSP after turning on your computer, you can achieve record-
ing rates as high as 16000Hz (ScopeTrax does initialize the DSP, so 12500Hz
is max).
If there are other sound devices you would like supported by ScopeTrax,
send me detailed programming instructions (assembly or C source code would
be good :-) note: testing will be a problem).
Does anyone have a general schematic for a parallel port input sampler ?
I don't suppose Adlib Gold could send me some free info ?
5.1 PC SPEAKER A
This option produces sound through the internal PC speaker. It elimin-
ates noise/distortion on fast machines. (Sound is usually quiet)
5.2 PC SPEAKER B
This option also produces sound through the internal PC speaker. It is
slightly faster and may deliver better sound on slow computers. (Sound
is usually quiet)
5.3 Sound Blaster Direct
This option uses the Sound Blaster card for sound output.
5.4 LPT1 or LPT2
If you have a 'home made' device or a JDAC on the parallel port, this
option sends the output to the port.
5.5 Sound Blaster DMA
This option gives the best quality sound possible through the Sound
Blaster card. It does NOT use the scope, nor does it use the Base Rate.
It sends(receives) data to(from) the card using DMA transfers. This
option does not run in background. Sample rates lower than 4000 and
greater than 22000(12500) are not possible.
6 Hardware Rate or Base Rate
The base rate is a unique feature of ScopeTrax. Many sample player pro-
grams playback sounds by setting the hardware interrupt rate equal to the
sample rate. This can cause a couple of problems:
February 1992 ScopeTrax Version 1.0 Page 4
1) If the sample rate is less than 16000Hz, playback through a PC
speaker produces an annoying high pitched tone (i.e. if the sample
rate is 11000Hz, a tone of about 11000Hz is also produced.)
2) If the sample rate is high (greater than 20000Hz depending on the
computer), the hardware may not be fast enough to play at this rate.
This causes the computer to crash.
In ScopeTrax, the base rate is the actual hardware interrupt rate and
is independent of the sample rate. This means that ScopeTrax can play at
virtual sample rates of up to 65535Hz.
6.1 Configuring Base Rates !
ScopeTrax does NOT automatically set the base rate for your computer.
The base rate can be set in the following four ways:
1) Use the /b option on the command line.
2) Use the SCTXCONF configuration utility.
If in the editor:
3) Press the '[' or ']' keys. The base rate is located at the
right side of the screen under the word 'Base'. For fine tuning,
press the '+' or '-' keys to change the Increment.
4) Click the mouse on the [ and ] under the word 'Base'. Fine tune
by clicking on + or - to change the Increment.
IF YOUR SAMPLE RATE IS SET CORRECTLY AND THE SAMPLE PLAYS SLOWER THAN IT
SHOULD, YOU MUST DECREASE THE BASE RATE. The base rate can be con-
sidered the work load of the CPU. The higher the number, the greater
the work.
If the base rate coincides with the amount of work the CPU is capable of
doing, keyboard control will be lost. Decrease the base rate.
The table below shows some average values when using PC speaker A as the
output device (EMM = Expanded Memory Manager):
CPU Base Rate Scope Quality
8086(4.77Mhz) 10000 Off Poor
8086(8Mhz) 17000 Off Good
8086(8Mhz) 8000 On Poor
80286(12Mhz) 17000 On/Off Good
80386(20Mhz) 22000 On/Off Good
80386(20MHz) EMM 16000 On Fair to Good
Slow computers should toggle off the scope.
The following lists suggestions for good quality playbacks.
PC SPEAKER (A/B):
In order to produce the best sound on the PC speaker, the
sample rate should be between 16000Hz - 24000Hz. Values lower than
16000Hz will produce the tone mentioned above.
For slow computers, keep the base rate as low as possible.
You may (will) have to toggle off the scope in order to keep the
base rate above 16000Hz.
February 1992 ScopeTrax Version 1.0 Page 5
Sound Blaster Direct or LPT1/LPT2:
For best results set the base rate = sample rate or some
integer multiple.
If you want to play a sample at 22000Hz, but your highest
working base rate is only 17000Hz, you should set the base rate to
11000Hz. (i.e. 110000 x 2 = 22000)
If you want to play a sample at 5500Hz, you could set the base
rate to 5500Hz, 11000Hz, 16500Hz.
NOTE: The Sound Blaster usually requires a much lower base rate
than the other output devices since more work has to be done to
send data to the card. (Usually subtract 3000 - 6000Hz)
Sound Blaster DMA
Does not use the concept of base rate. This means that sample
rates are restricted to the speed of the card (4000 - 22000).
6.2 Base Rate and Expanded Memory Managers
Memory managers can drastically affect the base rate for Scoptrax.
Expanded memory managers run 386/486 computers in slower mode (the POP
ES instruction is 3 times slower). In some cases, working base rates
drop 2000 to 8000Hz(if scope is active). It is possible that a memory
managed 386 will be unable to have the base rate above 16000Hz and the
scope on at the same time. Memory managers can also affect DMA
transfers to the Sound Blaster.
7 Using the Editor
The editor screen is divided into 3 sections. Menu options are
located in the top block (cyan). The sound graph is located in the left
block (green). The oscilloscope is in the right block (white).
7.1 In General
The ScopeTrax editor is block orientated. All functions act only
on the portion of the sample located between the two dashed vertical
lines. This is explained in the Block section.
The editor menu looks like this:
File Sound Scope Block Zoom Unzoom Options About
Start Index Sample Rate End Index Repeat
Almost all features of ScopeTrax have at least 3 ways of being changed
or selected (I don't know if it was harder to program or harder to
document). When using the mouse, use the left button.
There are several ways to select a menu item:
February 1992 ScopeTrax Version 1.0 Page 6
1) Press the highlighted character.
2) Use <Tab> and <Shift Tab> to move the rectangle from item to
item and press <Enter> when on the desired item. (The up/down arrow
keys also work, but they are confusing)
3) Click the mouse over the menu item.
The items File, Sound, Scope, Block, Options, and About present sub-
menus when selected. Sub-menus are handled in the same way. To get out
of a sub-menu, do one of the following:
1) Press the <Home> key.
2) Press the <Esc> key. (Stops playing sample too)
3) Click the right mouse button.
4) Select one of the sub-menu items.
The <Esc> key gets you out of everything (except ScopeTrax itself, use
File then Exit to go back to DOS).
Features in sub-menus which are currently active have a dot (or block)
in front of them.
Three ways to play a sample:
1) Press the space bar.
2) Click the mouse over the word <SPACE>.
3) Click the mouse anywhere along the top of the screen.
Only the block between the two dashed vertical lines is played.
Ways to stop playing a sample:
1) Press the <Esc> key.
2) Press the <Space> key, if in background mode and repeat is off.
3) Press any key other than <Space>, if not in background mode.
4) Click on mouse, if in DMA mode.
5) Scratch your big left toe, if it is Saturday and you are facing
Jupiter and your cat happens to apply 1.3 Newtons of force on the <Esc>
key.
Samples can't play while selecting a file or entering text. Play auto-
matically stops when the sample is about to be modified.
7.2 Increment
The value below the word 'Increment' determines how much the Start
Index, Sample Rate, End Index, and Base will change. You can change the
increment by:
1) Pressing '+' or '-'.
2) Clicking the mouse over + or -.
If, for example, the increment is set to 00100, values will change by
plus or minus 100.
February 1992 ScopeTrax Version 1.0 Page 7
7.3 File
This feature presents the following sub-menu:
Select File Save As VOC
Open Path/File Save As Raw
Sample Rate
Exit
Only one file may be edited at a time. (Can't expect too much from a 1.0
version :-) ).
7.3.1 Select File
Lists all the files in the current directory. Directory names have a
dot in front of them. Once you have picked a file, ScopeTrax scans
the file to determine what type it is (VOC/IFF/RAW). The file is
loaded and the sample rate is set to the value found in the file. If
no sample rate was found, a sub-menu containing common sample rates
is automatically displayed.
7.3.2 Open Path/File
If the text that you enter is a file, the file is loaded as in 7.3.1.
The current drive and directory is unchanged.
If the text is a drive, a directory, or both, the current drive
and/or directory is changed and a list of all files is presented as
in 7.3.1.
7.3.3 Sample Rate (playback)
Displays a sub-menu containing common sample rates. This affects
only the playback sample rate value shown under the words 'Sample
Rate'.
The playback sample rate can be set with a command line option.
7.3.4 Exit
Exits ScopeTrax.
7.3.5 Save As VOC
Prompts you for a file name. Saves the entire sample in VOC format.
You should specify the ".VOC" extension.
NOTE: Markers, packed silence, and other VOC block types are not
saved. Only the voice data block is saved.
7.3.6 Save As Raw
Prompts you for a file name. Saves the entire sample in raw, 8 bit
unsigned format with no header information. If you want to save the
file in SIGNED format, Amigafy the sample before saving.
February 1992 ScopeTrax Version 1.0 Page 8
7.4 Sound
Presents the sub-menu:
PC Speaker A DAC at LPT1
PC Speaker B DAC at LPT2
SBlaster Direct SBlaster DMA
This allows you to set the output device. The devices are explained in
section 5. Note that SBlaster DMA behaves differently.
If the device you select is not present, the device will default to PC
Speaker A and a beep will sound.
Recording of a sample is done through the Sound Blaster in Direct mode
unless SBlaster DMA is selected.
7.5 Scope
Presents the sub-menu:
Full Mode 1:1 X Scale
Half Mode 2:1 X Scale
Quarter Mode 3:1 X Scale
Toggle On/Off
7.5.1 Full Mode
Sets the scope to its maximum vertical size. It shows the true
magnitude of the samples.
7.5.2 Half Mode
This is the default scope size. The vertical axis is scaled down 2
times.
7.5.3 Quarter Mode
This is the smallest vertical size of the scope, scaled down 4 times.
7.5.4 Toggle On/Off
Turns the scope on or off. 'On' status is indicated by a leading
dot. (Also indicated by the presence of a rather large rectangle on
the right side of the screen :->)
7.5.5 1:1 X Scale
This give maximum detail on the scope. Any samples sent to the
device will be displayed on the scope.
February 1992 ScopeTrax Version 1.0 Page 9
7.5.6 2:1 X Scale
Every second sample sent to the device will be sent to the scope.
This option could be used when a computer is not fast enough to send
all samples to the scope. It shows more of the wave form in the
scope window. Also useful when playing at low sample rates.
7.5.7 3:1 X Scale
As above, except every third sample is scoped.
7.6 Block
This menu item contains all of the functions which PHYSICALLY MODIFY the
sample in memory. The block is defined as the piece of the sample
located between the dashed vertical lines. Only this block is altered.
Refer to sections 7.11 and 7.13 for an explanation of how to move the
lines.
The following sub-menu is displayed:
Volume Max Volume Delete Mix File
Reverse Echo Effect Blank Ins File
Amigafy Sample Rate Insert
Write Fade Out Record
7.6.1 Volume
Allows you to change the volume of the block. You can enter numbers
between 1 and 999 (to get 0 , just use Blank). If you enter 200, the
amplitude of the sample doubles. If you enter 50, the amplitude is
halved.
7.6.2 Reverse
Reverses the block. This is good if you want to play records back-
wards and listen for subliminal messages :-)
Try recording the words: "Walk nope nope jerk scarish books" and then
reversing it. It should say "ScopeTrax Version 1.0."
And "Byte Magazine" roughly translates to "Knees again ski up."
7.6.3 Amigafy
Converts data in the block from signed to unsigned or vice versa.
Samples for Amiga computers are usually in signed format. ScopeTrax
requires unsigned data.
This is useful for extracting instrument samples from MOD file. To
do this:
1) Load the MOD file using File.
2) Amigafy.
3) Play the sample. You should hear garbage first, then instru-
ments.
February 1992 ScopeTrax Version 1.0 Page 10
7.6.4 Write
Prompts you for a file name, then saves the block to the disk in Raw
format under that name. There is no VOC or IFF information in the
output file. You will have to run VOC-HDR to make it Sound Blaster
VPLAY compatible.
By using Write in conjunction with Delete and Ins File, the editing
function of cut, copy, and paste can be imitated.
WARNING: No header information is saved. To prevent hair loss, your
output file should not overwrite the original file if they were VOC
or IFF files. A prompt is displayed if the file name you specified
already exists.
7.6.5 Max Volume
Scans the block and determines the maximum volume that can be set
without loss of quality. The block data is updated to this volume,
if necessary.
7.6.6 Echo Effect
Echos the sample within the block. The first parameter is the delay
of the echo. Values between 200 and 2000 create a 'stadium' echo,
while values above 5000 give a 'mountain' echo. The second parameter
is the volume of the echo. Values of between 50 and 80 are generally
good. By using Echo Effect several times, a 'tunnel' echo can be
made. Try starting with a delay of 10000 then 5000, 2500, ....
The part of the echo which extends outside the block will be mixed
with the outside data. If you don't want the echo to mix with
surrounding data, Insert a space at the end of the block the size of
the delay before using Echo.
7.6.7 Sample Rate (data)
Physically changes the sample rate of the data within the block.
There are three Sample Rate items in ScopeTrax. The Sample Rate
which is just above the graph and the Sample Rate in the File sub-
menu only change the playback rate. They are exactly the same thing
and they do not change the data. The Sample Rate in the Block
sub-menu DOES change the data based on the current playback Sample
Rate. Note: Make sure you have the playback sample rate set cor-
rectly BEFORE using this feature.
Example 1: Mixing 2 samples with different sample rates:
You want to mix 2 samples, X and Y. X was created using a
sample rate of 11000Hz. Y was created using a sample of 22000Hz. In
order to mix them properly, both samples must have equal sample
rates.
Solution 1.1: Quality Mix:
1) Load sample X.
2) Set the playback sample rate to 11000Hz (Refer to section 7.3.3 or
7.12).
3) Go into the Block sub-menu and select Sample Rate.
February 1992 ScopeTrax Version 1.0 Page 11
4) Enter a new sample rate of 22000Hz. X is now twice its original
size.
5) Mix sample Y.
Both samples will now have a sample rate of 22000Hz.
Solution 1.2: Small Mix:
1) Load sample Y.
2) Set the playback sample rate to 22000Hz.
3) Go into the Block sub-menu and select Sample Rate.
4) Enter a new sample rate of 11000Hz. Y is now half its original
size.
5) Mix sample X.
Both samples will now have a sample rate of 11000Hz. The resulting
size is half that of Solution 1. The quality is also less (although
not by half).
Example 2: Conserving Precious Disk Space
You have large sample of size 320000 bytes that has a sample
rate of 40000Hz. You want to reduce it to 200000 bytes.
Solution 2.
1) Load sample.
2) Set the playback sample rate to 40000Hz.
3) Go into the Block sub-menu and select Sample Rate.
4) Calculate new sample rate:
new rate = <sample rate> * ( <new size> / <old size> )
= 40000Hz * ( 200000 / 320000 )
= 25000Hz
5) Enter the new sample rate 25000Hz.
6) Refer to section 7.6.4.
The sample is now 200000 bytes. Note that its sample rate changes to
25000Hz.
If you want to save even more space, use SPACK and SUNPACK. They use
pseudo-adaptive delta compression/decompression.
7.6.8 Fade Out
Gradually decreases the volume of the block. The parameter you enter
determines how much the volume decreases. If you enter 50, the
volume at the end of the block will be half (50%) of what it was
originally.
Note: If you want to fade IN, Reverse the block first, use Fade Out,
and Reverse the block again.
7.6.9 Delete
Deletes all the data in the block.
7.6.10 Blank
Erases the data in the block. All the data is set to 0 volume.
February 1992 ScopeTrax Version 1.0 Page 12
7.6.11 Insert
Inserts a blank space in the data. The parameter is the number of
bytes you want to insert. The blank space in inserted at the Start
Index.
7.6.12 Record
Records a sample from the Sound Blaster. If the Sound Blaster is not
present, ScopeTrax will beep. It's recommended that you set the
device to SBlaster DMA when trying to record a quality sample or if
your computer is slow. The Scope is not active with SBlaster DMA.
7.6.13 Mix File
Superimposes a sound file on the current sample starting at the Start
Index. You have to type in the filename (maybe the next release will
present a list of files like Select File does).
7.6.14 Ins File
Inserts a file into the current sample starting at the Start Index.
You are prompted to enter the filename.
7.7 Zoom
Zooms in on the current block (the area between the vertical dashed
lines). You can zoom closer by moving the dashed lines closer together,
and using Zoom again. If you keep on zooming, you will eventually be
able to distinguish individual samples in the shape of a series steps.
Maximum zoom occurs when a single sample (one byte) occupies the entire
length of the graph window.
7.8 Unzoom
Zooms out so that the full sound file is visible.
7.9 Options
Presents the sub-menu:
Scope Size
Graph Size
Background
Play Bar
7.9.1 Scope Size
Toggles the size of the scope window. Makes it half/double it cur-
rent horizontal size. Also increases/decreases the horizontal graph
window size.
February 1992 ScopeTrax Version 1.0 Page 13
7.9.2 Graph Size
Toggles the size of the graph window. Makes if half/double its
current vertical size.
7.9.3 Background
Toggles background playing of samples. A leading dot indicates the
background mode is active (Device SBlaster DMA always runs in fore-
ground mode). While in background mode, you can change the sample
rate and adjust the scope.
7.9.4 Play Bar
Toggles on/off the vertical play bar indicator which moves across the
graph when a sample is playing in background. Turning off the play
bar indicator will improve the scope output. A leading dot means
that the play bar in on.
Note: The play bar indicator is displayed only when background mode
is active.
7.10 About
Prints a copyright message.
7.11 Start Index
Determines the start of the block and the point where playback will
start. The Start Index is shown on the graph as a dashed vertical line.
The current byte offset is shown under the words "Start Index".
The Start Index is changed in many ways:
1) Move the rectangle to the words "Start Index" and use the left
arrow key to decrease or the right arrow key to increase the value.
2) Press the '*' or '/' key. This Scopes part of the sample.
3) Press <Backspace>. This moves Start Index to 0 and Unzooms.
4) Click the mouse over the left and right arrows located under the
words "Start Index".
5) If the rectangle is on the words "Start Index", you can click
the mouse on the graph.
Using '*' and '/' are very useful when trying to isolate flaws (pops)
in a sample. Remember that Increment determines how much the Start
Index will change. The Start Index can't be greater than the End Index.
7.12 Sample Rate (playback)
Determines playback sample rate. It allows you to fine tune the sample
rate.
This value is changed in various ways:
1) Move the rectangle to the words "Sample Rate" and use the left
arrow key to decrease or the right arrow key to increase the value.
2) Use one of the function keys from F1 to F4
F1 = 5500
F2 = 7333
F3 = 11000
F4 = 22000
February 1992 ScopeTrax Version 1.0 Page 14
3) Click the mouse over the left and right arrows located under the
words "Sample Rate".
4) Refer to section 7.3.3
Sample Rate ranges from 1000 to 65535. SBlaster DMA uses only 4000 to
22000.
7.13 End Index
Determines the end of a block and the point where playback ends. The
End Index is shown on the graph as a dashed vertical line. The current
byte offset is shown under the words "End Index".
The End Index is changed in the following ways:
1) Move the rectangle to the words "End Index" and use the left
arrow key to decrease or the right arrow key to increase the value.
2) Press <Backspace>. This moves End Index to then end and
Unzooms.
3) Click the mouse over the left and right arrows located under the
words "End Index".
4) If the rectangle is on the words "End Index", you can click the
mouse on the graph.
Remember that Increment determines how much the End Index will change.
The End Index can't be less than the Start Index.
7.14 Repeat
When repeat is on, the sample is played over and over. Repeat is
toggled by one of the following:
1) Positioning the rectangle on the word "Repeat" and pressing
<Enter>.
2) Pressing "R" when there are no sub-menus.
3) Clicking the mouse over the word "Repeat".
Repeat is turned off by the <Esc> key or by re-selection. Repeat does
not work for device SBlaster DMA.
7.15 Other Editor Settings and Special Keys
Setting the Base is explained in section 6.1.
Increment setting is in section 7.2.
Special Keys:
<Backspace> Set Start Index to 0, End Index to end of sample
and Unzooms.
F1, F2, F3, F4 Sets playback sample rate to 5500, 7333, 11000,
22000 respectively.
'*' Increases Start Index and scopes the surrounding
sample.
'/' Decreases Start Index and scopes the surrounding
sample.
<Tab> Moves from one menu item to another.
<Shift Tab>
<Up arrow>
<Down Arrow>
February 1992 ScopeTrax Version 1.0 Page 15
<Space> Starts (stops) playback of a sample.
<Esc> Stops playback of a sample. Turns off Repeat.
Exits a sub-menu.
<Enter> Selects a menu item.
<Home> Exits a sub-menu.
'[' and ']' Changes Base Rate.
'+' and '-' Changes Increment.
8 Other Included Software
8.1 EMMPLAY.EXE
Included with ScopeTrax is EMMPLAY.EXE. This sample player loads and
plays samples in expanded memory. The sample can be as large as the
amount of free expanded memory on your system. EMMPLAY.EXE does not
automatically detect VOC or IFF files. The /A option will convert IFF
files.
The command:
emmplay /?
produces the following output:
Expanded Memory Sample Player Version 1.0
Copyright (c) 1992 Chris S. Craig
Usage: EMMPLAY <filename> [<options>]
Options:
/R<samplerate> Sets sample rate, <samplerate> = 1000 to 65535
/B<baserate> Sets base rate, <baserate> = 5000 to 24000
/P<port> Sets Sound Blaster 2x0H I/O port, <port> = 1 to 6
/? Shows this help message
/A Amigafy, change data to unsigned
/D<device> Sets device, <device> = 0 to 4
0 = PC Speaker mode A
1 = PC Speaker mode B
2 = Sound Blaster, direct
3 = LPT1, printer port 1
4 = LPT2, printer port 2
Refer to documentation for more help.
Note that EMMPLAY.EXE does not support the Sound Blaster DMA mode. In
order for this program to work properly, you need a 386, 486, or a fast
expanded memory card. Software which simulates expanded memory by copy-
ing data to and from disk or other memory will NOT work. Software such
February 1992 ScopeTrax Version 1.0 Page 16
as QEMM, 386MAX, or EMM386 will work. Fast page swapping (or memory
remapping) is important when playing through the PC speaker where 'pops'
occur during swaps.
If your Sound Blaster I/O port is not the factory setting, you must
specify the port with the /P option.
8.2 FINDCARD.EXE
FINDCARD.EXE attempts to find the Sound Blaster Card. It scans all the
I/O ports from 210H to 260H. The program displays the I/O address of
the card and other information about the card. If your card is not at
the factory address of 220H, you must configure ScopeTrax to use the
correct address. Please refer to section 3.
Note: Do not use FINDCARD if you have other devices/cards with I/O ports
set between 210H and 260H.
8.3 SPACK and SUNPACK
SPACK and SUNPACK are utilities for compressing/decompressing sound
files. They use a pseudo adaptive delta compression scheme. The com-
mand line syntax is:
spack <input file> <packed file> <bits for compression>
and
sunpack <packed file> [<output file>]
SPACK takes the input file, compresses it, and creates the packed file.
The <bits for compression> parameter determines the number of bits to
use when compressing. This value can be any integer from 1 to 7. Using
1 gives 8:1 compression, but with the poorest quality. Using 7 gives
8:7 compression with almost perfect quality. You should experiment with
various values before deleting any of your original files. Remember to
unpack files before you play them.
The input file MUST be in raw, 8 bit, unsigned format. Any header
information will be lost in the compression.
WARNING! DO NOT USE SPACK TO COMPRESS ORDINARY FILES. SPACK USES A
*LOSSY* COMPRESSION ALGORITHM AND MUST ONLY BE USED ON RAW SOUND FILES.
Examples:
spack hello.snd d:\sound\ 4
Compresses the sound file "hello.snd" using an 8:4 compression (50%) and
creates the packed file "d:\sound\hello.sip". Note that the ".sip"
extension is automatically added to the packed filename unless an exten-
sion is given. Directory names must end with a '\'.
spack good-bye.s3 .\ 6
Gives 8:6 compression on "good-bye.s3", creates the packed file "good-
bye.sip" in the current directory.
spack c:\sounds\wow.raw d:packwow.pad 3
February 1992 ScopeTrax Version 1.0 Page 17
Gives 8:3 compression on "c:\sounds\wow.raw", creates "d:packwow.pad".
SUNPACK takes the packed file, decompresses it, and creates the output
file. If no output filename is given, SUNPACK uses the file's original
name (i.e. it uses the name on the file before it was packed).
Example:
sunpack d:\sound\hello
Decompresses the packed file "d:\sound\hello.sip" and creates the file
"hello.snd".
8.4 ULAW2SND.EXE
ULAW2SND.EXE converts files from uLAW encoded format to unsigned 8-bit
format for ScopeTrax. Works on '.au' files (Sun and NeXt systems).
Syntax:
ulaw2snd <input file> <output file>
9 Bugs and Recommendations
Bugs (Scopetrax):
If you press and hold the <Space> key and then press <Pause>, the
system may crash (you will have to reset). This appears to be a BIOS
problem.
Please tell me about any other bugs. Be sure you have read all of the
documentation first.
One problem that bugged me was the following DOS message for systems with
only one diskette drive installed:
Insert diskette for drive B: and strike any key when ready
It occurs whenever you try to access drive B: when there is no B: drive
installed. After you 'strike any key', drive B: 'replaces' drive A:. If
you then want to go back to drive A: you get a similar message.
There appears to be no standard (or documented) way to avoid this
message. I can't understand why there isn't a DOS function that provides
basic information about disk drives. After all, DOS stands for DISK! Oper-
ating System (although 'disk' is used in a different context). A useful
function would take a letter ('A' to 'Z') and return general information
about that drive (such as: networked, logical, physical, floppy, redirected
floppy !, invalid, created by SUBST, etc.). There are some DOS function
which give you information about drives, but they always seem to physically
check the drive first. This only succeeds in producing the notorious
"Abort, Retry, Fail" error on diskette drives.
A LOT of software suffers from this problem (even major applications).
Just try running various program on a single diskette system and see what
happens when you save or load a file on drive B: (or drive A: if B: is
February 1992 ScopeTrax Version 1.0 Page 18
currently active) within the program. (Many Microsoft applications don't
have this problem. I wonder why ? :-) )
If it helps anyone, the byte at address 0000:0504 has some signifi-
cance (no thanks to DOS documentation).
NOTE: If you use the DRIVER.SYS device, the message may still sloppily
overwrite the screen. Even the editor for MS-DOS 5.0 (i.e. EDIT) has this
difficulty.
Another complication with DOS is device file names. By entering the file
name "CON" you can crash most programs, including Windows 3.0.
Recommendations:
1) Don't invoke ScopeTrax under Windows or other 'multitasking' soft-
ware.
2) Remove TSRs that use modems in background (downloads in
background).
3) Don't have PRINT running in background while using ScopeTrax.
4) Run on a 286 or better.
5) Use a device other than the PC speaker, if possible.
6) Don't play with bugs.
7) Please inform me of new features you would like added to ScopeTrax.
10 Trouble Shooting
Problem Cause
-------------------------- ----------------------------------------
Sound Quality is Poor System is slow.
Base Rate is set too high or too low.
Sample is not in UNSIGNED 8 bit format.
System does not have a 'real' speaker.
Using wrong PC speaker device A or B.
System Locks or Crashes Base Rate is too high.
System is slow.
TSRs are running in background.
Refer to section 9
Scope Does Nothing Device SBlaster DMA is active.
System is slow and background mode is on.
Block is small.
Doesn't Play in Background Device is SBlaster DMA.
System is slow.
Can't Hear Anything Speaker not connected.
Using PC speaker (usually quiet).
Block is small.
Banana in ear.
February 1992 ScopeTrax Version 1.0 Page 19
11 Copyright and Warranty
The software and documentation include the following:
SCOPTRAX.EXE README.DOC ULAW2SND.EXE
SCOPTRAX.DOC SPACK.EXE
SCTXCONF.EXE SUNPACK.EXE
EMMPLAY.EXE FINDCARD.EXE
The software and documentation are copyrighted by the author. You may use,
copy, and distribute the software and documentation. All copies MUST
contain all the software and all the documentation.
You are prohibited from:
charging or requesting donations for copies;
distributing the software and/or documentation in commercial products;
modifying the software and/or documentation.
No for-profit organization is permitted to charge any fee for distribution.
The software is provided as is, without warranty of any kind. The author
shall not be liable for damages of any kind. Use of this free software
indicates you agree to this.
The software and documentation are copyright (c) 1992 by:
Chris S. Craig
P.O. box 9051
St. John's, NF
CANADA A1A 2X3
My internet e-mail address is chris3@irma.cs.mun.ca
All trademarks/registered names acknowledged.
12 ScopeTrax History and Future
12.1 Origin
ScopeTrax was born July 1991 as a test program for the realtime oscillo-
scope and my new 'virtual sample rate' sound engine. The test program
slowly evolved from a sample player to a sample editor.
12.2 Revisions
Initial Revision, Version 1.0
Contains 14 editing functions.
Devices supported: PC Speaker, Sound Blaster, DACs on LPT1 or
LPT2.
Sample formats supported: VOC, IFF, Raw, 8 Bit Unsigned.
Contributors for Version 1.0
------------------------------------------
D.C. Newfoundland, Canada
February 1992 ScopeTrax Version 1.0 Page 20
12.3 Future
I have about 10 to 20 new features I'd like to add to ScopeTrax.
Included in these features are: (? = maybe)
* An improved menuing system.
* More Digital Signal Processing and editing functions.
? A realtime bar spectrum analyser.
? An 'instant' spectrum analyser graph.
* Better support for saving different formats.
? Built-in expanded memory support.
? A BASIC type PLAY emulator that plays instruments instead of
beeps.
I am currently attending university, so most of the work has been
done on my spare time. This package has taken hundreds of hours to
develop (the documentation alone took over a week). It is composed of
about 4600 lines of C code and 2500 lines of assembler code. I was
tempted to make it shareware (should I ?).
If you would like to support ScopeTrax, here are some ways you can
help me to develop future versions:
a) Send donations to the address in section 11 (check or money
order, Canadian currency). For a generous offer of $25, you will
become a listed contributor for the next version.
b) Send some free information about the following:
Encoding/decoding of other formats of samples.
New I/O device programming data.
Good methods for compressing sound files.
New ideas for features.
A fool proof and accepted way to determine which disk drives
exist ! See Bugs section.
Compared to the cost of similar commercial packages (50$ to 100$ or
more), this package is a real bargain. You even have a voice as to the
direction the software should head. Without your support, ScopeTrax
will perish and a potentially powerful piece of software will be lost to
the world of PCs.
"I look forward to the day when people can help each other, instead of
just helping themselves."
Thanks for using ScopeTrax !
February 1992 ScopeTrax Version 1.0 Page 21