You are here

Check Your Plug-ins

More and more external devices now plug into the PC serial and parallel ports. Martin Walker explains how to check your settings.

The humble serial port, once solely used for printers and modems, is now the standard way to interface to the Internet, run mice and trackballs, attach some dongles, and even connect to multiple MIDI devices (see the PC MIDI Interface roundup elsewhere in this issue). If you log onto the Internet very often, running your serial port at a less than optimum setting will quickly and unnecessarily increase your phone bills. With serial port MIDI interfaces, using the correct settings may also give you improved reliability, as long as your hardware can support the higher speeds available from Windows 95.

When you're logged on to the Internet, it's the hardware speed of your modem that determines the maximum possible data throughput. In the case of a 14,400‑baud device, typical speeds will be up to about 1.4Kb/second (due to extra bits being used for error checking, 10 bits are used to send each 8‑bit data byte). However, nearly all modems support hardware compression, which operates much as ZIP files do, in that the data can be compressed at the sending end, and then expanded at the receiving end. For this reason, the setting for your serial port must be higher than the modem speed to take advantage of the compression — you will never achieve the higher speeds unless you tell your software that your serial port is capable of them. Adjusting the COM port speed for Windows 95 can be done from the Control Panel, in the port Properties section of the System Device Manager. However, much communications software bypasses this setting, so you should also look for any settings options within the software itself to ensure best results.

Maximum data compression is by a factor of four, so for a 14,400 modem, your software should be set to 57,600 baud, to cope with the maximum possible rate emerging from the modem after decompression. In the case of a 28,800 device, this figure should be 115,200 baud, and so on. There's no point in increasing the software settings beyond these values. For fax modems, much software defaults to 9,600 baud, as this is the maximum speed of most stand‑alone office fax machines. Although you can set your rates higher, to communicate with other fax modems, I have found that I get errors when attempting to receive from a bog‑standard fax machine with my Winfax Pro software set at any speed higher than 9,600. Since you don't often know what sort of machine is sending you a fax, it's best to leave it permanently at this setting if you get any problems.

Note that these maximum rates rely on good telephone lines, and data that compresses well. In the case of already zipped files (many large downloadable software upgrades come in this format), it is unlikely that any further compression will be possible, and in this case it will be the modem hardware speed alone that determines download rates. With my ageing 14,400 US Robotics Sportster, I sometimes see occasional bursts at up to 3.7k, especially when receiving large text files such as FAQs, but for long downloads it is more typically around 1.2Kb/second. Another device to put on the upgrade list!

MIDI Mayhem

Serial MIDI interfaces are becoming more common, with up to eight inputs and eight outputs supported by some devices. A standard MIDI device operates at 31,250 baud, so with eight ports, the data may be arriving at 8 x 31,250, or 250,000 baud. When a byte of data arrives at the serial port, an interrupt is requested, so that Windows 95 can collect the data and deal with it. Most modern PCs use a 16550A UART (Universal Asynchronous Receiver/Transmitter) chip for serial port duty, which incorporates a 16‑byte buffer. This may not sound like much, but it can help greatly in ensuring that no bytes are lost while the operating system is responding to the interrupt request. This chip can cope with baud rates of up to 921,600, and so should cope with an 8‑in, 8‑out serial port MIDI interface with no problems. If your PC is still resolutely pre‑Pentium, you may still have one of the older 8250 UART chips in it. This may run into problems if you attempt to run even a 1‑in/1‑out MIDI interface.

In the case of parallel port MIDI interfaces, no speed settings are required, but to operate both MIDI Ins and Outs, you may need to use one of the more advanced bi‑directional parallel port modes, rather than the standard one. Most modern PCs have a selection of modes available from within the BIOS, so pay close attention to the installation procedure for your interface, as changing BIOS settings willy‑nilly may be potentially damaging to your PC. Interestingly, Steinberg warn, in the FAQ section of their Service Web for Windows (www.steinberg.net/support/servic...), that fast parallel ports may sometimes cause your Cubase dongle not to be recognised. It would be ironic if setting up your new serial port MIDI interface resulted in Cubase not working!

Virtual Confusion

It can be confusing, when trying to set up your PC for optimum hard disk recording, if manufacturers refer to both vcache and virtual memory, as there are two completely different techniques involved here. To speed up the hard drive, Windows 95 uses a portion of RAM to hold data that has recently been accessed from disk: this is known as the Cache. In many applications, there is a high probability that some of this data will be required again shortly afterwards, and retrieving it from RAM instead of re‑reading it from the drive can save a considerable amount of time. Read Ahead optimisation is part of the same process, but works by grabbing bigger chunks of data from disk than have actually been requested, on the grounds that the next access is most likely to follow on from the current one. Again, most applications benefit from this, but it can sometimes have a negative effect with hard disk recording, since when grabbing audio data for replay, and recording a new track, the drive may be diving off to different parts of the disk on a continuous basis. In this case, if each grab is larger than actually requested, it can have a slowing effect. For this reason, it's worth trying your PC with Read Ahead optimisation switched off, for comparison.

Adding a vcache entry in SYSTEM.INI (see 'All Tooled Up' in the November '96 issue of SOS for more details) can sometimes improve hard disk recording performance by stopping the cache in RAM from growing beyond a certain size. Otherwise, it's possible that it will grow to a size where the second main cache becomes involved — Virtual Memory. This is the opposite side of the coin: when most of the RAM is being used, Windows 95 creates a special file on disk known as the Swap File. Any data that is still needed, but not actually being used at a particular moment, can be shunted off to the disk drive, for later retrieval. This is how you can run many more applications at one time than could ever fit into your RAM memory. The active one will be in RAM, but some of the others are temporarily moved to the hard disk. Virtual Memory can, if necessary, use the entire remaining area of your disk drive as a Swap File. The benefit of upgrading to a bigger RAM memory size is that less data needs to be shunted off onto the hard drive, so that when you switch between applications, they appear almost instantaneously, rather than causing a frantic whirring of the drive, whilst everything is shunted back into RAM. So, in essence, a Disk Cache (vcache) is RAM acting as a temporary disk drive, whereas Virtual Memory is disk space acting as temporary RAM.

The Windows 95 MIDI Limit

While I'm on the subject of multi‑port MIDI interfaces (see above), it's worth mentioning that Windows 95 can only cope with a maximum of 11 MIDI devices (11 inputs, or 11 outputs). If you attempt to install more than this number of either inputs or outputs, you will probably start getting GPFs (General Protection Faults). This is not anything to do with the design of the interface; it's just that Microsoft, in their infinite wisdom, decided that 11 devices should be more than enough for anyone. If you have an 8‑Out interface, for instance, the driver for this will place eight entries on the Windows 95 MIDI output list. A typical soundcard will probably give two or three more (one for an external MIDI port, one for an onboard daughterboard socket, and maybe one for an FM chip driver). Along with the Microsoft MIDI mapper, this exceeds the total of 11 devices. If you attempt to add a second soundcard, or any other MIDI device, you'll probably be doomed to crashes from the start. The solution is to remove MIDI Mapper or the FM driver. There is some talk that Microsoft will address this limitation in the next release of Windows, but I wouldn't hold my breath.

Tiny Tips

Windows 95 can be tweaked till the cows come home, but with so many possibilities it's easy to overlook some of the simpler mods that can still be useful. One that I saw mentioned quite a time ago, but have only just got around to trying, is adding extra destinations to the SendTo menu (one of the many options that pop up when you right‑click on a file inside Explorer). You often need to examine the contents of a file to find out what it contains. Whilst Quickview is extremely useful, it doesn't allow editing (if you don't already have this installed, you can find it in the Add/Remove Programs applet of Control Panel, under the Accessories section of Windows Setup).

The contents of the SendTo menu can be found in the Windows/SendTo folder. If you create a new shortcut that points to the Notepad (this should be in the Windows directory) a new SendTo destination will appear on the list, that will quickly open any sort of Windows file and allow you to directly edit it as well. The only limitation is that the file cannot be larger than 64K in size, and, of course, data files will still show up as gibberish. To make things even more streamlined, rename the Notepad SendTo entry, by preceding it with an underscore (shift+minus keys). This will force it to appear at the top of the SendTo list, making it even quicker to select.