SCSTerm Scott's Communication Software
Current Version: 17.95
This page last updated March 14, 2026
The latest version is here:
or here:
Comments, suggestions and feedback:
What is SCSTerm?
It's a Windows program that communicates with any device that uses a standard serial port.
It improves productivity with many special features including color highlighting, programmable buttons and many lines in the scroll buffer.
The ability to search the text buffer. (a.k.a. a FIND command
Text highlighting - the program can highlight text strings
The strings, text color, and text background are all user configurable.
While working on a piece of code, you can highlight messages from that code.
This makes it much easier to see your messages buried within the output.
For example, default strings include "Error" and "Fatal".
By default, these are displayed with white text on a red background.
String highlighting can be saved in a standard HTML file. This helps identify important text for later diagnosis
On serial ports that report framing errors, SCSTerm will change baud rates to try to find the right one. (a.k.a. "auto" baud
Automatically download and install program updates
Runs on Windows XP, Vista, 7, 8, and 10
Address lookup - the program can use FindAddr.dll (if available) to translate address into symbols
Strings can be used to reset a "running" time
The running time is displayed continuously in the status line.
The running time can also used as a prefix for all lines on the screen to "timestamp" the line.
Strings can optionally trigger a PC speaker beep or play a wav file
With sounds, you don't have to keep a sharp eye on the screen for that rare event.
All settings are saved in the INI file. (The INI file is in the same directory as the EXE file
These settings include the serial port information, window size and position, capture information
and all of the strings, colors and buttons.
The program currently works with only one serial port at any given time
However, the program can be run multiple times, once per serial port.
Serial ports can be added manually if SCSTerm doesn't automatically add the port
In the File / Port dialog box use the "Add" button. SCSTerm will display an error
message if there's a problem accessing the new port.
If you're having problems with SCSTerm recognizing serial ports
you can run the program .
That program uses the windows API EnumPorts to create a list of valid port names.
Serial ports in that list are valid for SCSTerm. (Serial ports begin with "COM". For example "COM1:")
Subscriptions
One year subscriptions are only $30 per computer and are available through PayPal
SCSTerm is fully functional without a subscription, but only works for 15 minutes. A subscription includes all bug fixes & enhancements.
After using Paypal, click in the "Help" menu then "Buy Subscription". This will compose an email with system specific information for the subscription.
Subscriptions are automatically downloaded from the server and saved in the .INI file. To force an update you can use "Help" menu then "Check Subscription".
For questions, contact:
There are 2 saved cursors: DECSC / DECRC & alternate screen.
When changing settings, don't reconnect the port unless needed.
Version 17.91:
Many settings can now be saved per port:
Capture filespec has port name
Capture filespec has prefix
Capture when started
Connect when started
Confirm exit,
Display line prefix
Display control characters
Version 17.90:
Support for ANSI x3.64 / ECMA-48 / VT100 / xterm escape sequences
The "Send Date" command format is now configurable
Remote date/time prefix is "Time set to:" or "Current time/date:"
Date/time is either "Fri Oct 5 2015, 9:32:02 AM EST" or "2007/10/05 09:32:02"
Rate limit BEL sounds: no more than 5 sounds in 2 seconds, wait 5 seconds to reset
All strings can be ignored per port
All strings can be set to blink (to help identify local colors from strings vs host color)
UTF8 character support (current font must support requested characters)
Version 17.44:
Added message about beta version
Version 17.43:
Work around false positive in virus scanner
Version 17.4:
Improved serial port handling
Improved screen updates
Improved sending files
Fixed problem saving window position
Send DEL when user presses DELETE key
Now displays CD, CTS, DSR and RING
Version 17.3:
Display new version number available
Improved support for multiple monitors
Version 17.2:
Fixed race condition that affected CR/LF in strings
Improved subscription support
Changed to new website
Internal performance optimizations
Version 17.1:
Improved download & subscription message boxes
Added warning for subscription expiration
Version 17:
Added support for subscriptions
Prompt first (if needed) when using "Clear, Reset and Restart
Added menu item for "Clear buffer, Reset running and Restart Capture"
Fixed problem saving window size & position
Optimized serial buffer management
Corrected race condition that could forget current port
Fixed race condition that could cause memory corruption and crashes
Allow up to 200 buttons
Fixed "Start Capture Append"
The "auto baud" support now switches between 57600, 115200 and 38400
Internal performance optimizations
Version 16:
Program exit confirmation (Options/Confirm Exit)
Display port name in window title when disconnected
For "Options/Filespec has port name", use port label if set otherwise use port name
Use port name or label in capture filespec even when disconnected
Change baud on serial errors (a.k.a. auto baud) - not more than 1 change per second
Sort INI file contents when written
Automatically download program update
Version 15:
Increased from 10,000 to 15,000 lines
Capture can be enabled by default
Different capture file names for each serial port
Display FindAddr.dll filename & version
Version 14:
Option to include/exclude the timestamp in the capture file
Can now display "system time" in addition to "running time" and "settop time"
Added support for 2007 Daylight Saving Time changes
Added hyperlinks in about box
Added menu items to check for new version
Version 13:
Serial ports can be added or deleted manually
Option to enable/disable auto-baud toggle per port
Command line program parameter can be port name or port label
Buttons are disabled while sending a string
Buttons are disabled when not connected
Now supports 38400 in addition to the previous 57600, 115200 and 9600
The auto-baud feature now only toggles between 57600 and 115200
Changed EOL handling to support different line endings
The EOL detection has been changed to watch for LF and ignore CR. The previous method watched for CR and ignored LF.
The "copy" and "file save" code to is now hard-coded to ignore CR and change LF to CR/LF.
There is a new option to display control characters. (Not yet saved in INI file
Version 12:
Added support for FindAddr (requires FindAddr.dll). Addresses are translated
Any 8 digit hex number between '{' and '}'
Hex numbers after either "Backtrace:" or "Stacktrace:"
Can disable control key shortcuts - allows sending all control keys
Optimized HTML code generation
Improved text selection code
Version 11:
Save selected text or the whole buffer to a file
Text can be saved using HTML format to retain colors
Read existing text file to use text highlighting
Fixed edge condition that could cause incorrect timestamps with edit/copy
More performance enhancements
Version 10:
Added new "reset running" string: "System Initialization START"
The time prefix is now based on last character received on the line
Ctrl-Insert is same as copy
Warn user if typing when not connected
Capture file now includes COM port name & label
If COM port changes while capturing, new COM port & label is listed in capture file
Start capture now can append or overwrite
Can now include the date/time stamp when copying text
More performance enhancements
Version 9:
Added programmable buttons to send configurable text
Added configurable delay between chars and EOL for buttons and pasted text
Added auto scroll while selecting text
Added left mouse double-click to highlight current word
Fixed multiple speaker beeps and playing wav files
Optimized received text processing to reduce cpu usage
If elapsed time is reset while not connected, don't start counting until connected again
Added an option to display a line prefix with the settop date & time instead of the elapsed time
If the INI file is changed on disk, read new the file. This can happen if the program is running multiple times for multiple serial ports
Added context sensitive help to most dialog boxes
Added support for 9600 bau
Added new "reset running" strings
Version 8:
Save the baud rate setting in INI file
Added descriptive label for each COM port. For example, "First", "Second"
Prefix the serial port name with "\\.\" to handle port numbers > 9. (This works around a windows bug
Worked around win2000 INI file problem. (Windows writes INI entries one by one - very inefficient
Added mouse wheel scrolling. (The mouse wheel must be supported by windows.
Captured text now contains the timestamp prefix
The mouse cursor is now the height of current font
Added a text caret at current position
Version 7:
Disconnect menu item releases COM port
Display the current baud rate in the title bar
Added send file elapsed time, estimated time remaining, and completion percentage
Version 6:
F12 toggles between 57600 & 115200 baud (not saved in INI file)
If a framing error is detected, automagically toggle between 57600 & 115200. Unfortunately framing errors are not detected by all serial port drivers
Added raw file send. This sends a file with no translation and no handshaking
Send the PC's current date & time as "date" monitor command
Added a short delay between chars when sending a string because some devices would miss or drop characters
Version 5:
Can easily run multiple instances now - each one on a different COM port
Added command line parameter for COM port
Handle "access denied" on startup
Fixed problem with "restart capture"
Remember capture filespec for "Options/Capture" filespec
Fixed problem that didn't save wave filenames in INI file
Fixed problem with reading daylight savings time from settop
When minimized, will stay at the bottom of the scroll range, which is the newest text from settop
Version 4:
Current COM port shown in title bar
Now runs on Windows NT (corrected problem with WINSPOOL.DLL)
Watches for date & time set messages from the settop, and displays it in the status line
(Watches for the strings "Time set to:", "Current time/date:" and requires a valid date & time)
If SCSTerm missed the date & time set message, use the monitor's "date" command, with or without arguments.
Version 3:
The font can be changed
Optimized "paint" processing
Code now uses all 8-bits for characters
Can run multiple instances of the program
The settings of the menu items "Connect" & "Disconnect" are no longer saved in the INI fil
The new "Start Connected" & "Start Disconnected" menu items are saved.
When disconnected, the elapsed time blinks
Strings can now
Reset the running timer (Used to be hard-coded to be "Testing the POST")
Beep the PC speaker
Play a specified wave file
Version 2:
Added horizontal scrolling
Optimized "paint" processing
Added Connect & Disconnect functionality
Added some on-line help about special keys
Version 1:
First version released which includes all the basic functionality
Feedback
If you have suggestions, ideas, comments, etc. please let me know.
If the program does something unexpected, let me know.
Thanks, Scott