XTRN.DAT
The Synchronet v2 External Program Data File (a.k.a. drop file), xtrn.dat
format.
In DOS and OS/2 versions of Synchronet, this file was named XTRN.DAT
but later (in Synchronet v3), the case of the created file was configurable (either all upper or all lower case).
This file should normally be created in the current node's directory
(example: C:\sbbs\node1
). The current node's directory can be easily passed
to external programs via command line (using the %n command line specifier
in SCFG) or more easily retrieved by external programs be reading the
SBBSNODE environment variable.
The xtrn.dat
is a plain text file consisting of CRLF-delimited lines of up to 80 characters each, parsed one line at a time.
Line | Example | Description |
---|---|---|
01 | Digital Man | User's name or alias |
02 | Vertrauen | BBS name |
03 | Digital Man | Sysop's name |
04 | The Guru | System Guru (AI engine) |
05 | ..\CTRL\ | Control directory |
06 | ..\DATA\ | Data directory |
07 | 9 | Total nodes on system |
08 | 7 | Current node |
09 | 30000 | Time left (in seconds) |
10 | Yes | ANSI? (Yes,No, or Mono) |
11 | 24 | Screen lines |
12 | 209087929 | Credits |
13 | 99 | Security level1) |
14 | 99 | Security level (same as above) |
15 | 12/31/69 | Birth date in MM/DD/YY format |
16 | M | Gender (e.g. M or F) |
17 | 1 | User's number |
18 | 714-529-6328 | Phone Number |
19 | 0 | COM Port (0 if local) |
20 | 4 | IRQ (or channel number if FOSSIL/Digi/etc.) |
21 | 3f8 | I/O address (or D:Digi,F:Fossil, P:PS/2 bios) |
22 | 0 | DTE rate (0 if local) |
23 | Yes | Hardware flow ctrl (Yes or No) |
24 | Yes | Locked DTE rate (Yes or No) |
25 | AT&FS0=0S2=128E0V0X4&C1&D2 | Modem init string |
26 | AT%C0\V1 | Modem special (additional) init string |
27 | ATE1V1\V2 | Modem terminal init string |
28 | ATDT | Modem dial string |
29 | ATM0H1 | Modem off-hook string |
30 | ATA | Modem answer string |
31 | 533922058 | Address of MSR memory copy (in decimal) |
32 | 20 | Total external programs |
33 | Domain Bulletins | Each external program's name 2) |
34 - 53 | External Program name | The Name of an External Program |
54 | ABCDEFGHIJKLMNOPQRSTUVWXYZ | Flags from flag set #1 (A-Z) |
55 | ABCDEFGHIJKLMNOPQRSTUVWXYZ | Flags from flag set #2 (A-Z) |
56 | ABCDEFGHIJKLMNOPQRSTUVWXYZ | Exemptions (A-Z) |
57 | Restrictions (A-Z) | |
58 | 0 | Expiration date (in hex unix format) |
59 | Po Box 501 | Address |
60 | Yorba Linda, Ca | City, state |
61 | 92686 | Zip/Postal code |
62 | Flags from flag set #3 (A-Z) | |
63 | E | Flags from flag set #4 (A-Z) |
64 | 1 | Time slice APIs supported |
65 | Rob Swindell | User's real name or company name |
66 | 14400 | DCE Rate |
See Also
1)
Referred to in earlier documentation as “Transfer Level” and being obsolete
2)
Use the previous line (in this case 20) and that many lines will hold the names of the External Programs. From this point on, the line numbers are the line number shown + the number of external programs.