.TH SYNCTERM 1 2024-09-24
.SH NAME
syncterm \- BBS terminal program
.SH SYNOPSIS
\fBsyncterm\fP [\-46chqrts] [\-b\fIlist\fP] [\-e\fIdelay\fP]
[\-i\fIinterface\fP] [\-l\fIlines\fP] [\-n\fIconfig\fP] [\fIURL\fP]
.PP
\fBsyncterm\fP -T\fP
.PP
\fBsyncterm\fP -v\fP
.SH DESCRIPTION
\fBSyncTERM\fP is a terminal program designed specifically for connecting to
a Bulletin Board System (\fBBBS\fP)
.SS Options
.IP \fB\-4\fP
Only resolve IPv4 addresses
.IP \fB\-6\fP
Only resolve IPv6 addresses
.IP \fB\-b\fIlist\fR
Specify an alternative BBS list path
.IP \fB\-c\fP
Hide the status line
.IP \fB\-e\fIdelay\fR
Specify the "escape delay" in milliseconds for curses(3) mode.
Since curses uses the escape key for its own purposes, using the escape key for
other control requires a timeout.
If this timeout is too low, extended keystrokes such as arrow keys will be
interpreted as an escape keypress followed by other characters.
If this delay is too high, there will be a large delay after a single escape is
pressed.
If an escape delay of less than 10ms is specified, it is forced to 25ms.
.IP \fB\-h\fP
Specifies the default scheme for \fIURL\fP to be ssh://
.IP \fB\-i\fIinterface\fR
.RS
Specify the interface to use.
Depending on compile options and library availability, not all interfaces will
be available for all installations.
If \fI\-i\fP is not specified, SyncTERM will choose the "best" mode in the
following order: X11, GDI, SDL, Win32 Console, curses, ANSI.
The SDL mode specifically can fail in ways that the automatic fallback can
not properly detect (most notably with libGGI when it is enabled in SDL.)
When this occurs, a specific mode will need to be forced.
.PP
When \fI\-i\fP \fBis\fP specified, only the specified mode will be attempted.
No automatic fallback will be performed.
.PP
For the items with [\fIF|W\fP], an F or W may be added to indicate Fullscreen
or Windowed mode respectively
.PP
The possible values for \fIiface\fP are:
.IP \fBA\fP
ANSI mode.
This mode as well as the curses modes have Special caveats
(see \fBTEXT MODE CAVEATS\fP)
.IP \fBC\fP
Ccurses mode.
Special caveats listed in \fB\fITEXT MODE CAVEATS\fR
.IP \fBF\fP
Curses mode and assume that the display in use will display Codepage 437 glyphs
for characters above 127.
Special caveats listed in \fB\fITEXT MODE CAVEATS\fR
.IP \fBG\fP[\fIF|W\fP]
Windows GDI output mode.
Uses the Win32 API directly.
.IP \fBI\fP
Curses mode, and force ASCII only.
Special caveats listed in \fB\fITEXT MODE CAVEATS\fR
.IP \fBS\fP[\fIF|W\fP]
Require SyncTERM to run in SDL mode.
This requires SDL support to have been compiled in, and the library
``libSDL.so'' to be in the library search path.
.IP \fBW\fP
Run in Windows Console mode.
.IP \fBX\fP
Require SyncTERM to run in X11 mode. This requires X11 support to have been
compiled in, and the library ``libX11.so'' to be in the library search path.
.RE
.IP \fB\-l\fIlines\fR
Sets the number of screen lines to \fIlines\fR.
Only specific values are allowed for \fIlines\fR and they are:
14, 21, 25, 28, 43, 50, and 60.
If any other value is chosen, a value of 50 is used.
.IP \fB\-n\fIconfig\fR
Specify an alternative INI file
.IP \fB\-q\fP
Quiet mode.
Hides various popups during a connect.
.IP \fB\-r\fP
Specifies the default scheme for \fIURL\fP to be rlogin://
.IP \fB\-s\fP
Run in "safe mode" which disables the modification of local files such as the
.IP \fB\-t\fP
Specifies the default scheme for \fIURL\fP to be telnet://
.IP \fB\-T\fP
When this is the ONLY argument, dumps terminfo entry to stdout and exits.
.IP \fB\-v\fP
When this is the ONLY argument, dumps version info to stdout and exits.
.SH RUN-TIME LINKING
For some features, such as SDL support, and X11 support,
run-time linking is employed using dlopen().
Using this, it is possible to build a version which will use SDL,
and X11 if they are present, but not fail to run if they are not.
.SH TEXT MODE CAVAETS
When running in one of the text modes such as curses or ANSI, many of the
control functions are modified since there is no reliable way to use extra
modifier keys. As a result, CTRL-S and CTRL-Q can not be sent to the remote
system. Since these are the flow control characters, this should not present
major usability issues.
.PP
The escape character (ASCII 27) is used in curses and ANSI modes to begin a
control sequence. As such, there is a delay to detect if the next character
continues the escape sequence or is a base escape. Because of this, there will
be a perceptible delay when the escape key is used. This delay can be adjusted
using the \fI\-e\fP parameter, but selecting the "correct" value is a dark art
since any value is provably incorrect.
.PP
The curses and ANSI modes are not necessarily the correct number of lines for
a traditional screen mode. As such, filler will be added around the terminal
screen. For some display sizes, unpredictable results may occur.
.SH FILES
.IP \fI%%DESTDIR%%%%PREFIX%%/etc/syncterm.lst\fR
The system wide dialing directory.
.IP \fIsyncterm.lst\fR
The users dialing directory.
The location of this file varies by OS and can be viewed in SyncTERM in the
"File Locations" option of the "SyncTERM Settings" menu.
.IP \fIsyncterm.ini\fR
The users SyncTERM configuration file.
The location of this file varies by OS and can be viewed in SyncTERM in the
"File Locations" option of the "SyncTERM Settings" menu.
.SH AUTHOR
Stephen Hurd <shurd@sasktel.net>
.SH BUGS
None known at present.
.PP
Additional bugs should be reported at https://sf.net/p/syncterm/tickets/
