Synchronet is a
multiplatform
In computing, cross-platform software (also called multi-platform software, platform-agnostic software, or platform-independent software) is computer software that is designed to work in several computing platforms. Some cross-platform software r ...
BBS
BBS may refer to:
Ammunition
* BBs, BB gun metal bullets
* BBs, airsoft gun plastic pellets
Computing and gaming
* Bulletin board system, a computer server users dial into via dial-up or telnet; precursor to the Internet
* BIOS Boot Specificat ...
software
Software is a set of computer programs and associated documentation and data. This is in contrast to hardware, from which the system is built and which actually performs the work.
At the lowest programming level, executable code consists ...
package, with current
port
A port is a maritime facility comprising one or more wharves or loading areas, where ships load and discharge cargo and passengers. Although usually situated on a sea coast or estuary, ports can also be found far inland, such as Ham ...
s for
Microsoft Windows
Windows is a group of several proprietary graphical operating system families developed and marketed by Microsoft. Each family caters to a certain sector of the computing industry. For example, Windows NT for consumers, Windows Server for serv ...
,
Linux
Linux ( or ) is a family of open-source Unix-like operating systems based on the Linux kernel, an operating system kernel first released on September 17, 1991, by Linus Torvalds. Linux is typically packaged as a Linux distribution, which ...
, and
BSD
The Berkeley Software Distribution or Berkeley Standard Distribution (BSD) is a discontinued operating system based on Research Unix, developed and distributed by the Computer Systems Research Group (CSRG) at the University of California, Berk ...
variants. Past versions also ran on
MS-DOS
MS-DOS ( ; acronym for Microsoft Disk Operating System, also known as Microsoft DOS) is an operating system for x86-based personal computers mostly developed by Microsoft. Collectively, MS-DOS, its rebranding as IBM PC DOS, and a few ope ...
and
OS/2
OS/2 (Operating System/2) is a series of computer operating systems, initially created by Microsoft and IBM under the leadership of IBM software designer Ed Iacobucci. As a result of a feud between the two companies over how to position OS/2 ...
, but support for those platforms were dropped in version 3.0 (circa 2000).
History
Synchronet was originally written by Rob Swindell (
a.k.a. Digital Man) due to his desire for certain features which
WWIV
WWIV was a popular brand of bulletin board system software from the late 1980s through the mid-1990s. The modifiable source code allowed a sysop to customize the main BBS program for their particular needs and aesthetics. WWIV also allowed te ...
lacked, such as support for multiple simultaneous nodes, batch
upload
Uploading refers to ''transmitting'' data from one computer system to another through means of a network. Common methods of uploading include: uploading via web browsers, FTP clients], and computer terminal, terminals (SCP/ SFTP). Uploading c ...
s and bidirectional
protocol for file transfer, file transfer. The bulk of the programming for the first version of Synchronet was done during a two-month period in 1991 when Swindell was house-ridden while he recovered from surgery. The software was named for its ability to run
synchronously on a
network
Network, networking and networked may refer to:
Science and technology
* Network theory, the study of graphs as a representation of relations between discrete objects
* Network science, an academic field that studies complex networks
Mathematics
...
.
In July 1991, the author began running his own BBS, Vertrauen, on Synchronet. Initially, he had no intention of releasing Synchronet publicly, but as word of his software spread and he received offers to buy copies of Synchronet, he eventually relented, formed a company called Digital Dynamics, and sold copies of Synchronet at a price of $100 without
source code
In computing, source code, or simply code, is any collection of code, with or without comments, written using a human-readable programming language, usually as plain text. The source code of a program is specially designed to facilitate the wo ...
, and $200 with source code. In April 1992, Swindell's employer went out of business and he began to rely exclusively on commercial sales of Synchronet for his livelihood, placing advertisements in the BBS-related magazines ''
Boardwatch
''Boardwatch Magazine'', informally known as ''Boardwatch'', was initially published and edited by Jack Rickard. Founded in 1987, it began as a publication for the online Bulletin Board Systems of the 1980s and 1990s and ultimately evolved into a ...
'' and ''
BBS Callers Digest''. The first copy of Synchronet sold through the magazine ads was in June 1992.
Synchronet was the first BBS package to support
QWK message networking natively without requiring any external utilities, in version 1a revision 10, released June 25, 1992. It was also the first BBS package with
RIP
Rest in peace (RIP), a phrase from the Latin (), is sometimes used in traditional Christian services and prayers, such as in the Catholic, Lutheran, Anglican, and Methodist denominations, to wish the soul of a decedent eternal rest and peace.
...
support, in version 1b revision 1, released January 23, 1993.
Interest in Synchronet began to dwindle in late 1994, finally becoming nonexistent in 1995. Digital Dynamics effectively went bankrupt in the fall of 1995. Despite this, a beta version of version 2.30 of Synchronet for MS-DOS and an alpha version for OS/2 were released in early 1996. In August 1996, Swindell announced the uncertainty of Synchronet's future. In 1997, version 2.30 of Synchronet was released as
freeware
Freeware is software, most often proprietary, that is distributed at no monetary cost to the end user. There is no agreed-upon set of rights, license, or EULA that defines ''freeware'' unambiguously; every publisher defines its own rules for the f ...
, and the
source code
In computing, source code, or simply code, is any collection of code, with or without comments, written using a human-readable programming language, usually as plain text. The source code of a program is specially designed to facilitate the wo ...
was released into the
public domain
The public domain (PD) consists of all the creative work
A creative work is a manifestation of creative effort including fine artwork (sculpture, paintings, drawing, sketching, performance art), dance, writing (literature), filmmaking, ...
later that year.
In April 1999, Swindell revived Synchronet development, revamping it considerably and converting much of the code to
C++
C++ (pronounced "C plus plus") is a high-level general-purpose programming language created by Danish computer scientist Bjarne Stroustrup as an extension of the C programming language, or "C with Classes". The language has expanded significan ...
. Another version, 2.30c, was released in December 1999, fixing
Y2K
The year 2000 problem, also known as the Y2K problem, Y2K scare, millennium bug, Y2K bug, Y2K glitch, Y2K error, or simply Y2K refers to potential computer errors related to the formatting and storage of calendar data for dates in and after ...
bugs and introducing some minor new features from the upcoming 3.x series. Version 3.00b was released June 25, 2000 and was the first official release of the 3.x series, featuring a native 32-bit Windows version and many new Internet-related features, such as a built-in
telnet
Telnet is an application protocol used on the Internet or local area network to provide a bidirectional interactive text-oriented communication facility using a virtual terminal connection. User data is interspersed in-band with Telnet control i ...
server. For this release, dial-up support was dropped making it a TCP/IP-only system. In October 2000, Synchronet was released under the terms of the
GNU General Public License
The GNU General Public License (GNU GPL or simply GPL) is a series of widely used free software licenses that guarantee end users the Four Freedoms (Free software), four freedoms to run, study, share, and modify the software. The license was th ...
(GPL).
In late 2001, Stephen Hurd (Deuce) joined the project initially as *nix developer. He ported the BBS to FreeBSD and did much of the Linux development work. His first "big" contribution was an implementation of Borlands
conio
conio.h is a C header file used mostly by MS-DOS compilers to provide console input/output. It is not part of the C standard library or ISO C, nor is it defined by POSIX.
This header declares several useful library functions for performing ...
library to allow the configuration utilities which were originally written for DOS to run on the Unix-like platforms.
Around the same time, Swindell started embedding the
SpiderMonkey
SpiderMonkey is the first JavaScript engine, written by Brendan Eich at Netscape Communications, later released as open source and currently maintained by the Mozilla Foundation. It is used in the Firefox web browser.
History
Eich "wrote ...
JavaScript engine into Synchronet with an eye towards replacing the aging BAJA language which was used for most BBS customizations. While the BBS still requires BAJA scripts, much can be done with JavaScript. A socket object was added to the JavaScript engine and a "Services" server created which allowed simple TCP/IP services to be written easily. TCP/IP services written in JavaScript bundled with Synchronet include
finger
A finger is a limb of the body and a type of digit, an organ of manipulation and sensation found in the hands of most of the Tetrapods, so also with humans and other primates. Most land vertebrates have five fingers ( Pentadactyly). Chambers ...
,
gopher
Pocket gophers, commonly referred to simply as gophers, are burrowing rodents of the family Geomyidae. The roughly 41 speciesSearch results for "Geomyidae" on thASM Mammal Diversity Database are all endemic to North and Central America. They are ...
,
IRC
Internet Relay Chat (IRC) is a text-based chat system for instant messaging. IRC is designed for group communication in discussion forums, called '' channels'', but also allows one-on-one communication via private messages as well as chat an ...
, and
NNTP
The Network News Transfer Protocol (NNTP) is an application protocol used for transporting Usenet news articles (''netnews'') between news servers, and for reading/posting articles by the end user client applications. Brian Kantor of the Univers ...
.
More internet services have been added in the native (C) code:
FTP
The File Transfer Protocol (FTP) is a standard communication protocol used for the transfer of computer files from a server to a client on a computer network. FTP is built on a client–server model architecture using separate control and data ...
,
SMTP
The Simple Mail Transfer Protocol (SMTP) is an Internet standard communication protocol for electronic mail transmission. Mail servers and other message transfer agents use SMTP to send and receive mail messages. User-level email clients typical ...
and
POP3
In computing, the Post Office Protocol (POP) is an application-layer Internet standard protocol used by e-mail clients to retrieve e-mail from a mail server. POP version 3 (POP3) is the version in common use, and along with IMAP the most common p ...
by Rob Swindell and
rlogin
The Berkeley r-commands are a suite of computer programs designed to enable users of one Unix system to log in or issue commands to another Unix computer via TCP/IP computer network. The r-commands were developed in 1982 by the Computer Systems ...
,
SSH
The Secure Shell Protocol (SSH) is a cryptographic network protocol for operating network services securely over an unsecured network. Its most notable applications are remote login and command-line execution.
SSH applications are based on ...
and
HTTP
The Hypertext Transfer Protocol (HTTP) is an application layer protocol in the Internet protocol suite model for distributed, collaborative, hypermedia information systems. HTTP is the foundation of data communication for the World Wide Web, ...
by Stephen Hurd.
In an interesting full circle, direct dial-up support for Synchronet is available again as Rob Swindell wrote a modem to telnet gateway program (SEXPOTS) for this purpose. Using this program, SysOps can once again offer their BBSes via direct modem-to-modem connections.
Sub projects
Libraries
* xpdev is a cross platform development library which provides such features as threading, .ini file parsing, consistent *printf() functions, and other small utility functions to the rest of the project. Effectively every Synchronet sub project relies on xpdev. The primary developer is Rob Swindell.
* ciolib ciolib is
clean room implementation of Borland's conio library which supports the display of
CP437 using the Win32 console,
SDL,
X11
The X Window System (X11, or simply X) is a windowing system for bitmap displays, common on Unix-like operating systems.
X provides the basic framework for a GUI environment: drawing and moving windows on the display device and interacting wi ...
,
curses
A curse (also called an imprecation, malediction, execration, malison, anathema, or commination) is any expressed wish that some form of adversity or misfortune will befall or attach to one or more persons, a place, or an object. In particular ...
and
ANSI
The American National Standards Institute (ANSI ) is a private non-profit organization that oversees the development of voluntary consensus standards for products, services, processes, systems, and personnel in the United States. The organi ...
via stdio. It also has an ANSI terminal emulator which supports ANSI-BBS, ANSI Music, Character pacing for
ANSI Art
The American National Standards Institute (ANSI ) is a private non-profit organization that oversees the development of voluntary consensus standards for products, services, processes, systems, and personnel in the United States. The organi ...
animation,
VT500
The VT520 is an ANSI standard computer terminal introduced by Digital Equipment Corporation (DEC) in 1993 and 1994. The VT520 is a multi-session monochrome text-only terminal with a built-in 14" monitor. The VT510 was a single-session version, wh ...
ESC
Commodore
Commodore may refer to:
Ranks
* Commodore (rank), a naval rank
** Commodore (Royal Navy), in the United Kingdom
** Commodore (United States)
** Commodore (Canada)
** Commodore (Finland)
** Commodore (Germany) or ''Kommodore''
* Air commodore ...
64 PETSCII and Atari 8-bit ATASCII in different screen modes, including 80x25, 80x28, 80x43, 80x50 and 80x60, as well as over 35 fonts imported from the FreeBSD syscons source as well as the ability to customize fonts. The primary developer is Stephen Hurd.
* UIFC is a text user interface library which provides the menuing system to the text mode configuration utilities bundled with Synchronet. Initially written by Rob Swindell, it was updated by Stephen Hurd to have it make use of the ciolib. It is considered feature complete, so active development occurs only when new features are required.
* comio is a generic serial (COM) port API implementation for Windows and *nix. It was initially designed by Rob Swindell as part of the SEXPOTS project and was ported to *nix by Stephen Hurd.
BBS Utilities
SEXYZ
SEXYZ (Synchronet External X-Modem, Y-Modem, Z-Modem) is an external file transfer program which supports X/Y/ZModem transfers. It was written to break the reliance on old DOS external protocols such as
SZ and CEXYZ. It supports TCP socket and stdio transfers. It is functional and very little additional development on this is planned.
SEXPOTS
SEXPOTS (Synchronet EXternal Plain Old Telephone System) is a modem to telnet gateway. It accepts incoming modem calls and forwards them to the BBS via the Telnet or RLogin protocols.
SyncTERM
SyncTERM is terminal emulator which makes use of xpdev, ciolib, UIFC, and parts of SEXYZ and SEXPOTS. In addition to the platforms supported by Synchronet, it also runs on
Solaris
Solaris may refer to:
Arts and entertainment Literature, television and film
* ''Solaris'' (novel), a 1961 science fiction novel by Stanisław Lem
** ''Solaris'' (1968 film), directed by Boris Nirenburg
** ''Solaris'' (1972 film), directed by ...
and
Mac OS X
macOS (; previously OS X and originally Mac OS X) is a Unix operating system developed and marketed by Apple Inc. since 2001. It is the primary operating system for Apple's Mac (computer), Mac computers. Within the market of ...
.
Supported connectivity options are
Telnet
Telnet is an application protocol used on the Internet or local area network to provide a bidirectional interactive text-oriented communication facility using a virtual terminal connection. User data is interspersed in-band with Telnet control i ...
,
rlogin
The Berkeley r-commands are a suite of computer programs designed to enable users of one Unix system to log in or issue commands to another Unix computer via TCP/IP computer network. The r-commands were developed in 1982 by the Computer Systems ...
,
SSH
The Secure Shell Protocol (SSH) is a cryptographic network protocol for operating network services securely over an unsecured network. Its most notable applications are remote login and command-line execution.
SSH applications are based on ...
, "Raw" sockets, standard modem connections and direct serial connections (using parts of SEXPOTS), and a pty interface on *nix. File transfer options include the
ZMODEM
ZMODEM is an inline file transfer protocol developed by Chuck Forsberg in 1986, in a project funded by Telenet in order to improve file transfers on their X.25 network. In addition to dramatically improved performance compared to older protocol ...
,
XMODEM and
YMODEM
YMODEM is a file transfer protocol used between microcomputers connected together using modems. It was primarily used to transfer files to and from bulletin board systems. YMODEM was developed by Chuck Forsberg as an expansion of XMODEM and was ...
transfer protocols (using parts of SEXYZ.)
SyncDraw
SyncDraw is an ANSI art editor which was initially a cleanup of an old version of MysticDraw. It uses xpdev and ciolib but is not yet complete. It supports the use of
TheDraw
TheDraw is a text editor for MS-DOS to create ANSI and animations as well as ASCII art. The editor is especially useful to create or modify files in ANSI format and text documents, which use the graphical characters of the IBM ASCII code pages, bec ...
fonts, and can save to the Synchronet Control-A code format, but is generally considered too incomplete for serious usage.
Third-party software
The Synchronet project has shown a willingness to "adopt" third-party BBS related software into its CVS tree. Generally, the software is updated to use xpdev and run on the platforms that Synchronet does and then is left in the CVS tree without active development.
Domain Entertainment Doors
Domain Entertainment was once one of the major companies which wrote addons specifically for Synchronet. Some of their software has since been released as open source and has been imported into the Synchronet CVS tree under the xtrn directory.
Domain Poker
Domain Poker is a single/multi-player, real-time, 5 card draw poker game.
The game can have up to 6 players per table, and up to 25 tables. Each table
has a configurable bet limit, ante, and table limit. Tables can be password
protected for private games, and the "house" can take a configurable percentage
of the pot from games.
Single player games are played against the computer. The computer can be
turned off completely, or allowed to play only on certain tables (at your
option). You also have the option to not allow the computer to be on password
protected tables (to keep users from hogging the tables for themselves).
The Beast's Domain
The Beast's Domain is a multiplayer, interactive, real-time, Rogue-like ANSI adventure game. The Beast's Domain can handle up to 250 simultaneous players.
OpenDoors
OpenDoors was one of the most popular C "door kits". Support for the DOOR32 drop file format as well as generic sockets was added by Rob Swindell and *nix compatibility was added by Stephen Hurd.
Other Doors
Other door sources that have been adopted include by developers:
*The Clans
*New York 2008
*Smurf Combat
*Tasmanian Strategical
*Time Port
*Virtual BBS 3
Sources for BBSes running Synchronet
The Official Synchronet BBS ListSynchronet developer's system Vertrauen
External links
Synchronet BBS Software HomepageSyncTERM Website and Download
{{Modem file transfer protocols
Bulletin board system software
File sharing software for Linux
Telnet
Windows file sharing software