Configuring Advanced Options for COM Ports (103015)



The information in this article applies to:

  • Microsoft Windows NT Server 3.1
  • Microsoft Windows NT Workstation 3.1
  • Microsoft Windows NT Advanced Server 3.1

This article was previously published under Q103015
WARNING: Using Registry Editor incorrectly can cause serious, system-wide problems that may require you to reinstall Windows NT to correct them. Microsoft cannot guarantee that any problems resulting from the use of Registry Editor can be solved. Use this tool at your own risk.

SUMMARY

If you choose the Ports icon in Control Panel, you can configure the baud rate, number of data bits, parity, number of stop bits, and flow control for the existing standard PC communication (COM) ports, such as COM1. If you select one of the existing standard COM ports and then choose the Advanced button, you receive the following message:
There are no user configurable Advanced I/O parameters for this COM port.
This message means that NTDETECT already has obtained all the information about the particular port from the BIOS at boot time. To override those detected values, advanced options such as I/O addresses, COM Port Number, and FIFO Enable must be set directly in the Registry by using Registry Editor.

Windows NT 3.1 and Windows NT 3.1 Advanced Server support a maximum of 256 COM ports. Any ports after the existing standard COM ports can be added and modified by choosing Ports in Control Panel.

MORE INFORMATION

The HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\Serial subkey in the Registry has subkeys and values that can be used change defaults for serial ports that were detected by the system. This subkey can also be used to override values determined by the hardware detection.

The Serial subkey contains the subkey Parameters, under which there can be a set of subkeys typically named Serial<X>, where <X> is a whole number. A system administrator must place these subkeys and values in the Registry. You can define and manipulate these values only by editing the Registry.

Under the Serial<X> subkey, the following value entries can appear. The first two of these value entries are required. If the subkey does not include both of these, the port is not configured, and an error appears in the System Log in Event Viewer.

  1. DosDevices REG_SZ Range: Free-form string

    Specifies the name used to access the communication port from the Windows NT command prompt or from within an application. A typical value would be COM3.
  2. PortAddress REG_DWORD Range: A hex value

    Denotes the address of the first register of the serial device. In this case, a typical PortAddress would be 0x3e8. If the PortAddress value entry is the same as a system-detected port, the data in the current control set is used instead of the data found by the system. Entries appear in the System Log in Event Viewer if this is occurring. The following entry values are optional:

  3. DisablePort REG_DWORD Range: 0 or 1 Default: 0

    If the value is 1, the device is deleted after the port is reset during initialization. No access to the port is allowed.
  4. ForceFifoEnable REG_DWORD Range: 0 or 1 Default: 1
If the value is 1 and the hardware supports a FIFO buffer (for example, the NS 16550AFN), the driver enables the FIFO. Not all FIFOs are reliable. If the application or the user notices lost data or no data transmission, it is recommended that this value be set to 0.

REFERENCES

Information on the serial registry keys was obtained from the REGENTRY.HLP file available in the Windows NT Resource Kit.

Modification Type:MajorLast Reviewed:12/15/2003
Keywords:kbusage KB103015