Drivers...


The SBLAST drivers

Ident: SBLAST

Driver for use with SoundBlaster compatible soundcards

The 1200 Baud driver is still BETA!
The 9600 Baud driver is still ALPHA !
Use at your own risk!
There are surely some machines on which this driver does not run.

These drivers allow most SoundBlaster compatible soundcards to be used as 1200 or 9600 Baud packet radio modems.
Because the host processor has to do all the signal processing stuff (where Intel processors are weak) at least a 486 is required.
Besides, this driver can't be used for fullduplex operation, since it has to switch off the receiver while transmitting.
This is because soundcards use DMA, and the DMA controller can only transfer data in one direction per channel.

The software uses one interrupt and one DMA channel.
The soundcard is automatically configured to the specified interrupt and DMA channel.
Hardware requirements: 486, SoundBlaster compatible soundcard

Parameters:

  /?,/h    description of the parameters
  /b,/p    base address of the soundcard (default 0x220)
  /i       the IRQ number (default 7)
  /d       the DMA channel (default 1)
  /tc      serial port number, on which PTT and DCD should be output (1..4).
           This excludes /t.
  /ts      serial port address, on which PTT and DCD should be output. This
           excludes /tc.
  /tl      LPT port address, on which PTT, DCD, CON and STA should be output.
  /tp      invert PTT output (on RTS and TxD)
  /td      invert DCD output (on DTR)

If neither /t nor /tc is given, PTT and DCD are not output on a serial port.
You may then use a simple one transistor VOX circuitry to key the transmitter.
This works fairly well, since most sound cards deliver enough signal voltage.

Hint:

If computing power of the host gets tight, you may use the SB_FAST version.
This one replaces most of the multiplications (which are dreadfully slow on x86 systems) with table lookups.
This, however, increases the resident size of the driver by 8kByte to about 17.5kByte.
Furthermore, to keep the table size within bounds, the dynamic range had to be reduced further.

ALC (Automatic Level Control) Circuitry:

Some Soundcards seem to feature an ALC circuitry at the input.
This is clearly not good.
It prevents quite reliably any receiving.
In this case you may try to disable the circuitry.

Mixer:

This driver does not set the mixer.
You must therefore select output levels and input sources with the tools that came with your soundcard.
Also set the input filter to "HIGH".

EMM386:

Beta VDS (Virtual DMA Services) support is implemented.
The driver should be loadable into UMB memory.
The SoundBlaster drivers do not like EMM386 and its counterparts from other manufacturers that much, because their presence increases the interrupt latency.
If you encounter problems, please try without EMM.

Limitations:

- Only half duplex
- Requires a lot of host processing power


Author:
Tom Sailer
Weinbergstrasse 76
CH-8408 Winterthur
Packet: HB9JNX @ HB9W.CHE.EU
EMail: sailer@ips.id.ethz.ch