              I/OMagic Tempo Windows Drivers Release Notes
                       Wave Driver Version 1.3
                     Synth Driver Version 2.0.001
                      tempocs Client version 1.3
                           October 23, 1995

Version 1.3 Changes
===================

Version 1.3 driver changes are to support a new CIS on the Tempo Card. The new
CIS is required for Windows 95 support. NOTE that this version is a
DOS/Windows 3.1 driver support ONLY! Keep an eye out on our BBS for latest
information regarding Windows 95. If you still are required to use Windows 95,
see the file W95TEMPO.TXT on the Tempo installation disk. The tempo will run
but ONLY with the real mode PCMCIA drivers (Drivers for Card and socket
services loaded from the config.sys file).

Configuring for Databook Card and Socket Services
=================================================

Databook Card and Socket services are not as flexible as other Vendors'
services. It is required that you do two thing to make the I/OMagic
Tempo PC Card work with Databook.

1) The tempo requires a small memory window when it first loads, therefore you
need to insure that that window is available for us. Edit your Config.sys
file and find the line that contains the driver called CARDTALK.SYS. On this
line you need to insert a /MEMW=D000-D3FF (The range D000-D3FF must be the
exact exclusion range that is on you memory manager).

2) Also on the CARDTALK.SYS line you should also add /IOW=380-38F

Here is an example of what this line should look like, but this is not the
concrete way it should be. Please only use this as a guideline.

device=c:\cardtalk\cardtalk.sys /MEMW=D000-DFFF /IOW=380-38F


New Synth driver with "Fatman" patches
======================================
A new synthesizer driver is being supplied, which includes patches written by
"The Fat Man". This driver also implements advanced MIDI features, such as
Pitch Bend, which were not present in the previous driver. The combination of
the Fat Man patches and the advanced MIDI features permits sound quality
approaching that of wave table synthesis in many cases.

"Auto" configuration now supported
==================================
Two forms of "auto" configuration are now supported by the Windows
drivers:

1) If the DOS Card Services Client (TEMPOCS.EXE) is used, then no
configuration is required in the Tempo driver. The drop-down boxes in the
driver setup window will appear grayed, and may not be changed. However,
TEMPOCS.EXE must still be configured with an interrupt number in AUTOEXEC.BAT.

2) If the DOS Card Services Client (TEMPOCS.EXE) is NOT used, then you may
choose a specific interrupt number and I/O port address from the drop-down
boxes in the driver setup window, or you may choose AUTO.

If you choose AUTO, then the Tempo driver will choose the lowest-numbered
available interrupt. This interrupt number might be different each time that
Windows is run and/or each time the Tempo card is inserted. In order for this
to work properly, your Card Services driver must be properly configured to be
aware of your computer's resources. (With SystemSoft drivers, make certain to
re-run CSALLOC.EXE after any changes to your CONFIG.SYS and AUTOEXEC.BAT which
may affect available interrupts.)

Note that there currently are no alternative I/O addresses: the only valid
base address is 380. However, this may change in a future driver.


Hot-plugging supported in Windows
=================================
Hot-plugging is now supported in Windows. You may start Windows with the Tempo
card inserted or absent. The card may be inserted or removed at any time that
it is not in use.

How applications react to the card being absent will depend on the particular
application. In general, though, applications whose primary purpose is to work
with a sound card will display an error message if the card is not present.
Typical error messages are:

   "Wave driver is disabled"
   "Audio card not found"
   "The Wave device is busy. Close any application using the Wave
    device and try again"

Applications whose use of the sound card is incidental (for example, programs
which use sound to signal certain "events", or video players that play
accompanying sound) will generally not display an error message, and will
perform their usual functions without playing sounds.

Because the Windows multimedia functions were not designed for removable
cards, however, some applications may become "confused" when you hot-plug the
Tempo card.

You may NOT remove the Tempo while it is actually in use.  The card is in use
when an application has any device (wave, synth, midi) open for input or
output. It will usually be apparent when the Tempo is in use. One case where
this may not be obvious is when you are using Voice Pilot or any similar
application: make sure that you close Voice Pilot before removing the Tempo
card.

If you do remove the Tempo while it is in use, you may receive an error
message which will advise you to close all applications and re-boot your
computer. You may not be able to actually close applictions, and you may not
receive the error message.

Hot-plugging support makes use of an interface licensed from SystemSoft, and
requires Socket Services and Card Services.  Note, however, that it does NOT
require that you use the SystemSoft Socket Services and Card Services drivers:
you may use another brand of drivers. Make sure, however, that you run the
I/OMagic install program if you are updating your drivers: this will insure
that the interface is installed. As of this release Hot-plugging is not
supported by the Phoenix CardManager 3.0 Card and Socket Services. Phoenix
does not include any support under Windows to correctly handle Card Insertion
and removal messages.


IMPORTANT NOTE: A bug is the SystemSoft interface will cause Windows to
lock-up if you attempt to run the SystemSoft CardView program while using the
Tempo drivers. This will be corrected in a future release from SystemSoft. If
necessary, the Tempo Drivers can be told not to use the SystemSoft interface.
However, in this case, the Tempo DOS Card Services Client (TEMPOCS.EXE) MUST
be loaded, and hot-plugging may NOT be done.

To disable the use of the SystemSoft interface by the Tempo drivers, edit your
SYSTEM.INI file in your Windows directory, and locate the section [tempo.drv].
Add or modify the following line:

   UseCardServices=No

(Note that this is also necessary if you are using an "enabler" for certain
machines which do not have Socket Services and Card Services. We currently do
not supply any such enablers, however.)



Power Management supported in Windows
=====================================
Advanced Power Management (APM) is now supported in Windows.  This will allow
proper operation of the Tempo card through "sleep mode".

If the card is actually in use when APM attempts to put the machine to sleep,
the driver will generate a message which will attempt to refuse sleep mode.
However, in some cases that message may be ignored: for example, if sleep mode
is being entered because of a failing battery, or because of a user request.

As with hot-plugging, sleep mode may be unreliable if the card is actually in
use when sleep mode is entered, and if the APM ignores the driver's refusal of
sleep mode.

In order for the Tempo to be properly restored after sleep mode, the following
must ALL be true:

1.  APM BIOS conforming to APM 1.1 (preferred) or 1.0 must be present in your
computer, and enabled. Some machines with an APM 1.0 BIOS will not work
properly, due to the poor definition of the 1.0 specification and the
resulting mis-implementation by some manufacturers.

2.  power.exe (supplied with DOS) must be installed.

3.  Windows must be installed with CPU set to "386SL with APM".  ("MSDOS with
APM" appears to not work correctly. However, "386SL" appears to work even on
machines that do not use an SL chip, as long as they have a
properly-implemented APM BIOS.)

4.  SystemSoft Sockets Services and Card Services software, version 3.0 or
later, AND CS_APM.EXE (not normally supplied, but included with our drivers),
OR another vendor's Socket Services and Card Services driver which supports
APM and generates artificial card insertion and card removal events when
waking-up from sleep mode.

5.  The APM BIOS or Card/Socket Services MUST power-down VCC to the PCMCIA
slot in sleep mode. If this is not done, the card will not be reset, and
attempting to re-initialize it may fail

6.  The APM BIOS or Card/Socket Services MUST power-down VPP to the PCMCIA
slot in sleep mode. Otherwise, undesired audio output may be heard. (Example:
IBM ThinkPad 500.)

7.  DOS programs are unable to recover from sleep mode, unless they register
as POWER.EXE clients or as Card Services Clients (very unlikely). However, DOS
programs which use only the FM synthesizer will probably recover properly.  If
interrupted while playing music, patches will probably be incorrect (resulting
in odd-sounding instruments) until the application closes.


DOS Card Services Client not necessary
======================================
Starting with version 1.1.004 of the Wave driver, the DOS Card Services Client
(TEMPOCS.EXE) is optional. If you do not intend to use the Tempo card from DOS
before executing Windows, then TEMPOCS.EXE is not needed. You may remove it or
remark it out of your AUTOEXEC.BAT file. This will save you approximately 30K
of DOS memory. You can still run DOS applications which access the Tempo card
from within a DOS window while running Windows.

Note that your Socket Services and Card Services drivers MUST still be loaded.

If the Tempo card is inserted in a slot when Windows starts, you will hear the
confirming beep tone when Windows is started.

Note that if TEMPOCS.EXE IS used, and the Tempo card is inserted when Windows
is started, and subsequently removed and re-inserted while in Windows, the
card will be disabled when you exit Windows.  If you intend to use the card
while in DOS, you must remove and re-insert the card to re-enable it.


Mute on Record
==============
The wave driver has been changed so that the default is to mute the speaker
output during recording. This will prevent feedback from the speakers when
recording from a microphone. If you prefer to hear what you are recording, you
can defeat this feature: in your SYSTEM.INI file in your Windows directory,
locate the section [tempo.drv]. Add the following line (or modify, if a
similar line already exists:

  MuteOnRecord=No

We recommend this only if you will not be recording from a microphone, or if
you will be using headphones rather than speakers.

Simultaneous external MIDI and Wave I/O not permitted
=====================================================
Simultaneous external MIDI and Wave I/O is currently not permitted. There is
no restriction, however, on the use of the internal MIDI synthesizer. This
will be corrected in a future release of the drivers.

Level Meters in Windows Sound System Mixer
==========================================
This version of the Tempo wave driver does not support record and playback
level meters in the Windows Sound System mixer, although level meters are
displayed in the mixer. A future version of this driver will have fully
functional level meters.

Speakers
========
Most audio cards designed for desktop computers contain audio amplifiers
(1 to 3 watts is typical) designed to drive small speakers directly. They
can also be used to drive amplified speakers.

Because of PCMCIA power limitations, the Tempo card supplies a line-level
audio output only. You MUST use amplified speakers! Unfortunately, many
inexpensive amplified "computer" speakers do not work well with a line-level
input, and really require the amplified output provided by the typical
desktop audio adapter card.

The old adage is true: you get what you pay for! Investing in a good pair
of amplified speakers will not only give you good volume when used with
the Tempo card, but will also give you noticibly better sound - even if
you think you have a "tin ear"! The Tempo card is capable out sound quality
approaching that of a CD player: choose your speakers accordingly.

Examples of speakers which are NOT RECOMMENDED for use with the Tempo
card. These speakers provide both low volume and poor audio quality.

   Labtec CS-550

Examples of speakers which will provide MARGINAL quality when used with
the Tempo card. The speakers provide better audio quality, but may
not produce the desired volume.

   Sony SRS-55
   Labtec CS-180

Examples of speakers that will provide excellent performance with the
Tempo card. These speakers will provide room-filling volume and superior
audio quality.

   Personna PC
   Acoustic Research "Powered Partner" series


Setting the Internal MMA volume
===============================
The volume level between the MMA (waveform audio chip) and mixer chip
can now be controlled through two settings in system.ini. In the
[tempo.drv] section you will find two settings:

 LInternalMMAVolume=<number>
 RInternalMMAVolume=<number>

<number> can be a value between 0 and 65535, and is normally defaulted
to 52224. If you are using headphones or small, inexpensive speakers with
limited amplification, you can obtain some additional volume on wave playback
by setting these values to 65535. This additional volume will come at the
expense of audio quality - setting this value higher than the default will
result in some distortion on extreme peaks. Note that turning down the WaveOut
volume at the mixer will NOT reduce this distortion. You should adjust this
setting only if absolutely necessary.

Required CPU chip
=================
Please note that the I/OMagic Tempo Windows drivers require a 386
or higher CPU to run. If you do not have a 386 or higher, an alert
box will be displayed when Windows is loaded that the driver has
been disabled because you do not have the required CPU.

Recording and Playing Wave Audio at High Speeds
===============================================
The ability to record and/or play back wave audio at high speeds depends
on several factors:

   The speed of your CPU
   The speed of your hard disk
   The use of disk cache software
   Other tasks running in Windows

The possible speeds and recording formats, and the number of bytes per
second that must be transferred to or from your hard disk and to or from
the Tempo card are:

sampling rate    format              transfer rate
------------  -----------------     ----------------
    7350 kHz  8 bit mono             7350 bytes/sec
    7350 kHz  8 bit stereo          14700 bytes/sec
    7350 kHz  16 bit mono           14700 bytes/sec
    7350 kHz  16 bit stereo         29400 bytes/sec

   11025 kHz  8 bit mono            11025 bytes/sec
   11025 kHz  8 bit stereo          22050 bytes/sec
   11025 kHz  16 bit mono           22050 bytes/sec
   11025 kHz  16 bit stereo         44100 bytes/sec

   22050 kHz  8 bit mono            22050 bytes/sec
   22050 kHz  8 bit stereo          44100 bytes/sec
   22050 kHz  16 bit mono           44100 bytes/sec
   22050 kHz  16 bit stereo         88200 bytes/sec

   44100 kHz  8 bit mono            44100 bytes/sec
   44100 kHz  8 bit stereo          88200 bytes/sec
   44100 kHz  16 bit mono           88200 bytes/sec
   44100 kHz  16 bit stereo        176400 bytes/sec

If the Windows wave driver is unable to play or record at the speed and
format you have selected, strange things may happen: you may find that
sections of played files are being skipped or repeated, there may be
skipped sections in recorded files.

You can then take the following actions to correct the situation:

1. Close other applications - especially any DOS windows that are running
   a program in the background. (DOS windows which are not actively
   running a program will have little if any effect.)

2. Make sure that you are using a disk cache program, such as Smartdrv,
   and make sure you have allocated an adequate cache size. (We recommend
   1MB or more.) If you are having trouble recording, try enabling
   Smartdrv's write cache feature. (This is only available in the Smartdrv
   version supplied with DOS 6.0 or higher.)

   You can enable write caching by place a "+" sign after the drive
   letter(s) in the Smartdrv entry in your autoexec.bat file. We also
   suggest using the /N parameter, which tells Smartdrv to perform disk
   writes in "background". If you have DOS 6 or higher, you can find out
   more about Smartdrv by typing "help smartdrv" at the DOS command prompt.

   Note that Smartdrv now DISABLES write caching by default, so you must
   modify your autoexec.bat file to enable it. There are certain risks
   associated with write caching: please read your MSDOS manual and/or
   the online help available is MSDOS to make sure that you understand
   how to protect yourself from data loss when using write caching.

3. If you are still having trouble recording, try recording to a RAM
   drive. Type "help ramdrive.sys" at the MSDOS 6 or higher command
   prompt, or check your MSDOS manual for further information.

4. Try increasing the amount of memory in your computer. We recommend
   a minimum of 8MB of memory for good performance with Windows, whether
   you are using a Tempo card or not.  If you can, increase system
   memory. Remember that using a disk cache will take away from the
   memory usually available for Windows.

5. Make certain that you have allocated a permanent swap area on
   your disk. You can also increase performance by turning on
   32-bit disk access. (Note that using 32-bit disk access could lead to
   loss of data on certain laptop computers with power management turned
   on - see your computer manual for more details.)

   We recommend setting-up a swap area equal to the size of your
   computer's RAM memory. Allocating too much swap area can be as
   bad as allocating too little - some multimedia programs are then
   "fooled" into thinking that you have much more RAM than you have,
   and will allocate very large video or audio buffers, resulting
   in long delays - for example, when starting to play video or audio.

6. You may be limited by the transfer rate of your hard disk. Some
   notebook computers (NEC Versa, for example) have a hard disk transfer
   rate as low as 225K/sec. This is dangerously close to the 176K/sec
   rate needed to record 44kHz/16bit/stereo, and leaves little time for
   the computer to do other things. You can use a program such as
   Norton Sysinfo to check your hard disk's transfer rate. We recommend
   a transfer rate of 500k/sec or higher. If you can, try upgrading
   to a higher-speed hard disk.

5. You may be limited by the speed and type of your CPU. If you are
   uncertain of this, you can use a program such as Norton Sysinfo to
   determine the speed and type of your CPU. We recommend a minimum of
   a 486SL running at a 25mHz clock rate for best performance. If you
   can, use a computer with a higher-speed CPU.

6. If you still cannot record or play at high speeds after taking the
   above steps, you must change the sampling rate and/or format to
   one that requires fewer bytes/second. Refer to the chart at the
   beginning of this section.

Note that recording is relatively more "difficult" than playback, and
you will probably be able to play back at higher speeds than you can
record. Most 486 computers will be able to play back at all speeds
supported. Most 486 computers will NOT be able to record at
44kHz/16bit/stereo unless sufficient memory is provided and a disk cache
with write caching enabled is used.

Using Voice Pilot with Voice Feedback
=====================================
When using Voice Pilot (supplied with Microsoft's Windows Sound System
software), you will get an error message when starting Voice Pilot if
"voice feedback" is enabled. (i.e. Voice Pilot will keep you informed
of it's  status by speaking.) This message says that "all wave output
devices are busy."

Ignore this message, and press "continue". This is a bug in Voice Pilot
itself, and also appears when using the Microsoft Windows Sound System
ISA-bus hardware.

