Differences
This shows you the differences between two versions of the page.
Both sides previous revisionPrevious revisionNext revision | Previous revisionNext revisionBoth sides next revision | ||
howto:door:index [2010/03/16 22:57] – digitalman | howto:door:index [2022/03/12 23:54] – [Configuration] I recently changed this menu item (removing "Available ") digital man | ||
---|---|---|---|
Line 7: | Line 7: | ||
BBS " | BBS " | ||
+ | |||
+ | |||
+ | ==== Supported External Program Types ==== | ||
+ | |||
+ | The following table should help you to identify what types of online external programs (doors, external editors, file transfer protocol drivers) are supported by Synchronet and in what environments: | ||
+ | |||
+ | ^ I/O Method | ||
+ | | [[ref: | ||
+ | | COM/ | ||
+ | | DOS Console | ||
+ | | TCP/IP Socket | ||
+ | | Standard | ||
+ | |||
+ | ==== Supported Drop File Types ==== | ||
+ | Synchronet can create and read-back a variety of drop file types based on the requirements of the door program: | ||
+ | |||
+ | ^ Software ^ Write File(s) | ||
+ | | Mystic | ||
+ | | GAP | '' | ||
+ | | WWIV | '' | ||
+ | | PCBoard 15.x | '' | ||
+ | | QuickBBS | '' | ||
+ | | Wildcat! 2.x | '' | ||
+ | | SpitFire | '' | ||
+ | | TriBBS | '' | ||
+ | | MegaMail | '' | ||
+ | | Solar Realms | '' | ||
+ | | Synchronet | ||
+ | |||
+ | === CIOXTRN === | ||
+ | Through the use of Deuce' | ||
+ | |||
+ | === Modules === | ||
+ | Although technically not //external programs//, Synchronet also supports the interpretation and execution of external [[: | ||
+ | |||
+ | **Note:** | ||
+ | There is an active movement within the Synchronet development community to port or re-write old BBS door games and utilities in JavaScript so that they may be run natively on all Synchronet-supported platforms without any compiling or communications issues. In fact, the latest Synchronet Installer (for Windows) release includes no 16-bit DOS programs and very few native external programs, replacing the traditionally pre-configured DOS door games and external editors with newer, better games and editors written in JavaScript. | ||
===== Installation ===== | ===== Installation ===== | ||
Line 14: | Line 51: | ||
Some doors may require the sysop to run some sort of //setup// or // | Some doors may require the sysop to run some sort of //setup// or // | ||
+ | |||
+ | ==== Automated Install ==== | ||
+ | |||
+ | If the door is included with Synchronet, or Synchronet already has a configuration for it (in xtrn/ | ||
+ | |||
+ | Run '' | ||
+ | |||
+ | For more information, | ||
+ | |||
+ | ==== Manual Install ==== | ||
If the door you're installing is listed in the following [[# | If the door you're installing is listed in the following [[# | ||
Line 40: | Line 87: | ||
=== DOSXTRN.EXE === | === DOSXTRN.EXE === | ||
- | This 16-bit DOS component of the Synchronet FOSSIL driver for Windows (all flavors) is called '' | + | The 16-bit DOS component of the Synchronet FOSSIL driver for Windows (all flavors) is called '' |
=== Windows 9x === | === Windows 9x === | ||
- | The kernel component of the Synchronet FOSSIL driver for Microsoft Windows 95-based operating systems is called '' | + | The kernel component of the Synchronet FOSSIL driver for Microsoft Windows 95-based operating systems |
=== Windows NT === | === Windows NT === | ||
- | The kernel component of the Synchronet FOSSIL driver for Microsoft Windows NT-based operating systems (this includes XP, Vista, and Windows 7) is called '' | + | The kernel component of the Synchronet FOSSIL driver for Microsoft Windows NT-based operating systems (this includes XP, Vista, and Windows 7/8/10) is called '' |
This FOSSIL driver is also a //virtual UART// driver so that external DOS programs that require COM/UART access for input and output (i.e. do not support FOSSIL), can still be used on the BBS. When supported, doors should be configured to use a FOSSIL interface instead of COM/UART for input and output (for better performance and compatibility). | This FOSSIL driver is also a //virtual UART// driver so that external DOS programs that require COM/UART access for input and output (i.e. do not support FOSSIL), can still be used on the BBS. When supported, doors should be configured to use a FOSSIL interface instead of COM/UART for input and output (for better performance and compatibility). | ||
Line 54: | Line 101: | ||
===== Configuration ===== | ===== Configuration ===== | ||
- | Add the program in SCFG [[util: | + | Add the program in SCFG [[util: |
The most critical [[util: | The most critical [[util: | ||
Line 60: | Line 107: | ||
- [[#Start-up Directory]] | - [[#Start-up Directory]] | ||
- [[#Command Line]] | - [[#Command Line]] | ||
- | - [[#Intercept | + | - [[# |
- | - [[#Native Executable]] | + | - [[#Native Executable/Script]] |
- [[#BBS Drop File Type]] | - [[#BBS Drop File Type]] | ||
Line 75: | Line 122: | ||
The chosen internal code may not be the same as any other installed external program. | The chosen internal code may not be the same as any other installed external program. | ||
- | The internal code may be used to programmatically launch the external program when the remote user views a specific text or menu file (see [[:custom: | + | The internal code may be used to programmatically launch the external program when the remote user views a specific text or menu file (see [[custom: |
==== Start-up Directory ==== | ==== Start-up Directory ==== | ||
Line 92: | Line 139: | ||
When executing an in-process Baja module ('' | When executing an in-process Baja module ('' | ||
+ | |||
+ | When executing an in-process JavaScript module ('' | ||
==== Command Line ==== | ==== Command Line ==== | ||
Line 103: | Line 152: | ||
The most commonly used [[config: | The most commonly used [[config: | ||
- | ^Specifier | + | ^Specifier ^Description ^ |
- | |'' | + | | '' |
- | |'' | + | | '' |
- | |'' | + | | |
- | |'' | + | | '' |
- | |'' | + | | '' |
- | |'' | + | | '' |
+ | | '' | ||
=== Modules === | === Modules === | ||
- | When executing an in-process module (Baja or JavaScript), | + | When executing an in-process module (Baja or JavaScript), |
The path to the module and the '' | The path to the module and the '' | ||
Line 125: | Line 175: | ||
The '' | The '' | ||
- | The [[# | + | The [[# |
Most external programs do not require a '' | Most external programs do not require a '' | ||
Line 149: | Line 199: | ||
Note: for multiple-user programs, it is highly recommended that the BBS drop file be created in the '' | Note: for multiple-user programs, it is highly recommended that the BBS drop file be created in the '' | ||
- | ==== Intercept | + | ==== I/O Method |
- | + | ||
- | If this program requires the BBS to intercept standard console input and output operations, then this option should be set to '' | + | |
- | * Most BBS doors will require | + | If the program requires the BBS to intercept standard console input and output operations, then this option |
- | * BBS Doors that use FOSSIL I/O must have this option set to '' | + | |
- | * BBS Doors that use COM/UART I/O must have this option set to '' | + | |
- | * BBS Doors that use Socket I/O must have this option set to '' | + | |
- | When executing an in-process module (Baja or JavaScript), | + | * Most 16-bit (DOS) BBS doors will require this option be set to '' |
+ | * Most //native// (Win32 or *nix) BBS doors will require this option be set to '' | ||
+ | * When executing an in-process module (Baja or JavaScript), | ||
- | ==== Native Executable ==== | + | ==== Native Executable/ |
If this program is native to the host operating system (e.g is **not** a 16-bit DOS program), then this option should be set to '' | If this program is native to the host operating system (e.g is **not** a 16-bit DOS program), then this option should be set to '' | ||
Line 168: | Line 215: | ||
* BBS Doors that use Socket I/O are native (32-bit or 64-bit) programs and must have this option set to '' | * BBS Doors that use Socket I/O are native (32-bit or 64-bit) programs and must have this option set to '' | ||
- | When executing an in-process module (Baja or JavaScript), | + | When executing an in-process module (Baja or JavaScript), |
- | ==== Use Shell to Execute | + | ==== Use Shell or New Context |
- | If this program requires | + | If this program requires |
- | When executing | + | When executing |
==== Modify User Data ==== | ==== Modify User Data ==== | ||
Line 193: | Line 240: | ||
* File Uploaded | * File Uploaded | ||
* File Downloaded | * File Downloaded | ||
+ | * Local/Sysop Chat | ||
If an event is selected, you may also specify that the program may be executed **only** on that event and not purposely selected by the user from a menu for manual execution. | If an event is selected, you may also specify that the program may be executed **only** on that event and not purposely selected by the user from a menu for manual execution. | ||
Line 246: | Line 294: | ||
===== How-To Install Specific Doors ===== | ===== How-To Install Specific Doors ===== | ||
+ | Note: When using Linux with dosemu, specify full filename with extension under the Command Line option in the [[util: | ||
{{indexmenu> | {{indexmenu> | ||
Line 256: | Line 305: | ||
* [[: | * [[: | ||
* [[: | * [[: | ||
+ | * [[: | ||
{{tag> | {{tag> | ||