Dec 102017
 
Front Door 2.11 for BBS's. Fido mail front door. Handles all E-Mail.
File FD211.ZIP from The Programmer’s Corner in
Category BBS Files
Front Door 2.11 for BBS’s. Fido mail front door. Handles all E-Mail.
File Name File Size Zip Size Zip Type
-FILES.LST 1992 833 deflated
-README.1ST 5508 2261 deflated
FD.DOC 346366 83565 deflated
FD.EXE 50492 49758 deflated
FD.OVR 423762 186798 deflated
FDNC.EXE 28455 28076 deflated
FDNC.OVR 38696 16279 deflated
FDSETUP.EXE 68839 68179 deflated
FM.EXE 30205 29771 deflated
FM.OVR 253520 111062 deflated
NAMES.FD 440 247 deflated
PCP.ARJ 19573 19495 deflated
PHONECVT.EXE 8098 7973 deflated
REGFORM.ARJ 4498 4495 deflated
ROUTE.FD 842 390 deflated
SAMPLE.ARJ 4376 4349 deflated

Download File FD211.ZIP Here

Contents of the FD.DOC file

































FrontDoor 2.11 Shareware

User guide

For noncommercial use and distribution






























To the memories of Catharina Frodin and Alva Gardlund.
And to Christian, Katja, and Igor Homrighausen.

Party on Fred, we miss you.



Table of contents

1 SHAREWARE VERSION LICENCE AGREEMENT - "FFHA184k" . . . . . . . 1

2 Preface . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3
2.1 Hardware requirements . . . . . . . . . . . . . . . . . . 3
2.2 Software requirements . . . . . . . . . . . . . . . . . . 3
2.3 Additional equipment . . . . . . . . . . . . . . . . . . 3
2.4 BBS software . . . . . . . . . . . . . . . . . . . . . . 4

3 Installation . . . . . . . . . . . . . . . . . . . . . . . . . 4
3.1 CONFIG.SYS . . . . . . . . . . . . . . . . . . . . . . . 4
3.2 AUTOEXEC.BAT . . . . . . . . . . . . . . . . . . . . . . 4
3.3 Directories . . . . . . . . . . . . . . . . . . . . . . . 4
3.4 Files . . . . . . . . . . . . . . . . . . . . . . . . . . 4

4 Setup . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5
4.1 FD environment variable . . . . . . . . . . . . . . . . . 5
4.2 FD.SYS <> SETUP.FD . . . . . . . . . . . . . . . . . . . 5
4.3 Getting started . . . . . . . . . . . . . . . . . . . . . 5
4.4 Menus . . . . . . . . . . . . . . . . . . . . . . . . . . 6
4.4.1 File . . . . . . . . . . . . . . . . . . . . . . . 6
4.4.2 Global . . . . . . . . . . . . . . . . . . . . . . 6
4.4.4 Editor . . . . . . . . . . . . . . . . . . . . . 17
4.4.5 Terminal . . . . . . . . . . . . . . . . . . . . 20
4.4.6 Modem . . . . . . . . . . . . . . . . . . . . . . 24
4.4.7 Printer . . . . . . . . . . . . . . . . . . . . . 24
4.4.8 Manager . . . . . . . . . . . . . . . . . . . . . 24
Event Manager . . . . . . . . . . . . . . . . . . . . . 24
Folder Manager . . . . . . . . . . . . . . . . . . . . 24
Security . . . . . . . . . . . . . . . . . . . . . . . 27
Notes regarding protocols . . . . . . . . . . . . . 28
Request Manager . . . . . . . . . . . . . . . . . . 29

5 The nodelist and the nodelist compiler . . . . . . . . . . . 29
Zone . . . . . . . . . . . . . . . . . . . . . . . . . . . 29
Region . . . . . . . . . . . . . . . . . . . . . . . . . . 29
Net . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29
Node . . . . . . . . . . . . . . . . . . . . . . . . . . . 29
Point . . . . . . . . . . . . . . . . . . . . . . . . . . . 30
5.1 Hosts and hubs . . . . . . . . . . . . . . . . . . . . 30
5.2 Compiling a nodelist . . . . . . . . . . . . . . . . . 30
5.2.1 FDNODE.CTL . . . . . . . . . . . . . . . . . . . 30
POINTLIST . . . . . . . . . . . . . . . . . . . . . 30
PVTLIST . . . . . . . . . . . . . . . . . . . . . . 31
SWEPULSE . . . . . . . . . . . . . . . . . . . . . 32
PHONE . . . . . . . . . . . . . . . . . . . . . . . 32
USE ZONE . . . . . . . . . . . . . . . . . . . . . 32
DIAL . . . . . . . . . . . . . . . . . . . . . . . 32
COST . . . . . . . . . . . . . . . . . . . . . . . 34
5.3 Nodelist flags . . . . . . . . . . . . . . . . . . . . 34
5.4 Command line switches . . . . . . . . . . . . . . . . . 34
5.5 Points . . . . . . . . . . . . . . . . . . . . . . . . 35
5.5.1 Pointlist . . . . . . . . . . . . . . . . . . . . 35
5.5.2 FDNODE.CTL . . . . . . . . . . . . . . . . . . . 36
5.5.3 Treatment of points . . . . . . . . . . . . . . . 37
5.5.4 Remapping . . . . . . . . . . . . . . . . . . . . 37
5.5.5 POINTNET . . . . . . . . . . . . . . . . . . . . 37
5.6 Sharing the nodelist . . . . . . . . . . . . . . . . . 38



6 Modems and FOSSIL drivers . . . . . . . . . . . . . . . . . . 38
6.1 Basic configuration . . . . . . . . . . . . . . . . . . 38
Hardware . . . . . . . . . . . . . . . . . . . . . . . 38
Serial port . . . . . . . . . . . . . . . . . . . . 39
Locked port . . . . . . . . . . . . . . . . . . . . 39
Maximum baudrate . . . . . . . . . . . . . . . . . 39
Reset modem to connect speed . . . . . . . . . . . 39
Lower DTR when busy . . . . . . . . . . . . . . . . 39
Lower DTR to terminate call . . . . . . . . . . . . 39
Toggle DTR before dialing . . . . . . . . . . . . . 39
Carrier detect mask (CDMASK) . . . . . . . . . . . 40
Connect messages . . . . . . . . . . . . . . . . . . . 40
Status messages . . . . . . . . . . . . . . . . . . . . 40
Custom message . . . . . . . . . . . . . . . . . . . . 40
Command strings . . . . . . . . . . . . . . . . . . . . 40
Escape code . . . . . . . . . . . . . . . . . . . . 40
Return on-line . . . . . . . . . . . . . . . . . . 40
Onhook . . . . . . . . . . . . . . . . . . . . . . 40
Offhook . . . . . . . . . . . . . . . . . . . . . . 41
Dial . . . . . . . . . . . . . . . . . . . . . . . 41
Suffix . . . . . . . . . . . . . . . . . . . . . . 41
Delay . . . . . . . . . . . . . . . . . . . . . . . 41
Init-1..Init-3 . . . . . . . . . . . . . . . . . . 41
Down . . . . . . . . . . . . . . . . . . . . . . . 41
Reset . . . . . . . . . . . . . . . . . . . . . . . 41
Answer control . . . . . . . . . . . . . . . . . . . . 42
Manual answer . . . . . . . . . . . . . . . . . . . 42
Fax . . . . . . . . . . . . . . . . . . . . . . . . . . 42
6.2 Advanced configuration . . . . . . . . . . . . . . . . 42
6.3 The Modem Manager . . . . . . . . . . . . . . . . . 43
An example, the HST/DS . . . . . . . . . . . . . . . . 43
6.4 FOSSIL drivers . . . . . . . . . . . . . . . . . . . . 44
BNU . . . . . . . . . . . . . . . . . . . . . . . . . . 44
X00 . . . . . . . . . . . . . . . . . . . . . . . . . . 45
OS/2 2.x . . . . . . . . . . . . . . . . . . . . . . . 45

7 Events . . . . . . . . . . . . . . . . . . . . . . . . . . . 46
7.1 The Event Manager . . . . . . . . . . . . . . . . . . . 46
7.1.1 External event behavior . . . . . . . . . . . . . 48
7.1.2 Mail event behavior . . . . . . . . . . . . . . . 48
7.1.3 The @ event . . . . . . . . . . . . . . . . . . . 50
7.1.4 Overlapping events . . . . . . . . . . . . . . . 51

8 Mailer . . . . . . . . . . . . . . . . . . . . . . . . . . . 51
8.1 Menus . . . . . . . . . . . . . . . . . . . . . . . . . 51
8.1.1 Programs . . . . . . . . . . . . . . 51
8.1.2 Utilities . . . . . . . . . . . . . . 52
8.1.3 Mail . . . . . . . . . . . . . . 53
8.1.4 Your profile . . . . . . . . . . . . . . . . . . 54
8.2 Mail queue . . . . . . . . . . . . . . . . 54
8.3 Call progress . . . . . . . . . . . . . . . . . . . . . 56
8.4 Semaphore indicators . . . . . . . . . . . . . . . . . 56
8.5 Undialable . . . . . . . . . . . . . . . . . . . . . . 56

9 Editor . . . . . . . . . . . . . . . . . . . . . . . . . . . 56
9.1 Main . . . . . . . . . . . . . . . . 57
9.2 Edit . . . . . . . . . . . . . . . . 58
9.2.1 Edit mode . . . . . . . . . . . . . . . . 59
9.2.2 Toggle . . . . . . . . . . . . . . . 60



9.3 Utilities . . . . . . . . . . . . . . . . 60
9.4 Purge . . . . . . . . . . . . . . . . 62
9.6 Entering new messages . . . . . . . . . . . . . . . . . 63
9.7 Message survey . . . . . . . . . . . . . . . 63
9.7.1 Main menu . . . . . . . . . . . . . . . . . . . . 63
9.7.2 Continuous tagging . . . . . . . . . . . . . . . 64
9.7.3 Range select . . . . . . . . . . . . . . . 64
9.8 Keyboard macros . . . . . . . . . . . . . . . . . . . . 65
Examples . . . . . . . . . . . . . . . . . . . . . . . 66
9.9 Carbon copies (CC) . . . . . . . . . . . . . . . . . . 66
9.9.1 Hidden CCs . . . . . . . . . . . . . . . . . . . 67
9.9.2 Using files as input to CCs . . . . . . . . . . . 67
9.9.3 Address expansion . . . . . . . . . . . . . . . . 67
9.10 Blind Carbon Copies (BCC) . . . . . . . . . . . . . . 67
9.11 Crossposting (XC) . . . . . . . . . . . . . . . . . . 68

10 Terminal . . . . . . . . . . . . . . . . . . . . . . . . . . 68
10.1 Menus . . . . . . . . . . . . . . . . . . . . . . . . 69
10.1.1 File . . . . . . . . . . . . . . 69
10.1.2 Line settings . . . . . . . . . . . . 70
10.1.3 Session . . . . . . . . . . . . . . 71
10.1.4 Options . . . . . . . . . . . . . . 73
10.2 Keyboard macros . . . . . . . . . . . . . . . . . . . 73
10.3 Raw mode . . . . . . . . . . . . . . . . . . . . . . . 73
10.4 Keypad modes . . . . . . . . . . . . . . . . . . . . . 74
10.5 PC keyboards . . . . . . . . . . . . . . . . . . . . . 74
10.6 Phone directory . . . . . . . . . . . . . . 74
10.6.1 Queue status . . . . . . . . . . . . . . . . . . 75
10.6.2 Adding/changing entries . . . . . . . . . . . . 75
10.7 Inactivity timer . . . . . . . . . . . . . . . . . . . 75
10.8 File transfers . . . . . . . . . . . . . . . . . . . . 76
10.9 On-line timer . . . . . . . . . . . . . . . . . . . . 76

11 Miscellaneous . . . . . . . . . . . . . . . . . . . . . . . 76
11.1 Destination of messages . . . . . . . . . . . . . . . 76
11.1.1 Name lookups . . . . . . . . . . . . . . . . . . 76
11.1.2 Address browsing . . . . . . . . . . . . . . . . 76
11.1.3 Address macros (NAMES.FD) . . . . . . . . . . . 77

12 File Requests . . . . . . . . . . . . . . . . . . . . . . . 78
12.1 Outbound Requests . . . . . . . . . . . . . . . . . . 78
12.2 Requesting files with a password . . . . . . . . . . . 79
12.3 Update Requests . . . . . . . . . . . . . . . . . . . 79
12.4 Inbound Requests . . . . . . . . . . . . . . . . . . . 79
12.4.1 Request modes . . . . . . . . . . . . . . . . . 79
Anyone can request . . . . . . . . . . . . . . . . 79
Systems in nodelist can request . . . . . . . . . . 79
No requests . . . . . . . . . . . . . . . . . . . . 79
12.4.2 Directory listings . . . . . . . . . . . . . . . 80
12.4.3 Alias listings . . . . . . . . . . . . . . . . . 80
12.4.4 Response message . . . . . . . . . . . . . . . . 80
12.4.5 Limiting Requests . . . . . . . . . . . . . . . 81
Maximum match . . . . . . . . . . . . . . . . . . . 81
Maximum time . . . . . . . . . . . . . . . . . . . 81
Maximum size . . . . . . . . . . . . . . . . . . . 81
Minimum speed (BPS) . . . . . . . . . . . . . . . . 81
12.4.6 Limited hours . . . . . . . . . . . . . . . . . 81
Limited . . . . . . . . . . . . . . . . . . . . . . 81
Start . . . . . . . . . . . . . . . . . . . . . . . 82



End . . . . . . . . . . . . . . . . . . . . . . . . 82
Days . . . . . . . . . . . . . . . . . . . . . . . . . 82
12.4.7 Event restrictions . . . . . . . . . . . . . . . 82
12.4.8 Protecting files and directories . . . . . . . . 82
12.4.9 Request processor . . . . . . . . . . . . . . . 83

13 Swapping . . . . . . . . . . . . . . . . . . . . . . . . . . 83
13.1 Complete path specifications . . . . . . . . . . . . . 84
13.2 Loading programs in a DOS shell . . . . . . . . . . . 84

14 CRT environments . . . . . . . . . . . . . . . . . . . . . . 84

15 Message Status Bits . . . . . . . . . . . . . . . . . . . . 84

Private . . . . . . . . . . . . . . . . . . . . . . . . . . 85
Crash . . . . . . . . . . . . . . . . . . . . . . . . . . . 85
Hold . . . . . . . . . . . . . . . . . . . . . . . . . . . 85
File . . . . . . . . . . . . . . . . . . . . . . . . . . . 85
File request . . . . . . . . . . . . . . . . . . . . . . . 85
Update request . . . . . . . . . . . . . . . . . . . . . . 85
Kill/sent . . . . . . . . . . . . . . . . . . . . . . . . . 85
Trunc/sent . . . . . . . . . . . . . . . . . . . . . . . . 85
Delete/sent . . . . . . . . . . . . . . . . . . . . . . . . 86
Direct . . . . . . . . . . . . . . . . . . . . . . . . . . 86
Immediate mail . . . . . . . . . . . . . . . . . . . . . . 86
Lock . . . . . . . . . . . . . . . . . . . . . . . . . . . 86
Sent . . . . . . . . . . . . . . . . . . . . . . . . . . . 86
No status . . . . . . . . . . . . . . . . . . . . . . . . . 86

16 Mail routing . . . . . . . . . . . . . . . . . . . . . . . . 86
16.1 Default routing . . . . . . . . . . . . . . . . . . . 87
16.2 Message status . . . . . . . . . . . . . . . . . . . . 87
16.3 Host/Hub/Boss routing . . . . . . . . . . . . . . . . 88
16.4 Qualifying systems . . . . . . . . . . . . . . . . . . 88
16.5 Route commands . . . . . . . . . . . . . . . . . . . . 89
16.6 LIST specifications . . . . . . . . . . . . . . . . . 91
16.7 Using nodelist flags . . . . . . . . . . . . . . . . . 92
16.8 File routing/forwarding . . . . . . . . . . . . . . . 92
16.9 Message forwarding . . . . . . . . . . . . . . . . . . 92
16.10 Multiple zones . . . . . . . . . . . . . . . . . . . 92
16.11 Examples . . . . . . . . . . . . . . . . . . . . . . 93
16.12 Dynamic packing . . . . . . . . . . . . . . . . . . . 94
16.13 Regarding points . . . . . . . . . . . . . . . . . . 94
16.14 Order of evaluation . . . . . . . . . . . . . . . . . 94
16.15 TARGET vs. qualification . . . . . . . . . . . . . . 95
16.16 Restrictions . . . . . . . . . . . . . . . . . . . . 95
16.17 Macros . . . . . . . . . . . . . . . . . . . . . . . 95
MYZONE . . . . . . . . . . . . . . . . . . . . . . . . 95
MYNET . . . . . . . . . . . . . . . . . . . . . . . . . 95
MYPOINTS . . . . . . . . . . . . . . . . . . . . . . . 95
16.18 Supported nodelist flags . . . . . . . . . . . . . . 95

17 EMSI and IEMSI . . . . . . . . . . . . . . . . . . . . . . . 96
17.1 Passwords . . . . . . . . . . . . . . . . . . . . . . 96
17.2 Mail . . . . . . . . . . . . . . . . . . . . . . . . . 96
17.3 IEMSI . . . . . . . . . . . . . . . . . . . . . . . . 96

18 Script language . . . . . . . . . . . . . . . . . . . . . . 97
18.1 What can I do with it? . . . . . . . . . . . . . . . . 97
18.2 Commands . . . . . . . . . . . . . . . . . . . . . . . 97



18.3 Labels . . . . . . . . . . . . . . . . . . . . . . . . 102
18.4 Node block . . . . . . . . . . . . . . . . . . . . . . 102
18.5 PC Pursuit . . . . . . . . . . . . . . . . . . . . . . 102
18.6 How do I update PCP.DAT? . . . . . . . . . . . . . . . 103
18.7 MNEMONICS . . . . . . . . . . . . . . . . . . . . . . 103

19 FDSERVER . . . . . . . . . . . . . . . . . . . . . . . . . . 103
19.1 What is a FDSERVER request? . . . . . . . . . . . . . 104
19.2 Request message . . . . . . . . . . . . . . . . . . . 104
19.2.1 Internal commands . . . . . . . . . . . . . . . 104
19.3 Using it . . . . . . . . . . . . . . . . . . . . . . . 105
19.4 Keeping calls to a minimum . . . . . . . . . . . . . . 105
19.5 Security . . . . . . . . . . . . . . . . . . . . . . . 106

20 Service requests . . . . . . . . . . . . . . . . . . . . . . 106
20.1 Service requests vs FDSERVER . . . . . . . . . . . . . 106
20.2 Setting up . . . . . . . . . . . . . . . . . . . . . . 106
20.3 ^ - + ? . . . . . . . . . . . . . . . . . . . . . . . 107
20.4 Security . . . . . . . . . . . . . . . . . . . . . . . 107
20.5 A word of wisdom . . . . . . . . . . . . . . . . . . . 107

21 Global command-line switches . . . . . . . . . . . . . . . . 108
21.1 A word of wisdom . . . . . . . . . . . . . . . . . . . 112

22 Environment variables . . . . . . . . . . . . . . . . . . . 113
22.1 FDOPT . . . . . . . . . . . . . . . . . . . . . . . . 113
22.2 FDSWAP . . . . . . . . . . . . . . . . . . . . . . . . 113
22.3 POINTNET . . . . . . . . . . . . . . . . . . . . . . . 113
22.4 FMOVR and FDOVR . . . . . . . . . . . . . . . . . . . 113
22.5 TZUTC . . . . . . . . . . . . . . . . . . . . . . . . 113

23 Semaphore files . . . . . . . . . . . . . . . . . . . . . . 114

24 Batch files . . . . . . . . . . . . . . . . . . . . . . . . 117
24.1 Errorlevels . . . . . . . . . . . . . . . . . . . . . 117
24.2 Categories . . . . . . . . . . . . . . . . . . . . . . 117
24.3 Loading BBS software . . . . . . . . . . . . . . . . . 118
24.4 Different labels . . . . . . . . . . . . . . . . . . . 118
24.5 Same label . . . . . . . . . . . . . . . . . . . . . . 119
24.6 DOBBS.BAT . . . . . . . . . . . . . . . . . . . . . . 120
24.7 EXEBBS.BAT . . . . . . . . . . . . . . . . . . . . . . 120
24.8 Flow (batch files) . . . . . . . . . . . . . . . . . . 121

25 Multi-tasking . . . . . . . . . . . . . . . . . . . . . . . 122
25.1 NS16550 . . . . . . . . . . . . . . . . . . . . . . . 122
25.2 DESQview . . . . . . . . . . . . . . . . . . . . . . . 122
25.3 DoubleDOS . . . . . . . . . . . . . . . . . . . . . . 123
25.4 Multilink . . . . . . . . . . . . . . . . . . . . . . 124

26 Converting from other mail systems . . . . . . . . . . . . . 124

27 Help systems . . . . . . . . . . . . . . . . . . . . . . . . 124

28 Sample (PCP) script . . . . . . . . . . . . . . . . . . . . 125

29 Commercial inquiries . . . . . . . . . . . . . . . . . . . . 127

30 Developer notes . . . . . . . . . . . . . . . . . . . . . . 128



31 Technical specifications . . . . . . . . . . . . . . . . . . 128

32 Credits . . . . . . . . . . . . . . . . . . . . . . . . . . 128



1 SHAREWARE VERSION LICENCE AGREEMENT - "FFHA184k"

1. This is a licence agreement between you, the end user, and
Joaquim Homrighausen. The FrontDoor 2.11 Shareware software
and information attached hereto, hereafter "FD", is the
property of Joaquim Homrighausen. Read the terms and
conditions of this licence agreement carefully before using
the software. If you for any reason, whatsoever, cannot
accept the conditions in this agreement, you are not
permitted to use FD.

2. You acknowledge and agree that FD is a proprietary product of
Joaquim Homrighausen, protected by applicable copyright laws
and international treaty provisions. You further acknowledge
and agree that all rights, title, and interest in and to FD
are and shall remain with Joaquim Homrighausen.

3. FD may be used for a period of thirty (30) days on a trial
basis to allow you to determine its suitability for your
particular application. After this period you MUST register
each copy of FD that you run simultaneously. Site and Group
registrations are available, and are dealt with on a case by
case basis.

4. Registration entitles you to use FD and any future versions
of FD for as long as you wish, subject to any special
licensing conditions and/or applicable upgrade fees attached
to future versions.

5. In the event that you are in violation of this licence
agreement, you agree and accept that Joaquim Homrighausen may
cancel your registration and any rights to use FD that you
may have. In the case of a dispute over the licence
agreement, you further agree and accept to fully reimburse
Joaquim Homrighausen for legal and other expenses resulting
from the dispute.

6. FD is provided "as is", without warranty of any kind or
fitness for a particular purpose, either expressed or
implied, all of are hereby explicitly disclaimed. Joaquim
Homrighausen only guarantees that FrontDoor will occupy disk
space.

Joaquim Homrighausen's liability resulting from your use or
inability to use FD is limited to the amount that the
affected party has paid for it, or in the event that FD was
registered with a third party for payment to Joaquim
Homrighausen, liability is limited to the amount that was
received by Joaquim Homrighausen from that third party.

7. Neither Joaquim Homrighausen nor any of his employees,
agents, or other representatives are in any way obligated to
provide future versions of, or support for, FD.





1



8. You may freely distribute and copy FD provided that no fee is
charged and the FD distribution archive contains unmodified
copies of the original files as produced by Joaquim
Homrighausen. Pay Bulletin Board Systems may, however, charge
their normal fee provided that no additional charge for FD is
levied. No part of FD may be modified, altered, reverse
engineered, sold, or distributed in any form whatsoever which
would involve some sort of trade without prior written
permission from Joaquim Homrighausen.

9. FD may not be used in any unlawful or illegal manner.

10. FD may only be used and registered by physical persons for
use on equipment, including but not limited to telephone
lines, electricity, hardware, and software, maintained and
operated 100% by means of taxed personal income. FD may not
be used to provide commercial services.
































All Joaquim Homrighausen products are trademarks or
registered trademarks of Joaquim Homrighausen. Other brand
and product names are trademarks or registered trademarks of
their respective holders.

Copyright 1986-1993 Joaquim Homrighausen; All rights reserved.

September 25, 1993

2



2 Preface

as used in FrontDoor indicates that the feature is only available
in the commercial version; <+> indicates that the feature is only
available in the registered shareware version.

Welcome to FrontDoor, the complete e-mail package. It is probably
safe to say that an e-mail package, such as FrontDoor, is one of the
most complex types of applications around. This manual is very
straight forward and may seem hard to understand at first glance. If
you get lost, or cannot understand something, go back and read the
section you are having problems with, carefully.

FrontDoor has been tested on more than four thousand systems for over
six years. It will run under MS or PC DOS versions 3.1 and above;
including OS/2 1.3, 2.0, and 2.1 DOS Mode. It runs under most LAN
software; including Novell and LANtastic. It also runs under
PC-MOS/386, VM/386, Windows, Windows NT, and in other multi-tasking
environments such as DESQview.

For technical specifications, see "Technical specifications".
Although FrontDoor will run on most machines, there are a few
restrictions and requirements.


2.1 Hardware requirements

o An IBM PC, AT, i386, i486, PS/2 or 100% BIOS compatible.
o A hard disk with at least 1 MB available diskspace.
o An asynchronous modem capable of sending alphanumeric
messages such as CONNECT 2400.
o A DTE interface (computer <> modem) that supports CTS/RTS
handshaking (most cables/internal modems do).
o A monochrome or color monitor.
o 384 KB of system memory.


2.2 Software requirements

o MS or PC DOS 3.10 or above.
o A FOSSIL driver such as X00 or BNU.


2.3 Additional equipment

FrontDoor can take advantage of, but does not require, the
following:

o EMS memory for overlays and EMS/XMS memory for program
image swapping.
o EGA/VGA extended screen modes such as 80x43/50 and
132x28.
o AT-style (extended) keyboard.





3



2.4 BBS software

FrontDoor can be used as a front-end to many popular bulletin
boards including TUBBS, PC Board, RemoteAccess, Maximus-CBCS,
TCL, TPBoard, QuickBBS, SuperBBS, Phoenix RCS, Fido, Opus-CBCS,
and WildCat!.


3 Installation

Several files are included in the distribution archive. This manual
will walk you through the installation and configuration of the
system. All path names and directories suggested here are not
required. You can change them as you wish, but it is suggested that
you use the examples shown for a start and then move on to change
things as you become more familiar with the software. In the example,
it is assumed that you are about to install FrontDoor on your C
drive.


3.1 CONFIG.SYS

FrontDoor needs to have a few extra file handles allocated to
keep some files open. Your CONFIG.SYS file should contain
FILES=25 (or higher). If you do not know what handles means, that
is okay, as long as you have the FILES=25 statement in your
CONFIG.SYS file. If you are using multi-tasking software, your
FILES= setting must usually be set to something higher than 25.

You should also have BUFFERS=30 (or higher) in your CONFIG.SYS
file to improve DOS' buffer performance. If you are using a disk
cache, you should have BUFFERS=3 or something close to that.


3.2 AUTOEXEC.BAT

Add SET FD=C:\FD to your AUTOEXEC.BAT file. This will make sure
FrontDoor can find all its system files. You may NOT have spaces
between FD and =.


3.3 Directories

From your root directory (C:\) create a directory called FD. This
is the main (ROOT) directory for FrontDoor. Change the active
directory to FD. Create the following directories:

NODELIST
MAIL
PACKETS
FILES


3.4 Files

Copy FD.EXE, FD.OVR, FM.EXE, FM.OVR, FDNC.EXE and FDSETUP.EXE to
C:\FD. The program files are now installed.

4



3.5 FidoNet

If you are joining (or already an active in) FidoNet, you should
obtain a copy of a recent FidoNet nodelist. The FidoNet nodelist
can be found on many FidoNet systems under the name NODELIST
followed by an extension.

Place the uncompressed nodelist ASCII file in the C:\FD\NODELIST
directory. The uncompressed nodelist is usually called
NODELIST.nnn where nnn is three digits.


4 Setup

The Setup program, FDSETUP hereafter, is used to configure FrontDoor.
Most functions and behavior of the Editor (FM), Mailer (FD), and
Terminal are controlled from FDSETUP. When you start FDSETUP, it
searches for the system file, SETUP.FD, in the directory pointed to
by the FD environment variable.

If the FD variable has not been set, FDSETUP searches the current
directory for SETUP.FD. If it cannot open SETUP.FD, it will ask you
if you want to create a new file or abort.


4.1 FD environment variable

The FD environment variable specifies where FDSETUP should search
for SETUP.FD. If the FD environment variable is not set, FDSETUP
will search the current directory for SETUP.FD. It is recommended
that you add SET FD= to your AUTOEXEC.BAT or other startup
file. This allows FDSETUP, and the other FrontDoor programs, to
locate SETUP.FD without having to be in the same directory.

E.g. SET FD=C:\FD


4.2 FD.SYS <> SETUP.FD

The system file used by some earlier (1.99c and 2.00) versions of
FrontDoor is called FD.SYS. Some FrontDoor specific utilities
(TosScan 1.00 for example) and other programs may therefore
require that you maintain a copy of FD.SYS. If you are using such
software, make sure you copy SETUP.FD to FD.SYS in the FrontDoor
root directory.


4.3 Getting started

To create a new SETUP.FD file, make the FrontDoor root directory
the active directory by using the DOS command CD; type FDSETUP
and press Enter. If you have set the FD variable, you do not have
to change the active directory before invoking FDSETUP.

FDSETUP will display a message saying something like "SETUP.FD,
path or file not found". Press to create a new file.


5



4.4 Menus

There are eight top-level (pull-down) menus. Each function and
menu of FDSETUP will now be described.


4.4.1 File

Write SETUP.FD

Forces FDSETUP to write the configuration file, SETUP.FD, to
disk. This allows you to commit any changes you have made to
your configuration without leaving FDSETUP.

Shell to DOS

Invokes a temporary DOS shell. Type EXIT and press to
return to FDSETUP. You can invoke a temporary DOS shell in
FDSETUP by pressing in the middle of input fields,
pull-down menus, selection fields, etc.

Exit

Returns you to DOS or the Mailer, depending on how FDSETUP
was invoked. If you made any changes to your configuration,
you will be asked if you want to make your changes permanent
or abandon them. You can also exit FDSETUP by pressing
at any of the top-level menus.

Enter your code

Allows you to enter the registration code required to
activate some registered-only features. Once you have
succesfully entered your registration code, FDSETUP will not
allow you to enter it again.


4.4.2 Global

Address

Address

Defines your network address and alternate network
addresses, or "also-known-as" (AKA). You must define at
least one network address (the first slot).

Site info

Defines your system's name, geographical location,
telephone number, maximum speed, nodelist flags, and the
name of your BBS software (if any).

The telephone number should be specified in international
format, eg. +352 316702 or "-Unpublished-" if you do not
wish to reveal this information to other systems.


6



Domains

Specifies the name of a network zone. This should be
"fidonet" for all FidoNet Zones (currently 1 through 6).

At the moment, this is only used for the generation of
the ^AMSGID: kludge line and for inserting "^aVia"
information in messages forwarded by the Mailer (FD).

AKA..

Allows you to specify which AKA to use when corresponding
with certain zones and nets within zones.

I.e. if you are writing a message to someone in zone 2
and you have specified that you wish to use your 2:270/17
AKA for this, the Editor will automatically use 2:270/17
regardless of your current AKA setting.

This allows you to easily participate in multiple
networks.

Filenames

System

Where the FrontDoor system files are stored. This should
NOT be a RAM disk. If you have followed the installation
instructions above, this should be C:\FD.

NetMail

Where NetMail messages are stored, i.e. the NetMail
folder. The Mailer unpacks received messages to this
directory. This should NOT be a RAM disk. If you have
followed the installation instructions above, this should
be C:\FD\MAIL.

Files

Where inbound (received) files are stored. This should
NOT be a RAM disk. If you have followed the installation
instructions above, this should be C:\FD\FILES.

SecFiles

Identical to Files above except that it is only used to
store files received during a secure (password protected)
mail session. If SecFiles isn't specified, the Mailer
will use the path specified for Files.

Packets

Where the Mailer stores its temporary mail packets. They
are created every time the Mailer runs a mail event and
are removed when the event ends.


7



By putting the Packet directory on a RAM disk, you can
greatly improve the speed of packing and scanning
outbound mail.

It is recommended that you use a sub-directory on your
RAM disk since the number of directory entries in the
root directory of a drive is usually limited to a fairly
low number.

If you have followed the installation instructions above,
this should be C:\FD\PACKETS.

Log file

The log file. This is a complete filename, e.g.
C:\FD\FD.LOG. This is used by the Mailer (and can be used
by the Terminal in the registered version) to log its
activies such as received and sent files, call progress,
etc. You should NOT use a RAM disk for the log file as it
will disappear if the system reboots.

Banner

The contents of this file is displayed to human
(interactive) callers before the Mailer passes control to
your batch file to invoke the BBS software. This file is
not used if you are running in mail-only mode. You should
NOT use a RAM disk for the banner file.

Nodelist

Where the nodelist database is stored. The Nodelist
Compiler (FDNC) expects to find its control file(s) here.
The Mailer and Editor expects to find the compiled
nodelist database here. If this directory is not
specified, FrontDoor will use the SYSTEM directory
instead. The nodelist directory should NOT be located on
a RAM disk.

If you have followed the installation instructions above,
this should be C:\FD\NODELIST.

No BBS

This file is displayed to human callers if the Mailer
rejects their call. I.e. if you are running in mail-only
mode or if a mail event prevents interactive access to
your BBS.

MSG Base

Where the Editor expects to find the Hudson Message Base
files (MSGHDR.BBS, MSGTXT.BBS, MSGINFO.BBS, MSGIDX.BBS,
MSGTOIDX.BBS and LASTREAD.BBS). If you do not have any
folders with MsgBase status, you do not have to specify
this.


8



Swapping

If you enable swapping to disk or there is not sufficient
XMS/EMS memory available. The Mailer and the Editor will
use this directory to store its swap file.

This setting can be overridden by the FDSWAP environment
variable (see "Environment variables").

Semaphore

Where the Mailer and Editor creates and looks for the
various semaphore files (see "Semaphore files"). This
allows you to configure a multi-line and/or multi-user
system with different configurations to use the same
semaphore directory.

MailExit

If specified, this file is created by the Mailer when it
has received mail and would normally have terminated with
an errorlevel indicating that mail has been received.

In a multi-line and/or multi-tasking environment, this
could be used to automatically invoke mail processing
software and run it in the background while the Mailer
continues its operation.

General

Your country code

Your country code. Eg. USA=1, Sweden=46, Luxembourg=352.
This is used for telephone number translations. This is
related to the COUNTRY= command used in CONFIG.SYS. It
does not, however, have to be the same as your COUNTRY=
setting. FDSETUP's country code setting should always be
your real country code.

Screen flickers

FrontDoor attempts to detect if you have a CGA card that
causes flicker if software performs direct memory access
(DMA). The default for this setting is NO and you should
leave it alone unless you are seeing flicker on your
screen when you use the Mailer, Editor, and/or the
Terminal.

Use "fastkey"

Forces the Mailer, Editor, and the Terminal to speed up
the typematic rate of your keyboard. This is only valid
for machines with an AT- or compatible BIOS installed.

If you are using other keyboard speed-up utilities, leave
this to NO; otherwise, FrontDoor will restore the
typematic rate to the default (slow) when they terminate.

9



Screen blanking

Prevents screen images from "burning in". If you are
using a monochrome monitor, data that is displayed often
in the same location on your screen can "burn in" and
leave ugly marks. Color monitors usually do not have this
problem.

Since the Mailer is active more than 80% of the day on
most systems, it may be wise to enable this option to
avoid "burn ins" of the Mailer's main display.

Blackout timer

Specifies how many seconds of inactivity should pass
before the screen is blanked. This option is only used if
screen blanking (previous page) has been enabled. You can
"light up" a blanked screen by pressing a key. The screen
will also be lit when the Mailer places outgoing calls
and when incoming calls are answered.

Extended keyboard

Specifies which type of keyboard you have (101/102 or
83/84). FDSETUP will attempt to "guess" which type of
keyboard you have, but some BIOS flavors does not
properly indicate the type. This allows you to override
what FDSETUP detects.

Force 24-hour fmt

Allows you to force the Mailer and the Editor to display
the time in 24-hour format even if you are located in a
country that uses the 12-hour format, such as the USA.

Monochrome mode

Forces FDSETUP to assume monochrome color mode (as if you
would have specified FDSETUP -m on the DOS command-line).

Users

Allows you to specify user names and access levels. The
default name of the first user is System Operator. You should
change this to your own name.

<+> There are three different access levels. Supervisor,
Administrator and User.

A user with Supervisor access can override any restrictions
on folders and messages. He/she can also change all settings
regardless of passwords. You should only have one user with
Supervisor access, but FDSETUP will allow you to define more
than one. At least one user with Supervisor access MUST exist
and is required to add any additional users.



10



A user with Administrator access cannot override any
restrictions on folders and messages. He/she has to enter
passwords for protected items before they can be changed.

A user with User access cannot override any restrictions on
folders and messages. The only setting he/she can change in
FDSETUP is his/her own password.

>>> The unregistered shareware version only allows you to
define one user and forces the access level to that of
Supervisor.


4.4.3 Mailer

Miscellaneous

<+> Mail from unlisted systems

Defines whether or not the Mailer should accept incoming
calls from systems not listed in your nodelist database.
If this option is disabled (set to NO) and an unlisted
system calls in, the Mailer will terminate the call
immediately.

Mail from "unprotected" systems

Defines whether or not the Mailer should accept incoming
calls from systems for which you do not have a session
level password defined. If this option is disabled (set
to NO) and an unprotected system calls in, the Mailer
will terminate the call immediately.

<+> Mail from unlisted points

The Mailer will by default accept calls from points of
other systems whether or not they are present in your
nodelist database; provided the point system's boss
passes the required criteria.

You can, however specify that you do not want the Mailer
to accept calls from points that cannot be found in the
nodelist database. If this option is disabled (set to NO)
and a point for which you have no entry in your nodelist
database calls in, the Mailer will terminate the call
immediately.

Kill empty received messages

Specifies that you want the Mailer to kill empty messages
(messages with no text in its body) when they are
unpacked from received mail packets.






11



Terminal only (no mail)

If enabled, the Mailer will invoke the Terminal as soon
as it is loaded. This setting can be overridden with the
-M command line switch.

Mail only (no BBS)

If enabled, the Mailer will not accept human callers
under any circumstances. Use this option if you do not
have a BBS or similar software running "below" the
Mailer.


Present all AKAs to remote system

If you have more than one AKA address, the Mailer will by
default attempt to pickup mail destined for all your
addresses during a mail session.

This can be disabled so that only one address is
presented to the remote system. Which address is actually
presented is determined by the AKA matching table
(described above).

Trigger exit upon receipt of netmail

The Mailer will by default only trigger (set) the exit
flag when compressed (following the ARCmail 0.60
standard) mail is received. If this option is enabled,
the exit flag will be triggered (set) when NetMail
packets (files ending with the extension .PKT) have been
received. Whether or not the Mailer will actually exit is
controlled by event behaviors (see "Events") and the mail
exit errorlevels.

Trigger exit upon receipt of ANY file

Similar to the above option, but will trigger exit as
long as any (file) data has been received.

Print received messages

If enabled, the Mailer will print messages unpacked from
received mail packets.

Busy retries

Defines the maximum number of times the Mailer will
attempt to call a system during an event (see "Events")
if the system is busy or does not answer on the first
call. See the section about the Mailer for further
details regarding call progress.






12



Resend retries

Defines the maximum number of times the Mailer will
attempt to transfer mail to a system during an event if
the first attempt fails. See the section about the Mailer
for further details regarding call progress.

Retry delay

Defines the minimum number of seconds the Mailer will
wait between outgoing calls. This is used in conjunction
with a random timer to avoid two Mailers calling each
other at the same time (and thus causing both telephone
lines to be engaged).

Delay before first call

The Mailer will by default attempt to place the first
outgoing call as soon as possible. If this option is
enabled, it will delay the first call.

Days to keep mail history

Number of days to retain entries in the inbound/outbound
history files. The Mailer removes all entries older than
this value from the history files every morning (at first
opportunity after midnight).

Seconds before passing to BBS

Defines the number of seconds the Mailer will wait before
assuming a human caller. Unless the Mailer receives two
consecutive escape (ASCII 27) characters, it will attempt
to establish a mail session for the amount specified
here. The minimum and default value is 11 seconds. The
maximum value is 60 seconds.

Minimum undialable cost

The minimum cost of a call for a system to be processed
by the undialable handler. The undialable handler is
discussed in a separate section.

Honor Return Receipt Requests (RRQ)

Specifies whether or not the Mailer should generate a
Return Receipt for received messages with the RRQ flag
set. The RRQ flag is discussed in the Editor section.

Log

Defines the various level of logging. All messages will
appear on the screen, the log options defines which of them
ends up in the log file.




13



File requests

Controls how the Mailer treats inbound File and Update
Requests. A separate section explains File and Update
Requests in detail.

<+> FDServer

If no password is specified in FDSETUP, the FDSERVER function
is inactive (disabled). The FDSERVER function is described in
a separate section.

External mail

When the Mailer processes an incoming call, all received
characters are processed for a possible match with any of the
external mail "wake-up" sequences (strings), and if a match
is made, the Mailer exits with the specified errorlevel of
the matching string.

This allows you to run alternate mail handlers behind the
Mailer, such as UFGATE and Waffle to process INTERNET/UUCP
mail. Note that the call is not terminated when using the
external mail interface, the Mailer simply exits with the
specified errorlevel. This option is NOT intended for
EchoMail processors, etc.

To enter characters with an ASCII code below 32 (Space), hold
down the key, enter the ASCII code on the numerical
keypad and release the key.

Display

Mail waiting flashing

When there is new mail waiting, the text "Mail" will
flash on the Mailer screen. The flashing can be disabled
with this option.

Display clock

Specifies whether or not you want the current date and
time displayed in the top right corner of the Mailer
screen.

Display timestamp

Specifies whether or not you want the Mailer to display
the time to the left of each line displayed in the main
activity window. This setting does not affect what is
being written to the log file.

Screen size

25

25 line mode.

14



43/50

43/50 line mode. Only available for systems with EGA
and VGA cards.

Auto

Specifies that the Mailer should attempt to
automatically adapt to whatever the current screen
size is when it is started.

This also means that the Mailer will not attempt to
reset the screen mode when it is terminated.

<+> Custom

Allows you to specify computer register values to
send to the INT 10h (Video BIOS) to set and reset the
screen.

Colors

Allows you to choose between the default monochrome (black
and white) and the default color sets. You can also choose to
customize the colors to your own taste.

Hidden dial info

Allows you to hide portions of telephone numbers that
otherwise would be displayed when the Mailer places an

outgoing call. E.g. The Mailer calls 352-316702, if you had
one of the hidden dial info strings set to 352- the displayed
number would be 316702.

Function keys

Allows you to define up to 20 (24) programs, etc. to invoke
from the Mailer when any of the functions keys are pressed.
The first 10 (12) function keys are accessed through -
(F12), the second 10 (12) function keys are accessed
through - (F12).

Title

The title to appear on the screen when you press
from the Mailer's main screen. This is also written to
the log file when a function key is pressed.

Action

The program to invoke or errorlevel to exit with. To
specify more than one program, separate them by
semicolons (;). To exit with an errorlevel, specify
?.

E.g. LIST C:\FD\FD.LOG;DEL C:\FD\FD.LOG


15



would load the program LIST and pass C:\FD\FD.LOG as the
parameter. When the LIST program terminates, the Mailer
would proceed to the next command, which in this case
removes C:\FD\FD.LOG.

?255

Would force the Mailer to terminate with an errorlevel of
255.

Pause

Specifies whether or not you want the Mailer to pause
when the invoked program(s) terminates.

Check

Specifies whether or not the Mailer should rescan the
NetMail folder when the invoked program(s) terminates.

Swap

Specifies whether or not the Mailer should swap itself
out of memory prior to invoking the specified commands.

>>> To create a DOS shell that does not force a re-scan of
the NetMail folder, specify C:\COMMAND.COM (or wherever
you have your copy of COMMAND.COM stored) as ACTION and
set CHECK to NO.

Errorlevels

This section allows you to invoke BBS software, or other
similar software, when an incoming call is established and
the Mailer has determined that it is not a mail call. It also
allows you to define an errorlevel to exit with when mail has
been received.

If a baudrate related errorlevel is zero, the Mailer will
display a message to human callers saying that your system
does not support non-mail calls at that speed and then
terminate the call. If you are running in mail-only mode, the
Mailer will never accept non-mail (human) calls.

If the RECEIVED MAIL errorlevel is zero, the Mailer will
never exit when mail has been received. Whether or not the
Mailer will actually exit when it has received mail is
determined by the current event behavior and whether or not
the received file(s) indicated mail.

The CREATE .BAT FILE option allows you to simplify BBS
operation. If it is enabled, the Mailer will create a batch
file containing the current baudrate, the COM port used, the
number of minutes left to the next system event, etc. This is
described in a separate section.



16



Audio control

The Mailer can sound alarms and make other noises when
certain events occur, such as received mail, incoming human
callers, fatal errors, etc. This section allows you to
control which sounds should be active and when audio should
be active.

Swapping

Determines whether or not you want the Mailer to use swapping
when executing external programs. You can disable the use of
EMS/XMS memory for the swap function. The swap function is
explained in the Miscellaneous section.

Protection

Allows you to protect certain functions of the Mailer, such
as access to the DOS shell, Editor, Nodelist compiler,
Terminal, etc. with a password.

Fax

Allows you to control how the Mailer should handle incoming
fax calls.


4.4.4 Editor

Miscellaneous

Delete original (Conference)
Delete original (Local)
Delete original (NetMail)

Determines if the Editor should ask "Delete original
message" when replying to messages in EchoMail
(Conference), Local, and NetMail-type folders.

Show hard CRs

If enabled, the Editor will show hard CRs in messages.
The display of hard CRs is disabled by default and can be
toggled from within the Editor.

Margin

Specifies the margin at which the Editor should
automatically wrap text when you enter and quote (reply)
messages. The default value, 60, should not be changed in
most cases.

When you read messages in the Editor, it will use all
available columns (80, 132, etc.) as the wrap margin.




17



Honor CFM

Specifies whether or not the Editor should generate a
Return Receipt for received messages with the CFM
(Confirmation Receipt Request) flag set. The CFM flag is
discussed later in the Editor section.

New mail semaphores

Specifies whether or not the Editor should create the new
mail semaphores FMNEWNET, FMNEWCNF, and FMNEWLOC upon
exit when you have entered one or more messages.

NetMail folder

<+> Restricted

Specifies if the NetMail folder should be restricted. If
you enable this, users with User or Administrator access
can only read private messages addressed to their
usernames.

<+> Read-only

Prevents users with User or Administrator access from
writing messages in the NetMail folder. The definition of
writing includes forwarding and moving of messages to the
NetMail folder.

<+> Export OK

Defines whether or not users with User or Administrator
access can export messages from the NetMail folder. The
definition of export includes moving, copying, and export
to disk.

Use tables

Defines whether or not the translation tables should be
active by default in the NetMail folder. This can be
toggled from within the Editor.

Crash

If the Crash status bit should be set by default on
locally created messages.

Direct

If the Direct status bit should be set by default on
locally created messages.

Hold

If the Hold status bit should be set by default on
locally created messages.


18



Private

If the Private status bit should be set by default on
locally created messages.

Kill/Sent

If the Kill/sent status bit should be set by default on
locally created messages.

<+> Use Zonegates

Determines if the Editor should ask you whether or not
you want to send inter-zone messages via the zonegate,
never send messages via the zonegate, or always send
inter-zone messages via the zonegate.

Keyboard macros

Allows you to define up to 20 (24) strings. These can be used
to insert common text, such as name signatures, etc. while
editing messages. The first 10 (12) function keys are
accessed through F1-F10 (F12), the second 10 (12) function
keys are accessed through Shift F1-F10 (F12).

The Editor macro language is discussed in the section about
how to operate the Editor.

Origin lines

Appended to messages you create in Conference-type folders to
show the origin of a message. These should include the name
and location of your system if possible.

You can choose default origin lines for all Conference-type
folders. You can also choose a different origin line from
within the Editor.

Whether or not the origin line is appended to messages you
enter in Conference-type folders is controlled by the Echo
info status bit for each folder.

Display

Screen size

25

25 line mode.

43/50

43/50 line mode. Only available for systems with EGA
and VGA cards.




19



Auto

Specifies that the Editor should attempt to
automatically adapt to whatever the current screen
size is when it is are started. This also means that
the Editor will not attempt to reset the screen mode
when it is terminated.

<+> Custom

Allows you to specify computer register values to
send to the INT 10h (Video BIOS) to set and reset the
screen.

Colors

Allows you to choose between the default monochrome (black
and white) and the default color sets. You can also choose to
customize the colors to suit your own needs.

Xlat.In and Xlat.Out

Defines the translation tables to use wherever the
translation table status bit is active. This is used to
translate language specific 8-bit ASCII characters to 7-bit
ASCII when writing messages to disk and vice versa when
reading messages from disk.

The In table is used when reading messages from disk and the
Out table is used when writing messages to disk.

FDSETUP automatically creates reasonable defaults for most
countries when it creates a new SETUP.FD file. If you are
located in an English speaking country, you do normally not
have to worry about translation tables.

Swapping

Determines whether or not you want the Editor to use swapping
for its DOS shell. You can disable the use of EMS/XMS memory
for the swap function. The swap function is explained in a
separate section.

Fax

Settings related to internal fax support.


4.4.5 Terminal

Miscellaneous

Init

An additional modem initialization string, sent to the
modem as soon as the Terminal is started.


20



If you start the Terminal directly from DOS (FD -TERM) or
have set the Terminal-only option in FDSETUP, the
Mailer's initialization strings are first sent to the
modem.

Download

Default download path. Files that you receive (download)
during a Terminal session will by default end up here.

Upload

Default upload path.

Editor

Allows you to install an Editor or file listing program
and invoke it from the Terminal. The Terminal will prompt
your for optional parameters, such as filenames, etc.
This can also be used to invoke external protocols or
external protocol menu programs.

Protocol

Zmodem, SEAlink, Telink, or Xmodem. Defines the default
transfer protocol to use for file transfers in the
Terminal.

Emulation

ANSI, TTY, VT100 or VT52. Defines the default Terminal
emulation protocol to use in the Terminal. Note that the
Terminal's ANSI protocol supports the AVATAR/0+ (AVT/0+)
emulation protocol.

AVATAR/0+

Allows you to disable the support for AVATAR/0+ sequences
in ANSI emulation. This can be toggled from within the
Terminal.

Buffer

The size, in KB, of the scroll-back buffer. The scroll-
back buffer stores information that has "rolled off" the
top of the screen during Terminal sessions.

Connect noise

Whether or not the Terminal should make noise when a
connection has been established.

Transfer noise

Whether or not the Terminal should make a noise after
file transfers.


21



Use tables

Whether or not the Terminal translation tables should be
active by default. See Editor > Xlat.In for a detailed
explanation of translation tables.

Auto Zmodem

Whether or not the automatic Zmodem download (receive)
function should be enabled by default.

Local echo

Whether or not the Terminal should echo typed characters
to your screen by default.

Wrap around

Whether or not the Terminal should move the cursor to the
beginning of a new line when it reaches the end of the
previous line.

Delay

Number of seconds to wait between outgoing calls if the
number you dialed was busy or did not answer. If there is
more than one entry in the dial queue, the delay is
ignored and the Terminal proceeds to the next number in
the queue.

<+> Logging

Allows you to enable logging of file transfers, dialed
numbers, time spent on-line to systems, etc. Similar to
the Mailer's log output.

Display

Screen size

25

25 line mode.

43/50

43/50 line mode. Only available for systems with EGA
and VGA cards.

Auto

Specifies that the Terminal should attempt to
automatically adapt to whatever the current screen
size is when it is are started. This also means that
the Terminal will not attempt to reset the screen
mode when it is terminated.


22



<+> Custom

Allows you to specify computer register values to
send to the INT 10h (Video BIOS) to set and reset the
screen.

Keyboard macros

Allows you to define up to 20 (24) macro strings. These can
be used to transmit common text, such as names and passwords,
etc. The first 10 (12) function keys are accessed through
- (F12), the second 10 (12) function
keys are accessed through - (F12). This
is referred to as the default macro set.

To enter characters with an ASCII code below 32 (space), hold
down the key, enter the ASCII code on the numerical
keypad and release the key.

Xlat.In and Xlat.Out

See Editor > Xlat.In for a detailed explanation of
translation tables. The Xlat.In table is used for characters
received from the modem (remote). The Xlat.Out table is used
for characters typed on the keyboard.

IEMSI Profile

Defines the default IEMSI (Interactive Electronic Mail
Standard Information) profile used to negotiate interactive
EMSI sessions with BBS software supporting it.

Active

Determines whether or not IEMSI support should be active
by default.

Name

The username you wish to use. If this field is empty, the
ACTIVE field (above) is automatically toggled to "NO".

Handle

The handle you wish to use, or empty if none.

Password

The password you wish to use.









23



Hot-keys
Quiet
Pausing
Editor
News
New mail
New files
Screen Clr

Specifies default user profile options, allowing you to
customize the BBS or on-line service's behavior.

The Terminal allows you to configure separate profiles
for each individual telephone number in the Terminal
Phone Directory.


4.4.6 Modem

This option is used to configure your modem for use with
FrontDoor. Modems are discussed in a separate section.


4.4.7 Printer

The printer configuration can only be changed in the
commercial version. The shareware version defaults to using
LPT1.


4.4.8 Manager

The managers are used to define events, session level
security, file protection (for file requests), your message
folders, and strings to be sent to the modem when calling
specific systems.

All managers require that the SYSTEM path has been defined
since they store their data files (EVENT.FD, PASSWORD.FD,
REQUEST.FD and FOLDER.FD) in that directory.

Event Manager

Events are discussed in a separate section.


Folder Manager

Folders are used to define different areas (directories, or
boards for the Hudson Message Base) so that you can use the
Editor to read and write messages in those areas. The Editor
only knows about one folder by default. It is defined in the
Filenames section of FDSETUP (described above) and is
referred to as the NetMail folder.




24



The folder manager has two modes. The first is the view mode,
which is self explanatory. The second mode is the edit/create
mode and is accessed by pressing the Ins key. It will now be
described.

Status

The status and type of the folder.

Origin

The default origin line to use. This is only used for
Conference-type folders with the Echo info status
enabled. Origin lines are used to identify the origin of
a message in Conference conferences. This is required
because conference mail is not a point to point
environment, like a telephone conversation or NetMail
exchange.

Mail conferences are usually widespread and can have an
unlimited number of participating systems.

Title

The title appearing in the folder list when you select a
new active folder in the Editor.

Board/Path

Depending on the type of the folder, this is either the
Hudson Message Base board number or the DOS path
(directory) where the messages for this folder should be
stored.

<+> Users

Defines which users should have access to this folder. If
a user does not have access to a folder, it will not show
up on his/her list of available folders.

Password

Defines whether or not access to the folder is protected
by a password. You can allow users to access a folder,
and the password protect it.

Use AKA

Defines which address (AKA) the Editor should use for the
folder. This is only important for Conference-type
folders with the Echo info status enabled. The address is
a part of the origin line.






25



Folder status

Restricted

If enabled, users can only read Private messages
addressed to their username. Public messages are not
affected by this.

Echo info

Whether or not an origin line should be appended to
newly created messages. See Origin (above) for more
information.

Export OK

See NetMail folder > Export OK described above.

MsgBase

Specifies that the folder is of the Hudson Message

Base type, rather than a directory with .MSG message
files. The Hudson Message Base (HMB) is used by
several BBS packages, such as RemoteAccess.

Translate

Enables the translation tables for the folder. They
can be toggled on/off from within the Editor.

Private

Specifies that the Private status should be allowed
(and the default) for messages created in the folder.
This should NOT be used in Conference-type folders
unless the conference explicitly allows this.

Read-only

See Netmail folder > Read-only described above.

No check

Determines if the Editor should access the specified
path when check for unread mail. This allows you to
create folders that holds messages on removable
media, e.g. floppy disks, that is not always
accessible to the Editor.

Force CR

Forces the Editor to append a hard CR to all lines
instead of letting paragraphs flow. Some INTERNET
mail environments require that the line length does
not exceed a certain limit.



26



Conference

Defines the folder as a Conference folder (as opposed
to a Local or NetMail-type folder).

NetMail

Defines the folder as NetMail-type folder (as opposed
to an Conference or Local-type folder). This enabled
nodelist lookups, carbon copies, etc.

Local

Defines the folder as a Local folder (as opposed to
an Conference or NetMail-type folder). This is
usually used to access local BBS message areas.

Security

The security manager is used to define session level
passwords for other systems. It can also be used to
explicitly refuse File/Update Requests and Mail from a
system, and to disable/enable specific protocol and
handshake options to fine tune your outbound mail
sessions.

Session level passwords are used to protect the receiving
(called) system in a mail session, and calling system
during an outbound EMSI session, to ensure that the
calling system really is what it appears to be. Anyone
can setup a Mailer, like FrontDoor, and send you mail. If
there is mail waiting for the address they are using,
your system will by default attempt to send it.

You should setup session level passwords for all your
common mail links, such as conference mail distribution
systems, etc.

System

The system address of the remote system. Eg.
2:270/17.

Password

Defines the session level password that your system
will present when calling the specified system and
the password that your system requires to establish a
mail session with the specified system.

Note that some mailer software treat passwords case
sensitive, ie. ALLAN is not treated like AlLaN. The
FrontDoor Mailer will treat passwords case
insensitive on incoming (inbound) calls. They will,
however, be sent EXACTLY as you have defined them
here.


27



You do not have to specify a password to use any of
the other options.

FREQs

Whether or not the specified system is allowed to
make File/Update Requests (see "File Requests").

Mail

Whether or not your system will allow the specified
system to call your system.

>>> Note that by disabling (setting it to "NO") this
option, you may be in violation of network
policy.

EMSI

Whether or not you want the Mailer to attempt to
negotiate an EMSI session when it calls the specified
system.

FTS-1

Whether or not you want the Mailer to attempt to
negotiate an FTS-1 session when it calls the
specified system.

Zap

Whether or not you want the Mailer to use the
ZedZap/Zmodem protocol when negotiating an FTS-6
(YooHoo) session. If this is set to "NO", the
DietIFNA protocol (Telink/SEAlink) will be used
during YooHoo sessions with the specified system.

YooHoo

Whether or not you want the Mailer to attempt to
negotiate an FTS-6 session when it calls the
specified system.


Notes regarding protocols

The Mailer will by default attempt to negotiate a
mail session in the following order:

1. EMSI
2. FTS-6 (YooHoo), ZedZap/Zmodem
3. FTS-6 (YooHoo), DietIFNA
4. FTS-1

The Mailer will ignore any entries in the security
manager with inactive status.


28



Request Manager

The request manager is used to protect file requests.
File and Update Requests are discussed in a separate
section.


5 The nodelist and the nodelist compiler

The nodelist is FrontDoor's telephone directory and is used for
several purposes. Among these are to allow you to perform name
lookups of other SysOps, to retrieve information about remote
systems, such as the maximum supported baudrate, modem flags, and
system capability flags, to check if a remote system is known to your
system or should be treated as an unlisted system.

The Mailer requires that a nodelist be present whereas the Editor and
the Terminal can both be used without one, if so required. The
typical FidoNet nodelist contains over 20.000 systems and has a
fairly straight forward structure as follows.

Zone

Usually a large geographical area, such as North America, Europe,
Australia and New Zealand, etc. At the time of the release of
this package, the following FidoNet Zone numbers have been
allocated:

1 North America (including Canada)
2 Europe
3 Australia, Tasmania, and New Zealand
4 Latin America
5 Africa
6 Asia

Region

Usually a somewhat smaller geographical area, such as a country
or part of a (large) country. A collection of regions make up one
zone.

Net

Usually a collection of systems local to each other. Typically a
city and in some cases including its suburbs. A collection of
nets make up one region.

Node

A single system within a net.








29



Point

A single system belonging to a node. Typically, a point is
similar to a user logging on to a BBS system using his/her
terminal program, with the main difference being that a point
performs most of his/her activities offline and use smart
software to collect and transit his/her mail.


5.1 Hosts and hubs

The coordinator of a net is called the host or NC for Network
Coordinator. The host is responsible for maintaining the nodelist
segment for his/her net and to act as an inbound NetMail gateway
for the systems in his/her net ("host routed mail").

In a large net, it is quite common that "sub-hosts", called hubs,
are set-up to aid in mail distribution within the net. In other
words, a hub has the same function for systems in a network that
a host has for (remote) systems outside the same network.


5.2 Compiling a nodelist

Before FrontDoor can use the information in a nodelist, it must
be compiled with the FrontDoor Nodelist Compiler (FDNC). FDNC
will process the specified nodelist file(s) and generate database
information and index files.

The nodelist that FDNC needs to process is often referred to as
the raw nodelist. It should not have been processed by Xlatlist,
Parselst or a similar utility; but only be the nodelist you
receive each week (if you are a FidoNet node) from your host.

Grab a somewhat recent version of a nodelist and decompress it.
Place the resulting file (such as NODELIST.228) in the NODELIST
directory. Create a file called FDNODE.CTL with your a text
Editor and place it in the same directory. You can also use the
sample file included in the FrontDoor distribution package and
modify it to suit your needs.


5.2.1 FDNODE.CTL

FDNODE.CTL is FDNC's control file. It is used to control how
FDNC processes the nodelist files, for dial translation and
cost calculation. The order of commands does not matter. All
commands are case insensitive.

POINTLIST [BOSS]

This option allows you to add points to your nodelist
database. The optional BOSS address is required if
FILENAME does not contain a BOSS entry and should not be
specified if FILENAME contains a BOSS entry.



30



If you only have one file with point entries, you can
name it FDPOINT.PVT. FDNC will automatically use this
file if it is found in the NODELIST directory. If you use
one or more POINTLIST statements, FDNC will merge all
specified files into FDPOINT.PVT, overwriting its
contents. A separate chapter discusses the point concept.

PVTLIST [ZONE]

Similar to the POINTLIST command, but FILENAME contains
one or more regular nodes. The optional ZONE number is
required if FILENAME does not contain a ZONE entry and
should not be specified if FILENAME contains a ZONE
entry. The optional ZONE number is only supported for the
first PVTLIST statement. FDNC accepts the POINT keyword
in private nodelists.










































31



If you only have one file with additional node entries,
you can name it FDNET.PVT. FDNC will automatically use it
if it is found in the NODELIST directory. Note that if
you use one or more PVTLIST statements, FDNC will merge
all specified files into FDNET.PVT, overwriting its
contents.

Note that FILENAME for POINTLIST and PVTLIST may contain
wildcard characters (* and ?). FDNC will use the most
recent (by comparing the timestamp of the matching files)
file.

SWEPULSE

This command was added to handle the somewhat screwed up
method Swedish pulse exchanges handles dialing. Most
modem manufacturers uses the British standard for pulse
dialing, which is not compatible with Swedish pulse
dialing. If you use SWEPULSE in FDNODE.CTL, telephone
numbers will be properly translated. Do NOT use this
command unless you live in Sweden and have to use pulse
dialing.

PHONE


Some systems are listed as PVT (private) in the nodelist,
in which case there is no telephone number available (the
text -Unpublished- is used in place). This, of course,
means that the Mailer cannot call a system listed as PVT.
If you have the phone number of a PVT listed system, or
wish to override the telephone number listed in the
nodelist, you can use the PHONE command.

ADDRESS is a fully qualified address (e.g. 2:270/17).
NUMBER is an untranslated (raw) telephone number (e.g.
352-355-936). If the PHONE command is used, FDNC will
remove possible DOWN, HOLD and PVT flags for the
specified system.

USE ZONE [ ..]

This command controls which zones FDNC should include in
the nodelist and username index files. The default is to
include all encountered zones. This does not affect the
contents of raw nodelist files, only what information
ends up in the nodelist and username index files.

DIAL / /


Indicates the start of the dial translation table. All
four parameters are optional and are only used if no
other translation applies for a telephone number.






32



If you only want to use a national (NATL) prefix/suffix,
you must specify the / character for the international
(INTL) prefix/suffix to indicate no special treatment.
The same applies if you only want to use an INTL
prefix/suffix.

; prefix
; prefix/suffix
; /suffix
;
DIAL / 00 ; Add INTL prefix to all INTL
; numbers.
352- ; Strip country code
61- 0061-/X2 ; Send X2 to modem for
; Australia
46-8 /391 ; Append (suffix) 391 to all
; numbers in Stockholm
; Sweden.
END

END is required to terminate the dial translation table.

If you need to strip the search value from a number, you
do not have to put anything after it. In other words, if
you need to strip 1-305-596 from all number, you enter
that string with no translation. Comments are ignored and
must be preceded by a semicolon.

DIAL 12345-1- 00
..
..
END

Would add (prefix) 12345-1- to all NATL numbers not
otherwise translated. It would add (prefix) 00 to all
INTL numbers not otherwise translated.

DIAL /2222 00/1111
..
..
END

Would append (suffix) 2222 to all NATL numbers not
otherwise translated. It would add (prefix) 00 and append
(suffix) 1111 to all INTL numbers not otherwise
translated.

The translation values (strings) does not have to contain
number characters (0-9,.-). They can include commands
such as "S25=100" etc. as long as your modem supports it.








33



COST

Indicates the start of the cost table. The two (default)
parameters are NOT optional. The default cost only
applies to numbers with no matching entry in the cost
table.

COST 5 125 ; NATL default=5, INTL=175
1- 75 ; Canada and the US
1-808- 125 ; Hawaii
46- 27 ; Sweden
END

An additional parameter can be added after the cost for a
number entry indicating the maximum baud rate used. This
is useful when calling locations with a lot of line noise
etc. Please note that this does not work with several
high-speed modems such as the US Robotics Courier HST.
You cannot force a HST modem to connect at 2400 with
another HST modem by changing the baud rate.

To compile your nodelist, type FDNC and press , or invoke
the nodelist compiler from FD's main menu, .

When FDNC is started, it will compare the date of the raw
nodelist and its index files. If the dates match, and no update
has been made to FDNODE.CTL, no compilation will be made and the
program will ask "Nodelist files are up-to-date, compile
anyway?".

If you want to force compilation, run FDNC with the -F command
line switch.


5.3 Nodelist flags

Most of the system entries in the nodelist contain one or more
capability flags to indicate the system's capability. The Editor
is capable of displaying, and the Mailer and Terminal are capable
of using, any nodelist flag present in a system's nodelist entry.


5.4 Command line switches

/C

Compile the nodelist if it (or FDNODE.CTL) has been updated since
the last time it was compiled, otherwise exit directly. This is
useful for compiling the nodelist in batch files since it avoids
the "Nodelist files are up-to-date, compile anyway?" prompt.

/F

Forces FDNC to compile the nodelist regardless of whether or not
it has been updated.



34



5.5 Points

As mentioned before, a point is similar to a user logging on to a
BBS system using his/her terminal program, with the main
difference being that a point performs most of his/her activities
offline and use smart software to collect and transit his/her
mail.

A point system is addressed by specifying the BOSS system's
address followed by the point number. E.g. 2:270/17.1 is point
one of 2:270/17. The BOSS system is called point zero
(2:270/17.0), but the .0 is normally left out.

FrontDoor is a point smart software package and fully supports
the "four-dimensional" (zone, net, node, point) addressing
method. FrontDoor also supports the "two-dimensional" point
approach used by some software. This is often called the
"fakenet" or "pointnet" method. "Fake" because the software uses
a non-existent network number to identify its "pointnet" and uses
the node field for the point number.

The maximum number of points any system can have is 65,535, not
counting the BOSS, or point zero.


5.5.1 Pointlist

A pointlist is similar to a normal nodelist, with the
exception that all entries are considered point systems.
FrontDoor, by default, uses the file FDPOINT.PVT to store its
pointlist. It is possible to add points of other systems to
your pointlist. This will allow you to enter messages to
other systems' points just like you would to any other
system.

Here is a sample FDPOINT.PVT:

,1,FrontDoor_Development,Strassen,JoHo,-Unpublished-,9600
,2,APX_Development,Strassen,JoHo_Too,-Unpublished-,9600

As you can see, a point list looks very much like a raw
nodelist. The last field contains nodelist flags (HST, MO,
CM, etc.) and if more than one flag is present, they are
separated by commas.

Points can also be added to systems in the master nodelist by
using the POINT keyword:

,7,SuperMail_HQ,Strassen_L,Jon_Doe,352-123-456,9600,CM,XA,ZYX
Point,1,Marketing,Strassen,Jon's_Uncle,-Unpublished-,9600
,17,UseMail_HQ,Strassen_L,Jill_Doe,352-234-567,9600,CM,XA,HST
Point,1,The_Lab,Strassen_L,Jill's_Uncle,-Unpublished-,9600

Assuming this was listed under the Net-270 host in zone two,
we have created 2:270/7, 2:270/7.1, 2:270/17, and 2:270/17.1.



35



The second example works well if your nodelist is not updated
frequently (weekly, daily, etc). But if you have to add the
"Point,#" every time you get a new nodelist, this task
becomes rather tedious.

FrontDoor therefore supports an additional pointlist format:

Boss,2:270/7
,1,Marketing,Strassen,Jon's_Uncle,-Unpublished-,9600
Boss,2:270/17
,1,The_Lab,Strassen_L,Jill's_Uncle,-Unpublished-,9600

This does away with the need to constantly update the BOSS
system's data in the raw nodelist and allows you to put your
pointlist in a separate file. FDNC will then take the BOSS
system's data from the master nodelist.


5.5.2 FDNODE.CTL

If you only have one file with point definitions, you can put
them in FDPOINT.PVT and use the third example (above) to add
points for other systems, or your own system. If you have
more than one file with point definitions, however, you
should NOT name any of them FDPOINT.PVT.

Assume we have two files with pointlists:

FDHQ.PTS:

;
; Pointlist for 2:270/17
;
Boss,2:270/17
,1,The_Lab,Strassen_L,Jill's_Uncle,-Unpublished-,9600
,2,The_Office,Strassen_L,Jill's_Sister,-Unpublished-,9600

and

WIZOZ.PTS:

;
; Pointlist for 1:135/990
;
Boss,1:135/990
,1,OZ_Point,Miami_FL,Dorothy,-Unpublished-,9600

We would tell FDNC to merge these two files into FDPOINT.PVT
before it compiles the nodelist, by specifying the following
in FDNODE.CTL:

pointlist C:\FD\NODELIST\WIZOZ.PTS
pointlist C:\FD\NODELIST\FDHQ.PTS





36



The BOSS statement in FDHQ.PTS and WIZOZ.PTS can be removed
if you instead specify:

pointlist C:\FD\NODELIST\WIZOZ.PTS 1:135/990
pointlist C:\FD\NODELIST\FDHQ.PTS 2:270/17

You must ALWAYS specify the address of the BOSS system (as
shown above) if it is not listed in the actual pointlist
file.


5.5.3 Treatment of points

A point system is treated just like any other system with one
exception. A point system of another system than your own is
always treated as its BOSS (or point zero) system. When the
Mailer creates mail packets for 1:135/990, it includes mail
for any points under it by default.


5.5.4 Remapping

If you have points that uses "point dumb" software, ie. which
does not support the "four dimensional" (zone, net, node,
point) concept fully, you must tell FrontDoor about this.
Since FrontDoor supports the "four dimensional" concept, it
has to remap mail from and to "point dumb" software.


5.5.5 POINTNET

If the POINTNET environment variable is set, mail from and to
systems with the same net number as the value of POINTNET is
remapped.

E.g. in AUTOEXEC.BAT:

SET POINTNET=1004

Would force FrontDoor to remap mail from and to 1004/1,
1004/2, 1004/3, and 1004/4 to 2:270/17.1, 2:270/17.2,
2:270/17.3, and 2:270/17.4 respectively; assuming your
network address is 2:270/17.

FrontDoor automatically remaps messages that it extracts from
mail packets. If you use the POINTNET variable, FrontDoor
will treat 1004/1 identical to 2:270/17.1; assuming your
network address is 2:270/17.










37



5.6 Sharing the nodelist

FrontDoor is capable of using the nodelist together with another
program that supports sharing of the nodelist. If you are running
FrontDoor under DESQview or LANtastic, for example, it is
possible to run the Mailer at the same time as the Editor,
sharing the same nodelist.

When FDNC compiles the nodelist, you must, however, make sure
that no other program (including text editors) is using any of
the nodelist files (FDPOINT.PVT, FDNET.PVT, and/or the raw
nodelist).


6 Modems and FOSSIL drivers

FrontDoor works with most "Hayes-compatible" modems, including US
Robotics HST and HST/DS, Telebit's Trailblazer, ANC, Everex, ZyXEL
and Hayes. The general rule is that the modem must be able to send
alphanumeric result strings. For most low-speed modems, the basic
configuration is all that is required. For high-speed modems such as
the US Robotics HST, a few extra settings are necessary.

To utilize high-speed modems in the most efficient way, it must be
properly configured for use with FrontDoor. Some high-speed modems
are incorrectly configured for use with FrontDoor when they leave
their factory.

FrontDoor require that your modem can return verbal result codes,
such as "CONNECT 2400" and "NO CARRIER". In addition, if you want
FrontDoor to answer the telephone on inbound calls, the modem must be
able to return a verbal code indicating a ring signal, such as
"RING". The modem must not have DCD (carrier detect) forced. It
should support disconnecting by lowering DTR (data terminal ready),
but it is not necessary. DTR must, however, not be forced.

For high-speed modem users, it is usually recommended that you lock
the DTE (computer<>modem) speed to the highest possible baudrate;
which is usually 19200, 38400, or 57600 BPS.

The current version of FrontDoor does not support manually operated
modems with constant DTE speeds since most of them do not send any
type of messages to the terminal (program). This is expected to be
implemented in future versions.


6.1 Basic configuration

The modem options are located in FDSETUP under the MODEM >
Default settings pull-down menu. There are four sub-menus,
Hardware, Messages, Command strings, and Answer control.

Hardware

The Hardware option screen allows you to configure things like
the highest baudrate supported by your modem, the COM port to
which your modem is connected, etc.

38



Serial port

The COM port your modem is attached to (1-32).

Locked port

Whether or not you have locked the FOSSIL driver's baudrate.

Maximum baudrate

The maximum supported baud rate of your modem (300-38400
BPS). If you have locked your FOSSIL driver (discussed
later), set this to 38400 BPS.

Reset modem to connect speed

>>> This option should ONLY be used if you have a modem that
supports the CCITT V.23 (split speed, 1200/75 and
75/1200) recommendation.

Lower DTR when busy

Determines how the Mailer should handle the modem when it
invokes other programs, exits, and shells to DOS. If enabled,
the Mailer will simply lower DTR. This means that your modem
will not answer the phone, but any calling systems will not
get a busy signal. If you disable this, the Mailer will send
the Offhook string to the modem instead of lowering DTR. This
can be used to take the modem offhook when your system is not
available so that calling systems gets a busy signal instead
of no answer.

>>> It is against the law of some countries to take a modem
offhook unless actual communication is taken place. As
the operator of FrontDoor, it is your responsibility to
be aware of such laws in your own country.

Lower DTR to terminate call

If enabled, the Mailer will drop DTR for a short period of
time to terminate calls. Most modems supports this and you
should only disable it if your modem does not support
lowering of DTR. If disabled, the Mailer will send the Escape
code string followed by the Onhook string to terminate a
call.

Toggle DTR before dialing

Specifies that the Mailer should lower DTR, pause, and then
raise DTR again every time it places an outgoing call. While
this increases the chances of call collision, it may be
required by some modems to reset properly, etc. Do not enable
this option unless it is absolutely necessary.





39



Carrier detect mask (CDMASK)

The bitmask the Mailer should use when asking the FOSSIL
driver for the port status to determine if a carrier signal
is still present.

Connect messages
Status messages

These options allows you to define the messages sent by your
modem. If your modem does not send one or more of the strings you
should NOT remove them.

The 300 string is sent as CONNECT followed by a carriage return
by some modems (US Robotics HST for example). You should
therefore set the string to CONNECT| (the pipe character will be
replaced with a CR by the Mailer) if this is the case with your
modem.

The RING string should be set to RING| (the pipe character will
be replaced with a CR by the Mailer) if your modem sends the
RINGING message while waiting for a call to be connected.

<+> Custom message

Allows you to define a custom connect message and its associated
baudrate in the event that your modem returns a connect message
not otherwise covered by FrontDoor; such as "CONNECT FAST".

Command strings

All command strings may contain a pipe (|) character, which
translates into a CR and a tilde (~) character which translates
into a one second pause.

Escape code

Used to place the modem in command mode (as opposed to data
mode). This is only used if you have disabled Hardware >
Lower DTR to terminate call or if you are using the Hardware
> Reset modem to connect speed option.

Return on-line

Used to place the modem in data mode (as opposed to command
mode). This is only used if you are using the Hardware >
Reset modem to connect speed option.

Onhook

Used to place the modem on-hook (as opposed to off-hook) if
you have disabled Hardware > Lower DTR when busy or Hardware
> Lower DTR to terminate call".





40



Offhook

Used to place the modem off-hook (as opposed to on-hook) if
you have disabled Hardware > Lower DTR when busy.

Dial

Used when the Mailer places an outgoing call. The Mailer will
send the dial (this) string, the Prefix, the telephone
number, followed by the Suffix.

I.e.

Prefix

Sent before every number when the Mailer places an outgoing
call (see above).

Suffix

Sent after every number when the Mailer places an outgoing
call (see above). This should be set to the pipe (|)
character to indicate a CR in most cases.

Delay

The delay (in 1/10 second) between every string the Mailer
sends to the modem. If you have a mode that accept commands
rapidly, such as the US Robotics HST, you can set this as low
as one or two, but most modems require that this is set
between four and eight.

Init-1..Init-3

Modem initialization strings. They are sent every time the
Mailer initializes the modem in order (Init-1, Init-2,
Init-3). Unused strings should not be set to anything (leave
field blank).

Down

Sent to the modem when the Mailer terminates. This occurs
when mail has been received or when the Mailer terminates
execution.

Reset

Sent to the modem to force it to respond with an OK message.
This should be set to "AT|" in most cases.









41



Answer control

Manual answer

Specifies that the Mailer should wait for the RING message
from the modem and then send the force answer string (below)
to force the modem to answer.

>>> This is the safest way to control modem answering and
should be used unless your modem does not support it. For
Hayes compatible modems, you should add S0=0 to one of
your init strings to prevent the modem from answering
automatically.

Force answer

The string forcing the modem to answer an incoming call. This
should be "ATA|" in most cases.

Answer delay

When the Mailer receives the RING message from the modem, it
will pause for nn 1/10 seconds before sending the force
answer string. This should be set between four and eight for
most modems.

<+> Enable LDFRS

Enables Logging of Data Following Ring Signal (DFRS). This is
mainly used in areas that offer CALLER*ID as a service to
their subscribers. The CALLER*ID data will be logged between
the first and the second RING in most cases.

Fax

Used to enable or disable the internal Fax handling of the
Mailer.


6.2 Advanced configuration

Many modems have several different connection modes and options.
The US Robotics HST/DS, for example, can be configured between
several different connect modes, including CCITT V.32, CCITT
V.32bis, and the proprietary HST protocol.

Since the nodelist normally indicates a system's hardware (modem)
capabilities, the Mailer can automatically reconfigure your modem
depending on what type of hardware the remote system being called
is using. This automatic reconfiguration feature can also be used
to disable or enabled certain options for specific systems (i,e.
not based on nodelist data) because of problems with noisy lines,
long satellite delays, etc.

This is all configured in the MODEM MANAGER under the Manager
pull-down menu in FDSETUP. The actual data is stored in a file
called MODEM.FD in the SYSTEM directory.

42



6.3 The Modem Manager

The entries are processed as defined, i.e. in sequential order,
top to bottom. It may be important in which order these options
are configured and triggered, the modem manager therefore allows
you to re-arrange individual entries by using the Move (F2)
option.

String to match

A nodelist flag, such as HST, a baudrate, such as 2400, or a
complete network address, such as 2:270/17, that the Mailer
should match in order to send the specified string. To
specify a baudrate, place it behind an equal sign, e.g.
=2400.

>>> The Mailer supports any ASCII text to be entered as the
String to match. The data you enter is matched verbatim
with the data in the nodelist. It is for this reason that
the FidoNet user (U) flag must be taken into
consideration. I.e. "ISDN" does not match "UISDN", nor
does "UISDN" match "ISDN".

String to send

The string that will be transmitted to the modem when a match
is made. The pipe (|) character is translated to a CR and
should terminate the string in most cases.

The Mailer will ignore entries with INACTIVE status.

An example, the HST/DS

Most HST/DS owners will have the following three lines at the
beginning of their MODEM MANAGER list:

V32 ATB0|
HST ATB1|
V32B ATB0|

The first line, V32, will transmit "ATB0" followed by CR to the
modem if the system to be dialed has V32 in its nodelist flags.
This is to enable the HST/DS' CCITT V.32 handshake.

The second line, HST, will transmit "ATB1" followed by a CR to
the modem if the system to be dialed has HST in its nodelist
flags. This is to tell the modem that we prefer the HST protocol.
In the case of a system with both the V32 and the HST flag, we
want the HST flag, because that protocol is faster than the CCITT
V.32 protocol.

The third line, V32B, will transmit "ATB0" to the modem if the
system to be dialed has V32B in its nodelist flags. This it to
tell the modem that we prefer the CCITT V.32bis protocol. In the
case of a system with both the V32B and the HST flag, we want the
V32B flag.


43



Let us assume our modem has a problem, with incorrect busy and
voice signal detection, when it encounters a modem that answers
using the PEP protocol handshake (used by Telebit Trailblazers
for example), we would then want to disable our modem's
capability to detect a busy signal and/or a voice signal. We
would then add:

PEP ATX2|


6.4 FOSSIL drivers

A FOSSIL (Fido/Opus/SEAdog Standard Interface Layer) driver is a
memory resident program (TSR) that works as a layer between the
application program and your computer's hardware. The Mailer
requires a FOSSIL driver to function. One of the advantages of
the standard FOSSIL interface is that programs can be ported
easily to other machines and/or operating systems, or to
communicate with devices that do not normally function like a
"Hayes compatible" modem, such as ISDN cards.

There are several FOSSIL drivers available. The Mailer has been
tested with OpusComm, X00, and BNU with good results. X00 and BNU
will be described here.

BNU

BNU, written by David Nugent, comes in two flavors. One is a
device driver, the other is a .COM file, loaded from AUTOEXEC.BAT
or another batch file. The .COM flavor is assumed in the example.
For a detailed description of the BNU driver, please refer to the
documentation included in the BNU distribution archive.

[AUTOEXEC.BAT]

BNU /R=1024 /T=512 /L1:57600

/R=1024

Specifies a receive buffer of 1024 bytes.

/T=512

Specifies a transmit buffer of 512 bytes.

/L1:38400

Locks COM2 at 57600 BPS (for use with a high-speed modem such
as the ZyXEL U1496-E+).

If you are not using a high-speed modem the above example
should most likely be modified to not lock COM2.






44



X00

X00, written by Ray Gwinn, is a device driver (later versions can
also be loaded as an executable from AUTOEXEC.BAT), it is loaded
from your CONFIG.SYS file when your machine is started. For a
detailed description of the X00 driver, read the documentation
included in the X00 distribution archive.

[CONFIG.SYS]

device=X00.SYS E 1 B,1,57600 T=512 R=1024

E

Disable 5 second advertisement when X00 is first loaded.

1

Number of COM ports X00 should allow to be accessed at
one time.

B,1,57600

Locks COM2 at 57600 BPS.

T=512

Specifies a transmit buffer of 512 bytes.

R=1024

Specifies a receive buffer of 1024 bytes.

If you are not using a high-speed modem the above example may
not be what you want. The most common command line for X00
is:

device=X00.SYS E 1

OS/2 2.x

FrontDoor can be used in an OS/2 DOS box with excellent results.
The two drivers described above, BNU and X00, should, however,
not be used for optimum results. Two drivers that have been
tested with good results exist. The first one, VFD for Virtual
FOSSIL Driver, written by Joakim Hernberg is a FOSSIL layer that
interfaces with the native OS/2 2.x COM driver (or compatible
replacements thereof); the other is SIO/VX00 by Ray Gwinn.

A separate FrontDoor Technical Note (FDTN), number two (2), can
be found on many systems that describe the exact details of how
to add these drivers to your OS/2 configuration.






45



7 Events

There are two basic types of events. Mail events and external events.
Mail events are used to control how the Mailer treats mail during a
given time of the day. External events are used to force the Mailer
to terminate with an errorlevel at a specific time. They can be used
to run system maintenance programs, disk optimizers, etc.

The EVENT MANAGER in FDSETUP is used to control mail and external
events. There is a (required) global event, which is active when no
other event is active. The @ character is used for the global event.


7.1 The Event Manager

The event manager has two modes. The first is the view mode,
which is self explanatory. The second mode is the edit/create
mode. It will now be described.

Tag (T)

The event ID. A letter from A-Z or @. The @ event has special
meaning and is described later. X is used for eXternal
events, all other letters are used for mail events. Which
letter you use is not important. They could correspond with
the time of day, N for Night, E for Evening, D for Day, etc.
The event tag is used to associate an event with a schedule
block in the route file (see "Mail routing").

Days

The days you want the event to be active on. The @ event is
active on all days.

Modifier (M)

You can define a start time for the @ event. It is not used
to control the start of the @ event. It can be added,
subtracted, or ignored, when calculating the actual start
time of other events.

If the modifier for an event is +, the start time of the @
event is added to the start time of the event.

If the modifier for an event is -, the start time of the @
event is subtracted from the start time of the event.

If the modifier for an event is *, the start time of the @
event is ignored and not used to calculate the actual start
time of the event.

This is useful when it is time to switch between winter and
summer time. Instead of having to manually go into each event
and define a new start time, you could change the start time
of the @ event and the start time of all other events will be
changed.


46



Let us assume that you have an event (tag=E) that starts at
08:00 in the morning with a modifier of +. Your @ event has a
start time of 01:00. Since the modifier was + (add), the
start time of @ (01:00) will be added to the start time of
the E event and the result will be that event E starts at
09:00. If you change the modifier to - (subtract), the start
time of event E will be 07:00 (08:00 minus 01:00). If you set
the modifier to * (ignore), the start time of E is not
affected.

Start time

Defines the start time of an event. See Modifier (above) for
an explanation on how this can be affected.

Length

Defines the length of the event. External events (X) always
have a length of 00:01 (one minute).

Errorlevel

For external (X) events, this defines the errorlevel that the
Mailer will terminate with. For mail events, this defines the
errorlevel to exit with if mail is received (and the Mailer
is triggered to exit). If the errorlevel field is set to
zero, the default Mailer > Errorlevels > MAIL RECEIVED
errorlevel will be used.

You may use any value in the range 31-255.

Min.cost

Defines the minimum cost of messages that should be qualified
(see "Mail routing").

Max.cost

Defines the maximum cost of messages that should be qualified
(see Mail Routing). A value of -1 forces the Mailer to ignore
the cost of messages.

Behavior

Defines the behavior of the event. Mail events and eXternal
events have different behavior options, this is described
later.

Retry delay

Defines the delay (in seconds) the Mailer should wait between
placing outgoing calls. A value of zero means that you want
the Mailer to use the default delay (described above).





47



7.1.1 External event behavior

Allow users during event

Defines whether or not non-mail (human) calls are allowed to
interrupt the event.

If a non-mail call comes in at 12:00 and you have an external
(X) event scheduled for 12:30, the Mailer will take the X
event into account when calculating the number of minutes
left until the next event, depending on how this option is
set. If it is disabled, the user would, in this case, only
have 30 minutes until the next event. If it was enabled, the
Mailer would instead scan ahead for the next (if any) event
that does not allow users.

Forced

Defines whether or not the event is forced. The Mailer, by
default, ignores events that it "missed" while doing
something else. If you enable this option, the event will be
executed even if the Mailer have "missed" it.

Assume you have a non-forced external (X) event scheduled for
12:00 and a user calls in at 11:50. The call lasts for 30
minutes (12:20). When the Mailer is brought back up again,
the external event will not be executed. If, however, you had
this option enabled for the external (X) event, it would be
executed as soon as the Mailer was brought up again.

Inactive

Toggles the state of the event. The Mailer will ignore any
inactive events. This allows you to deactivate events without
removing them from the event manager.


7.1.2 Mail event behavior

Allow users during event

This has the same function as for eXternal events. In
addition, if this option is set to "NO" (disabled),
interactive (non-mail) calls will not be accepted during the
duration of the event.

Exit when mail is received

Defines whether or not you want the Mailer to exit when mail
has been received. This allows you to process received
echomail, etc.

High priority (crash) mail only

Forces the Mailer to ignore messages that does not have crash
status. Note that messages with IMM (Immediate) status are
not affected by this.

48



Allow file requests

Defines whether or not you want the Mailer to honor file
requests during an event. If you disable this option, the
Mailer will simply ignore file requests.

Pickup file requests

The Mailer will by default not accept file requests received
during an outgoing (outbound) mail call since you are paying
for the call. This option allows you to pickup waiting file
requests and process them. Whether or not they are actually
honored is defined by the Allow file requests option.

Hold (do not send) file requests

Forces the Mailer to ignore outgoing (your own) file request
messages during the event. This is useful if you do not want
to send out file requests during daytime events for example.

Hold (do not send) file attaches

Forces the Mailer to ignore outgoing (your own) file attach
messages during the event. This is useful if you do not want
to send out files attached to messages during daytime events
for example.

Attempt to pickup waiting mail

Defines whether or not you want the Mailer to pickup any
waiting mail on outgoing calls. The default (YES) should be
used unless you want the Mailer to terminate the mail session
as soon as it has delivered its mail. If this option is
disabled, your file requests (if any) will fail since the
Mailer terminates the call before the remote system has a
chance to process them.

Allow nodes to pickup waiting mail

This option is the same as using the DENY route command (see
"Mail routing"). The only difference is that you cannot be
selective about which systems can pickup waiting mail. If a
system calls in to deliver its mail and this option is
disabled (NO), your system will not release (send) any
waiting mail.

Prioritize outbound calls

Forces the Mailer to make outgoing calls without waiting for
the specified time (retry delay) between calls. The Mailer
will still accept incoming (inbound) mail, but the chances of
another system getting through are very small.

Inbound-Only

Specifies that you do not want the Mailer to make any
outgoing calls during the event.

49



End event when no more mail to send

If you have an event with some restrictions on other systems
or do not allow users, it may be useful to enable this
option, forcing the Mailer to release all restrictions
enforced by the event as soon as there is no more mail to
send.

If new mail is entered that qualifies for mailing and the
event has ended (prematurely), it will be restarted.

Send to CM systems only

Forces the Mailer to only qualify those systems that have the
CM (continuous mail) flag set in their nodelist entry.

Send to non-CM systems only

Forces the Mailer to only qualify those systems that Do not
have the CM (continuous mail) flag set in their nodelist
entry.

Send to systems once only

Forces the Mailer to only deliver mail to a system once
during the event. If the event is interrupted or aborted, the
Mailer will remember which systems it has already delivered
mail to and when the event is restarted, it will not call
those systems again.

Assume you have mail to 1:135/20 and 2:310/11 during event A,
with this behavior enabled. On the first call to 1:135/20,
the Mailer sends its mail successfully. If the event is
restarted for some reason (user break, human caller, mail
received exit), the Mailer will not call 1:135/20 again, even
if there is new mail for that system.

Answer inbound calls

If you have specified that you want the Mailer to force the
modem to answer when it receives a RING message (see Modem >
Answer control), this setting ultimately determines whether
or not the Force answer string is sent to the modem, or if
the Mailer should simply ignore the RING message. This allows
you to control when the Mailer should answer inbound calls.

Inactive

The same as for eXternal events.


7.1.3 The @ event

The @ event is active whenever your system is not in another
mail event. The @ event is required. You do not have to tell
the Mailer to send mail during the @ event, but it must be
defined.

50



You can use it to send local and/or low cost mail whenever
the Mailer is not busy, etc. You can specify a schedule block
(see Mail routing), using the @ tag and define routing rules
for it just like any other mail event. If the Mailer does not
find a schedule block for the @ tag, it will still use any
global rules defined in the route file.


7.1.4 Overlapping events

Overlapping events are fully supported by the Mailer.

Event B starts at 05:00 with a duration of 01:00. Event A
starts at 05:01 with a duration of 00:15. The behavior for
event A includes Only execute event once and End event when
no more mail to send.

Event B will start at 05:00, after one minute, event A will
start and last for fifteen minutes (or end when there is no
more mail to send).

Once event A has ended, B will resume. This is a very
powerful and useful concept. It can be used to start
temporary or dynamic events within events that lasts for
several hours.


8 Mailer

The Mailer is the core program of FrontDoor. It is responsible for
sending and receiving messages and files; and optionally pass human
callers to a BBS or other interactive software. The Terminal function
is also located in the executable file of the Mailer and can be
reached from one of its menus.

Most functions of the Mailer are reached by holding down the
key and pressing a key, A through Z.


8.1 Menus

Each function and menu of the Mailer will now be described.


8.1.1 Programs

Message Editor

Loads the message Editor.

Terminal

Invokes the Terminal (it resides in the Mailer's overlay
file, FD.OVR).




51



Configure

Loads the configuration program, FDSETUP.

Nodelist

Loads the nodelist compiler, FDNC.

User keys

Displays the 20 (24) user definable function keys and allows
you to select one.

DOS shell

Invokes a temporary DOS shell. Type EXIT and press to
return to the Mailer. Packets created with any of the
temporary mail services function (File Request, Transmit
file, Send mail) will be discarded when you return and the
Mailer will rescan the contents of the NetMail folder.

Quit

Returns you to DOS or the batch file that first executed the
Mailer. The Mailer will return errorlevel 10 (User Break).


8.1.2 Utilities

Active event

Displays the settings for the currently active event.

Inbound history

Invokes the inbound call (mail) history management function.

Outbound history

Invokes the outbound call (mail) history management function.

Recent activity

Shows you the last two days of general activity, failed
sessions, file requests, number of files/bytes sent and
received, etc.

Disconnect

Allows you to manually terminate a call. This will also
re-initialize the modem.

Lock keyboard

Allows you to lock the keyboard (and the Mailer) against
unauthorized use. The Mailer will still perform its duties
such as sending and receiving mail, etc.

52



You must enter the specified password to unlock the keyboard.
If the Mailer exits (due to mail received or an interactive
call is received), the keyboard lock status is retained and
when the Mailer is restarted, the keyboard will remain
locked.

Restart event

Forces the Mailer to rescan the message base and create new
mail packets. All previous temporary packet information is
discarded.


8.1.3 Mail

Queue manager

Allows you to manipulate the current mail queue. If no mail
event is active, the mail queue is empty. The mail queue is
described in a separate section.

Undialable manager

Allows you to manipulate systems marked as undialable. This
is discussed in a separate section.

Forced poll

Creates a priority entry in the mail queue for the specified
system. If an entry for the specified system already exists
in the queue, its status is set to priority.

>>> If the Mailer has to rescan the message base, the
temporary poll is removed from the mail queue.

Request files

Allows you to create a temporary file request to the
specified system.

>>> If the Mailer has to rescan the message base, the
temporary file request is removed from the mail queue.

Transmit files

Allows you to transmit files to the specified system. As with
the poll and request function (above), this is only a
temporary function.

>>> If the Mailer has to rescan the message base, the entry
is removed from the mail queue.







53



Send mail

Allows you to create a temporary mail packet for the
specified system. You can choose to include all or
high-priority mail.

>>> If the Mailer has to rescan the message base, the entry
is removed from the mail queue.


8.1.4 Your profile

Answer

Allows you to toggle the manual answer status. This
option is only valid if you have enabled the manual
answer option in FDSETUP. Note that if you manually
toggle this option, the Mailer will honor the new setting
until it exits.

Printer

Allows you to toggle the printing of new (incoming)
messages.

Human callers

Allows you to toggle whether or not you want the Mailer
to accept human callers. This option is only valid if you
are not running FD in mail-only mode.

Exit on mail

Allows you to toggle whether or not the Mailer should
exit when mail has been received. This option is only
valid if an errorlevel for received mail has been
specified in FDSETUP and the active event (if any)
specifies that the Mailer should exit when mail has been
received.

Which AKA

Allows you to select a different AKA to operate under.
The specified AKA will be active until the Mailer exits
or you select a new AKA to operate under. Note that this
does not effect the AKA matching function of the Mailer.


8.2 Mail queue

The mail queue function allows you to modify the status of one or
more mail packets, temporarily change the destination of mail
packets, and to unpack one or more packets.





54



Priority

Sets priority status on all selected packets. Packets with
priority status are always processed before packets with crash or
normal status.

Verbose or

Displays more information about the highlighted mail packet such
as attached files, estimated transfer time, etc.

Crash

Sets crash status on all selected packets.

Hold

Sets hold status on all selected packets. Packets with hold
status will never be sent by the Mailer unless the destination
system calls in to pickup mail.

Select all

Toggles the selected status for all packets.

Destination

Changes the destination of all selected packets. When the Mailer
processes the mail queue, it will treat all active (non-sent and
non-held) packets as individual packets, including two or more
different packets destined for the same system. If a connection
is made (whether the destination system calls you or your system
calls it), however, all packets destined for that system will be
sent.

Unpack
Discards all selected packets from the queue. This will not
delete any mail from the NetMail folder.

Clear status

Sets normal status on all selected packets.

Clear busy retries

Sets the dial attempts for all selected packets to zero.

Exit

Returns you to the Mailer's main screen.

Select
Toggles the selected status of the currently highlighted packet.





55



8.3 Call progress

When the Mailer has mail to send, it will step through the mail
queue and call the systems with mail packets waiting. Packets
with sent, failed, and hold status are ignored. These can,
however, always be picked up by the destination system if it
calls in.

After every unsuccessful (BUSY, NO CARRIER, etc.) call, the busy
retry counter is incremented until it reaches the value defined
in FDSETUP. Once the limit has been exceeded, the Mailer puts
hold status on the packet. If a connection is made but the actual
transfer fails, the resend retry counter is updated and once the
limit, defined in FDSETUP, is reached, the packet receives failed
status.

Press to force the Mailer to place the next outgoing
call.


8.4 Semaphore indicators

Every time the Mailer scans the NetMail folder, it looks for
unread messages destined for your system. If any are found, it
will enable the flashing "Mail" text in the bottom right hand
corner. Once the message(s) have been marked received (read), the
flashing mail text will disappear.


8.5 Undialable

When the Mailer reaches the resend (session failure, transmission
failure, etc.) retry limit for a system during an event. That
system is added to the undialable table with a "grade" of one.
When the "grade" reaches three, the system is considered
undialable and will never be called again (until you manually
"upgrade" it).

The undialable manager is accessed by pressing from the
Mailer's main menu and allows you to "upgrade" a system's status,
add a system manually to the undialable list, and remove one or
more undialable systems.

The undialable system information is kept in NODIAL.FD in
FrontDoor's SYSTEM directory.


9 Editor

The Editor is the program used to write and read messages. It can be
invoked from the command line in DOS by typing FM followed by
, or from the Mailer by pressing .

The Editor has two "status" lines. The bottom status line is used to
display the current message, number of messages in the current
folder, the lowest and highest message numbers and the number of
messages remaining to the last message (last minus current).

56



The top status line shows the currently active AKA (address), the
current time and the folder you are in.

Most functions of the Editor are reached by holding down either the
or key and pressing a key, A through Z. If you press a
key that has no function assigned to it, it will display a message
saying "Press Alt-H for help" on the bottom status line.

Each function and menu of the Editor will now be described.


9.1 Main

Create

Allows you to create a new message in the current folder. You
will be prompted for the destination (user name and possibly a
network address), subject, etc.

Delete

Removes the currently displayed message. The Editor will ask you
to confirm that you really want to remove the message.

Reply

Similar to the Create function. The destination of the newly
created message, however, is taken from the sender of the message
you are replying to. This function also allows you to quote the
original message, in whole, or selected parts.

NetMail reply

Similar to the Reply function. If you are in a Local or
Conference folder, your message (the reply) will be placed into
the NetMail folder. The destination address of the message is
taken from either the origin line (Conference folders) or the
sender's name (Local folders).


Reply comment

Similar to the Reply function. It allows you to create a
follow-up message with additional comments to the same
destination as the original message.

Forward or

This function allows you to redirect a message to someone else.
It will also insert some additional information at the top of the
redirected message, indicating who the message was originally
from, etc. You can choose whether or not you want to overwrite
the original message with the forwarded (redirected) message.

The Forward function will also add the default message status to
the message and remove the Rcvd and Sent status bits if they were
set.

57



View fax

Invokes the external fax viewer, allowing you to view documents
attached to a fax cover page message.

Folders

Allows you to change the active folder. You cannot change to
another folder while editing a message, but you can view the
folder list. The type of each folder is shown as 'E' for
Conference, 'L' for Local and 'M' for NetMail.

The commercial version allows you to configure any folder with
NetMail status, the type will then be displayed as 'N'. The
shareware version only has one NetMail-type folder.

To select a folder, you can use the arrow keys to move the
highlight bar and then press , or you can type the number
of the folder followed by pressing .

Folder scan

Scans all folders and indicates which folders have any message
number higher than the last read message. Typically, this means
that new messages have arrived in a folder since you last
accessed it.

DOS shell

Invokes a temporary DOS shell. Type EXIT and press to
return to the Editor.

Leave editor

Returns you to DOS or to the Mailer, depending on how the Editor
was invoked. If you are editing a message, you will be asked
whether or not you wish to save it before exiting.


9.2 Edit

Status

Allows you to change the status of a message. See the separate
section about Message Status Bits for a detailed description of
this.

Subject

Allows you to change the subject of a message. If you have a
message with file attaches and press , the file attach
list will be processed again and if you specified wild-cards or
more than one file on the subject line, you will have to select
the files you want to send once again.




58



Text

Allows you to edit the text (body) of a message. If you are
already in editing mode, this will bring up a secondary menu with
text editing related functions.

Destination

Allows you to change the destination of a message. This will add
the default message status bits as well as the Local bit to the
message and remove the Rcvd and Sent status bits if they were
set.

As opposed to the Forward function, using will not result
in any text being added to the message body (forwarding info).

Toggle
Brings up the toggle menu.


9.2.1 Edit mode

Import file

Allows you to import an ASCII file into the text. The
contents of the file will be inserted at the current cursor
position.

Insert line

Inserts a blank line after the current line. The cursor will
remain in the same position.

Line to buffer

Adds the current (where cursor is positioned) line to end of
the temporary buffer and moves the cursor down one line. The
last eighty lines of deleted/marked text is always retained
in a temporary buffer and can be reinserted with or
.

Delete word

Deletes the word to the right of the cursor.

Go to line #

Allows you to specify an absolute line number to place the
cursor on.

Delete to EOF

Deletes all text from cursor to end of message.





59



Find

Searches for the specified string, and if found, places the
cursor on the first character of the found word.

Find & Replace

Allows you to replace a string with another. Note that this
function will restore the cursor position whereas the Find
function will not.

Re-format

Reformats a block of text (from cursor to the next blank
line) and removes any hard CRs from the reformatted lines. It
will add a hard CR to the end of the reformatted block.

Line drawing

Allows you to draw lines and boxes using a variety of line
sets.

Undelete or

Inserts the last deleted line at the current cursor position.
The last eighty lines of deleted/marked text is always
retained in a "scratch" buffer.

Save & exit or

Save (or discard changes to) the current message.


9.2.2 Toggle

Translation

Toggles the state of the translation tables.

Hard CRs

Toggles whether or not hard CRs in the message text should be
displayed.

Echo info

Toggles the state of the echo info. This function is only
available in Conference folders.


9.3 Utilities

Survey

Invokes the message survey function.



60



Force rescan

Forces the Mailer and other Editors to rescan the NetMail folder.

Move/copy

Allows you to move or copy the current message to another folder.

Message to file

Exports the current message to an ASCII file. If the specified
file already exists, you will be asked if you want to overwrite
its contents or append the message to the end of the file.

Print message

Adds the current message to the print queue. Messages added to
the queue are printed in the order they were added. If you
attempt to leave the Editor while messages are still being
printed, it will ask you to confirm your choice to exit. If you
choose to exit, the Editor will cancel the remaining messages in
the print queue.

>>> The Editor does NOT use any external print spooler, such as
DOS' PRINT program.

Renumber

Renumbers the messages in the current folder so that there are no
gaps in the numbering. This function is not available in Hudson
Message Base-type folders.

Change username

Allows you to change the current user profile.

Change address

Allows you to change the active network AKA (address). This will
also change the address that is inserted in origin lines in
Conference folders.

Change origin

Allows you to change the active origin line. Whether or not an
origin line is appended to messages that you create is determined
by the echo info setting (Conference folders only).

Drop marker

Allows you to drop a marker (0-9) on the current message. You can
later return to these markers by pressing in combination
with the digits 0 through 9.





61



9.4 Purge

The options on the Purge menu allow you to remove one or more
messages in the current folder, based on the various criteria, as
described below.

From user

Purge all messages FROM the specified user.

To user

Purge all messages TO the specified user.

From net address

Purge all messages that originated from the specified address.

To net address

Purge all messages destined for the specified address.

Received

Purge all received (read) messages.

Sent

Purge all sent messages.

Age

Purge all messages older than the specified date.


9.5 Help

Keyboard help

Displays a brief help screen about various keys (cursor keys,
etc).

Macro keys

Displays the contents of the 20 (24) macro keys available in edit
mode.

Program notice

Displays the program version, copyright and registration
information.

Show notes

Displays extended information about the currently displayed
message. The extended information is stored behind Ctrl-A (ASCII
1, SOH) characters in the message text.

62



Remote Info

Displays information about the originating or destination system.


9.6 Entering new messages

Press . The screen will be refreshed and you will be
prompted for the destination. If you are in the NetMail folder,
you can use the name/address look-up function to specify the
destination of the message; if you are in a Conference or Local
folder, you must type the destination manually.

Once you have specified the destination of a message, you will be
prompted for the subject (Re:). If you want to send or request
files to/from another system, select the proper status bits and
specify the file data in the subject line. Note that the default
message status (specified in FDSETUP) is always added, but can be
changed.

Enter the message text and press or to save
the message.


9.7 Message survey

The Survey function is used to perform global operations on a
range of messages such as moving, printing, copying, deleting,
etc.

When you press for the first time in a folder, the
Editor will scan all the messages in the folder and build a list
of them. That list is kept in memory until you press in
another folder, or when the Editor, for some reason, has to
rebuild its internal message list for the folder. If you remove,
add or renumber messages the list will be updated accordingly, so
no rescan is necessary.


9.7.1 Main menu

Kill

Removes all selected messages.

Print messages

Prints all selected messages.

Range select

Allows you to select a range of messages matching a certain
criteria.

Select all

Allows you to select all messages in the folder.

63



Move

Allows you to move all selected messages to another folder.

Copy

Allows you to copy all selected messages to another folder.

Export to file

Allows you to export all selected messages to an ASCII file.

Go to message

Returns to view mode and makes the highlighted message the
current message.

Select
Toggles the selected status of the highlighted message.

Exit

Returns you to view mode.


9.7.2 Continuous tagging

If you activate Caps Lock, messages can be tagged (selected)
by moving the bar with the arrow keys.


9.7.3 Range select

The range select function allows you to select a range of
messages matching a certain criteria. Most of the functions
only require a partial match with the selected search
criteria.

From user

Selects all messages from the specified user.

To user

Selects all messages to the specified user.

Originating address

Selects all messages originating from the specified address.

Destination address

Selects all messages destined for the specified address.





64



Text

Selects all messages containing the specified search string
in the message body.

Date

Selects all messages between two dates.

Re:

Selects all messages matching the specified subject.

Rcvd

Selects all messages with received (read) status.

Sent

Selects all messages with sent status.

Exit

Returns you to the main menu of the Survey function.


9.8 Keyboard macros

The keyboard macros are located on - (12) and F1> - (12). When a macro key is pressed, the Editor
will insert its contents at the current cursor position. The
following macros are supported:

Sequence Expands to Key in FM
---------------------------------------------------------------
~~ ~
~| |
| CR
~B TAB
~> Cursor one step to the right
~< Cursor one step to the left
~^ Cursor one line up
~V Cursor one line down
~G Cursor to top of message
~H Cursor to end of message
~F Reformat paragraph
~L Insert line
~Y Delete line
~} Delete from cursor to EOL
~T Delete from cursor to EOF
~S Save message and keep original , 'N'
~# Save message and delete original , 'Y'
~U Current username
~D Recipient of original message
~O Sender of original message
~A Subject (re:) of original message
~C Date of original message

65



~J Originating address of original msg
~K Destination address of original msg

~! Invoke DOS shell
~E; Execute program
~X; Export to file
~I; Import file
~R; Import file and remove it

Examples

The sequence "~Edir /w>x.bak;~Rx.bak;" (without the quotes)
will:

o Execute "DIR /W>X.BAK"
o Import X.BAK into the message text
o Remove X.BAK

Note that the semi-colon (;) is NOT optional for the
"Execute" and "Import" macros. It determines the end of the
program name and its parameters and/or the end of the name of
the file to import.

The sequence "|~T|~B~B~BRegards,|~B~B~B~U|" (without the
quotes) will:

o Insert a CR
o Delete the text from the cursor to the end of the
message.
o Insert another CR
o Insert three TAB characters (equivalent to pressing
three times).
o Insert the text "Regards," without the quotes
followed by a CR.
o Insert three TAB characters (equivalent to pressing
three times).
o Insert the current user's name followed by a CR.

E.g. ..

..

Regards,
John Doe


9.9 Carbon copies (CC)

The Carbon Copy function, is more or less what the name implies.
A function that allows you to send the same message to two or
more recipients; a distribution list. The CC function is only
active in the NetMail folder. CCs can also be used for File
Attach and File Request messages.





66



To use the CC function, put the text "cc:" (case does not matter)
followed by one or more SysOp names or system addresses,
separated by a comma, at the top of the message. Once you select
to save the message, the Editor will scan the beginning of the
message text for CC: and if found, process each element of the CC
list. You can have more than one line with CCs.

E.g. cc: bremin,#bodger,samet
cc: howard,kasza,wallin,1:135/4

Note that if you create several messages using the CC function,
editing any of them will not reactivate the CC function. The
Editor will only process a CC list the first time you enter a
message (i.e. a new message).


9.9.1 Hidden CCs

To hide a recipient in a CC list, put the pound (#) character
in front of the SysOp name or system address.

E.g. cc: #1:135/20,#1:135/990,2:310/11


9.9.2 Using files as input to CCs

You can also specify a file containing SysOp names or
addresses to the CC function.

E.g. cc: @betanote.txt


9.9.3 Address expansion

All addresses in a CC list can be entered in short form, and
several macros are recognized.

cc: MYNET

Will process your whole net and add every system to the CC
list. Note that the previously supported notation
"MYNET/node" (eg. MYNET/12) is no longer supported.

cc: 2:310/*, 1:135/*

Will include all systems in net 2:310 and 1:135.

cc: 2:270/17.*

Will include all listed point systems under 2:270/17.


9.10 Blind Carbon Copies (BCC)

Blind Carbon Copies are identical to normal Carbon Copies with
the exception that none of the recipients will know that the
message is a Carbon Copy.

67



9.11 Crossposting (XC)

Although CCs are not supported for Conference and Local folders,
there is an additional function that provides you with a method
of broadcasting the same message to two or more folders. This
function is called Crossposting.

To use the XC function, put the text "xc:" (case does not matter)
followed by one or more numbers, separated by commas. Each number
represents a folder number where you want the message
cross-posted. If your folder list looks like:

1 BNU
2 COMP.SYS.IBM.PC
3 FDECHO
4 TSECHO
5 NETSYSOP

And you put "xc: 1,3,5" in a message in folder two. The resulting
messages will have

* Crossposted in BNU
* Crossposted in COMP.SYS.IBM.PC
* Crossposted in FDECHO
* Crossposted in NETSYSOP

At the top of each message. The target folder is excluded from
the list. Ie. " * Crossposted in BNU " will appear in each
message not going to the first (BNU) folder.


10 Terminal

Although FrontDoor was designed primarily as an e-mail system, it
also features a powerful terminal emulator, hereafter called the
Terminal. The Terminal features very accurate and efficient Terminal
emulation and file transfer protocols; and several other features
found in expensive and/or complex communications packages.

The Terminal is invoked by pressing from the Mailer's main
menu, or by specifying /TERM on the command line when it is started.
You can also choose to run the Mailer in terminal-only mode, in which
case the Terminal is invoked up directly when you start it.

Most functions of the Terminal are reached by holding down the
key and pressing a key, A through Z. If you press a key that has no
function in the Terminal, it will display a message saying "Press
Alt-H for help".










68



10.1 Menus

Each function and menu of the Terminal will now be described.


10.1.1 File

The file menu contains functions to manipulate macros, upload
and download files, transmit ASCII files, invoke DOS shell
and Editor, etc.

Download files

Receive one or more files from the remote system.

Upload files

Transmit one or more files to the remote system.

Transmit ASCII file

Allows you to transmit an ASCII file to the remote. You will
be able to select the default inter-character delay and line
translation. It is possible to create simple script or macro
files by using this option.

Macro management

Allows you to create and maintain your macro key sets. Use
this function to make a different macro key set the active
set.

Profile management

Allows you to create, maintain, and select IEMSI session
profiles. IEMSI is discussed in a separate section.

Command history

The Terminal records your last ten typed lines. When you
press Enter, it removes the oldest entry and adds the newly
typed line to the list. You can choose any one of the ten
history entries and retransmit it to the remote.

Editor

Invokes the program defined in the Terminal > Miscellaneous >
Editor field in FDSETUP. You will be asked for optional
command line parameters, they are stored for the remains of
your Terminal session. This could also be used to bring up
external protocol menus, etc.

Note that the FOSSIL driver is deactivated when leaving the
Terminal and reactivated upon returning to the Terminal. This
is to make sure FrontDoor maintain control of the FOSSIL
driver even when loading other programs that could possibly
leave the FOSSIL driver in a non-desirable state.

69



DOS shell

Invokes a temporary DOS shell. Type EXIT and press to
return to the Terminal.

Leave Terminal

Depending on how the Terminal was invoked, this will return
you to the Mailer's main menu or to DOS. If you are connected
to a remote system when you press , you will be asked
to confirm that you want to hang up.


10.1.2 Line settings

The line settings menu contains your current communications
parameters. You cannot reach the options of this menu unless
you press . Most of the options in this menu are self
explanatory, only the not so obvious options are explained
here.

BPS

The current DTE baud rate. If you have enabled the "Lock
port" option in FDSETUP, this field will contain "Fixed" and
you will not be able to change it.

Wraparound

Determines whether or not the Terminal should place the
cursor on a new line when it is positioned at the rightmost
position of the screen and a character is received. This
should be set to On in most situations. There are however
VT100/VT52 applications that require this setting to be Off.
Note that a CR/LF will force a new line even if this is set
to Off.

CR expansion

Determines how a received CR character should be processed.
If set to CR, no expansion is made. If, however, it is set to
CR/LF, the Terminal will expand all received CR characters to
CR/LF.

Local echo

Some on-line services do not echo the characters you type. It
may be necessary to enable this option to see what you are
typing. If the on-line service you are using does echo the
characters you type and you enable this option, you will get
duplicated characters. E.g. "HHEELLLLOO!!".







70



Emulation

Allows you to choose between ANSI, VT100, VT52 and TTY (no)
emulation. Note that the default for ANSI emulation is to
support AVT/0+ (AVATAR/0+). This is a Terminal emulation
protocol designed by G. Adam Stanislav. It is extremely fast
and very efficient.

Translation tables

If enabled, the Terminal will use the Terminal translation
tables to filter any received characters.

Auto-Zmodem downloads

The Terminal monitors received characters for the special
sequence a Zmodem transmitter sends when a Zmodem file
session is started. If it detects this start-up sequence, it
will automatically invoke the Zmodem receiver. If you disable
this option, you must use (Download) to receive files
using the Zmodem protocol.

Allow AVT/0 sequences

Determines whether or not you want to accept AVT/0+ emulation
sequences when you are in ANSI emulation. Since AVT/0+ is
based upon certain control characters, you may want to
disable this option if you are using programs like Doorway,
etc. which frequently transmits control characters.

Clear on Form Feeds

Determines whether or not the Terminal should clear the
screen when receiving a Form Feed (FF, ASCII 12) character
from the remote.

Interactive EMSI

Determines whether or not the Terminal should attempt to
establish IEMSI sessions with systems you call. IEMSI is
completely transparent and should not cause any problems.
IEMSI is described in a separate section.


10.1.3 Session

Capture

Allows you to capture characters, as they appear on the
screen, to a disk file, or logging it to a printer. Since the
Terminal filters out NUL characters (ASCII 0), they will
never appear in a capture file.

Other characters and control sequences may not appear either,
depending on what terminal emulation protocol is active at
the time.


71



Conversation mode

The conversation mode function splits the screen in half,
creating two windows or sections on the screen. Data received
from the remote system will be displayed in the top section,
while the characters you type will be displayed in the bottom
section.

Dial

Allows you to dial a system in the nodelist. This function is
disabled if no nodelist files are detected when the
Terminal/Mailer is started. Note that you cannot queue
numbers dialed via the nodelist.

Manual dial

Allows you to enter a number manually, which will then be
dialed until you press the key or a connection has been
made. Note that you cannot queue manually entered numbers.

Disconnect

Disconnects the current call and displays the elapsed time.

Phone directory

Brings up the phone directory manager.

Reset timer

Resets the on-line timer. The timer is automatically reset
when a new connection is made.

Scroll back buffer

Allows you to view data that has scrolled off the screen. The
amount of data stored in the scroll back buffer is configured
in FDSETUP.

>>> If you invoke the Phone Directory and there is
insufficient memory available, the Terminal will dispose
of the memory allocated to the scroll back buffer in an
attempt to free sufficient memory to invoke the Phone
Directory.

Send BREAK

Sends a (short) BREAK signal to the modem. Consult the
documentation for your modem regarding BREAK signals. This is
often used to terminate inquiries to commercial on-line
systems, etc. but can be treated differently by your modem.

Clear screen

Clears the screen and moves the cursor to the upper left-hand
corner.

72



Initialize modem

Transmits the Init-1..Init-3 modem strings as configured in
FDSETUP under Modem > Command strings, followed by the Init
string defined under Terminal > Miscellaneous, to attempt to
initialize the modem.


10.1.4 Options

Most Terminal emulators and communications packages have a
status line, either at the top or at the bottom of the
screen; on which they display various information about
settings and the current connection. FrontDoor's Terminal
does not have a status line, hence the options menu.


10.2 Keyboard macros

Depending on how many function keys you have on your keyboard,
you will have access to 20 or 24 keyboard macros for every macro
set. You can have over 60,000 macro sets defined, but only one
can be active at any time. The macro management function is
reached by pressing .

The keyboard macros are located on - (12)
and - (12). When a macro key is pressed, the
Terminal will send the data specified as the macro string,
uninterpreted, to the remote system. The following characters
have special meaning when specified in a macro string:

Sequence Expands to
----------------------------------------------------
~~ ~
~| |
| CR
~B TAB
~! One second pause
~P The current password as defined in the Phone
Directory or the current IEMSI Profile's
password.


10.3 Raw mode

The IBM PC keyboard generates two characters for every key you
press. The first character is called the ASCII code, and the
second character is called the scan code. Only the ASCII code is
transmitted to the remote system by default. There are, however,
some situations which require the Terminal software to transmit
both codes. The AVATAR emulation protocol and the Doorway
programs both require the complete codes (two characters) to
identify certain keys; function and arrow keys in particular.

>>> Once raw mode has been enabled (by pressing the Scroll Lock
key), you cannot reach any of the Terminal's regular
functions. Raw mode is disabled by deactivating Scroll Lock.

73



10.4 Keypad modes

The VT100 and VT52 emulation protocols require that the cursor
keys transmit different codes depending on the state of the
remote application. Most on-line services follows the VT100
recommendation for this, but several Editors and other programs
have their own ideas of how this should be handled.

If you enable the numerical keypad (Num Lock), the white cursor
keypad will transmit the numerical application codes for
VT100/VT52. If you have an extended (101/102) keyboard, the grey
cursor keys will not follow the numerical keypad setting.

By using the key together with the white cursor keypad,
you can negate the setting of Num Lock temporarily. Ie. if Num
Lock is enabled and you press (8), the Terminal will
transmit the up key sequence to the remote. If Num Lock is
disabled and you press (8), the Terminal will transmit
the numerical application keypad sequence for 8.


10.5 PC keyboards

When the remote (host) requests that the Terminal enters
numerical application keypad mode, the Terminal automatically
enables Num Lock. On extended (101/102) keyboards, this will also
enable the Num Lock LED. The Num Lock LED on IBM-PC (standard)
keyboards will not change by doing this. The Options, ,
menu should correctly reflect the proper state of Num Lock
anyway.


10.6 Phone directory

The phone directory allows you to define up to 200 (400 in the
commercial version) numbers in addition to those stored in the
nodelist database. The Terminal keeps the internal phone
directory in a file named TERMPHON.FD, which is located in the
SYSTEM directory.

The top menu in the phone directory has nine options.

Clear queue

Removes the queue (Q) status from all entries in the phone
directory. If no entries are listed in the queue, no action is
taken.

Dial or

Adds the current (highlighted) number to the queue and proceeds
to the dial function. If no connection is made, the Terminal will
proceed to the next number in the queue. If no other numbers
exists in the queue, the Terminal will wait the defined (in
FDSETUP) number of seconds before trying again. You can abort
dialing by pressing .


74



Edit existing entry

Allows you to change an existing entry.

Purge

Removes all entries marked for deletion (small square) from the
phone directory. There is no way to recover a removed entry, so
use this option with caution.

Toggle queue status or

Adds/removes the current (highlighted) number to the queue.

Sort (and purge)

This option is similar to the Purge option with one difference.
It will also sort the phone directory in ascending order, based
on the name field.

Add entry

Allows you to add a new entry to the phone directory.

Mark for deletion

Marks an entry for deletion (small square). No other action is
taken. You must use the or function to remove entries
marked for deletion.


10.6.1 Queue status

The queue status is only retained while you are in the phone
directory. Once you return to the Terminal, the phone
directory is removed from memory.


10.6.2 Adding/changing entries

When you press (Edit) or (Add), the edit screen
will appear. Press to save the entry and to
abandon the entry/changes.


10.7 Inactivity timer

If you are not connected to another system, the Terminal function
will be terminated automatically after ten minutes of inactivity,
if there is no carrier signal. The timer is reset if a key is
pressed and when the carrier signal changes.







75



10.8 File transfers

When you transmit or receive files in the Terminal, it will
automatically set the line parameters to no parity, eight data
bits and one stop bit. Once the transfer is completed, the line
parameters will be reset to whatever values they had prior to the
transfer.


10.9 On-line timer

The on-line time displayed in the Options, , menu shows
the elapsed time of the current connection in hours and minutes.
It is not intended as a precise mechanism for cost calculations,
etc. but will give you a rough estimate of the time you have
spent on-line.


11 Miscellaneous

This chapter contains functions and options that are global to all
programs in FrontDoor.


11.1 Destination of messages

When you are prompted for an address and/or SysOp name for a
message, you can use the look-up function. This is true for both
the Mailer, the Editor, and the Terminal. The Editor only allows
you to use the look-up function for messages written in the
NetMail folder.

You do not have to use the look-up function, of course. You can
enter a short form address, such as 10 (for node 10 in your own
net), .1 (for point one in your own point net) in which case the
SysOp's name is taken from the nodelist data. This is one of the
most flexible functions in FrontDoor.


11.1.1 Name lookups

If you specify "Homrig" as the destination, you will be
prompted to select from a list of all users with a last name
matching "Homrig" (Homrighausen for example). The network
address will also be taken from the name you select.


11.1.2 Address browsing

To enter the address browse mode, specify an incomplete
address, such as "2:?", "2:270/?" or "2:270/17.?". You can
then browse through all zones, regions, networks and
pointlists known to your system.

If you press (and the input field is blank) when you
are prompted for an address, you will be placed in browse
mode in your own net.

76



11.1.3 Address macros (NAMES.FD)

You can also create a file containing short names which
expands into a full address/SysOp name. The macros are
located in a file called NAMES.FD which must be placed in the
SYSTEM directory. The format of NAMES.FD follows:

,,
[,]

ALIAS The name you want to use for the macro.

USER NAME The name you want FM to place in the TO: user
name field.

ADDRESS The network address you want as the destination
when using the macro.

SUBJECT The fourth and optional parameter can be used to
insert a default subject in FM and also in the
"File(s):" field in FD when using the "Mail
services" options "Request files" and "Transmit
files".

E.g. oci,James Smith,1:132/300
am,AreaMgr,2:512/1,MyAreaMgrPassword
joho,joaquim homrighausen,2:270/17
jd,Jon Doe,9:333/111

Would allow you to place "*oci", "*am", "*joho", and
"*jd" anywhere you are prompted for a network address or
user name, including carbon copies (CC).

A special format can also be used to automatically address
messages to UUCP and INTERNET gateways. By putting a
commercial at character (@) as the first character of the
user name field (second field), you indicate to FM that the
macro should receive special treatment.

E.g. dn,@INTERNET/[email protected],2:241/999

Would place "INTERNET" in the message header's
TO: field and address the message to 2:241/999.
On the first line of the message text, it would
put "TO: [email protected]".

If no forward slash (/) is found in the user name
field (where "INTERNET" is above), the Editor
defaults to putting "UUCP" in the message
header's TO: field.

This cannot be used for carbon copies (CC).







77



12 File Requests

This section will explain and discuss the various aspects of File
Requests. There are two types of Requests, File Request and Update
Request. The latter is basically a File Request that triggers a
mechanism to only send the requested files if they are more recent
than those found on the requesting system. Two basic terms have to be
explained and understood:

Outbound Request

A File or Update Request created and transmitted by your system
to another, remote, system.

Inbound Requests

A File or Update Request transmitted by another system to your
system.

There is no mechanism in the Mailer to control how an outbound
Request is treated by the remote system. The Mailer strictly deals
with controlling the access to and security of your system (inbound
Requests).


12.1 Outbound Requests

When you want to Request one or more files from a remote system,
you may do so using several different methods:

1. By using the Editor and entering a message with File or
Update Request status. The files you want to request from
the remote system are listed on the subject (Re:) line of
the message and you set FilReq or UpdReq to indicate that
the Mailer should give the message special treatment.

2. By using the Mailer's temporary mail services, which are
accessed with from the main menu. Whether or not
the Request is treated as an Update Request or File
Request is determined by how you specify the filename(s)
in the File(s): field. If you include a path, the Mailer
will treat it as an Update Request, otherwise, it will be
treated as a File Request.

Requests created this way will not remain if the Mailer
terminates (for one reason or another) as they are
intended for temporary, quick and dirty, purposes only.

3. Use a robot utility, such as XRobot, to create the File
or Update Request message(s).

Note that an Update Request with no matching target, that is, you
have attempted to Update Request a file that does not exist on
your system, is automatically converted to a File Request.




78



12.2 Requesting files with a password

Since files and directories can be protected with passwords, it
may be necessary for you to present a password in order to
request certain files from a remote system.

To add a password to an outbound File or Update Request, you
simply put the password preceded by a space character and a '!'
character. Ie. !. Regardless of whether you
are creating the Request with the Editor or from the Mailer's
Request function, this is the format used to specify passwords.


12.3 Update Requests

As mentioned before, an Update Request is really a File Request.
The difference is that an Update Request is used to "update" a
file that already exists on your system. The mailers accomplish
this by transmitting the date and time of the existing file, the
system that processes (receives) the Update Request then compares
this with the requested filemask and sends any matching file that
has a later date and time.


12.4 Inbound Requests

You can control which directories should be accessible from the
"outside world" during a Request. This is accomplished by telling
the Mailer which directories should be searched for matches. How
the Mailer handles inbound Requests depends on how you have
configured the Mailer > File requests section in FDSETUP.


12.4.1 Request modes

There are three different modes which decide how the Mailer
treats a Request from a remote system. This is configured in
the Mailer > File requests > Request limits section in
FDSETUP.

1. Anyone can request. This means that the Mailer will
allow any system to Request files from your system,
subject to event behaviors and other modifiers.

2. Systems in nodelist can request. Similar to (1), but
the Mailer will only process Requests received from
systems that are listed in your nodelist database.

3. No requests. Forces the Mailer to ignore any received
Requests, effectively disabling the ability to
request files from your system.







79



12.4.2 Directory listings

The directories that the Mailer search during an inbound file
request are configured in the Mailer > File requests >
Filenames section of FDSETUP. Two files can be specified.
Each file is a plain vanilla ASCII file with one directory
(complete path) per line; this is NOT a filemask. All files
in the specified directories will be available for file
request. No other directories than those specified in these
files will be searched.

>>> The "List" file is searched during unsecure sessions
(i.e. those with systems that there is no session level
password for). The "SecList" file is searched during
secure sessions. This allows you to have different files
available depending on whether or not the session is
password protected. If no "SecList" file has been
specified, the Mailer will use the "List" file.


12.4.3 Alias listings

Alias files are used to set-up something often referred to as
"Magic filenames". That is, the requesting system requests a
specific name that expands into one or more files. The alias
files are scanned before the list of requestable directories
(see above), and if a match is made, the Mailer does not
search the other lists. The two alias files are configured in
the same section as the list of requestable directories.

The alias file is a plain vanilla ASCII file with one alias
definition per line.

E.g. FRODO C:\FILES\FRODO\FDKIT.ARJ
XR C:\FILES\FRODO\XROBOT.ARJ
RA C:\FILES\RA\RA*.ARJ
MYSECRET C:\TEST1.ARJ C:\TEST2.ARJ

The remote system can request FRODO, XR, RA, or MYSECRET and
get the above specified files. Files listed as alias names do
not have to be located in requestable (see above)
directories.

Just like you can specify different requestable directories
depending on whether or not the session is password
protected, you can specify two separate alias files.


12.4.4 Response message

In the event that the Mailer cannot satisfy a file or update
request for one reason or another, it will return a message
to the requesting system telling it why the request(s) could
not be satisfied.




80



If you have specified a filename for the Message option,
under Mailer > File requests > Filenames, the Mailer will
attempt to open the specified file and append its contents to
the end of the automatically generated response message.


12.4.5 Limiting Requests

You can choose to place a limit on how many files, how many
kilobytes, and/or how long a request may take. This allows
you to fine tune your system for maximum efficiency. The
request limits are configured in the Mailer > File requests >
Request limits section of FDSETUP.

Stop after first match

Prevents the Mailer from searching all requestable
directories as soon as one match has been made for a given
request.

Maximum match (files)

The maximum number of files your system will send during one
Request session. If the remote system requests an alias
filename that expands to two files, the request is counted as
two files. A setting of zero disables this feature.

Maximum time (minutes)

The maximum time the resulting files of a request may take to
transfer. Before sending each file, a check is made to see if
sending the file will cause this limit to be exceeded. If so,
the file is skipped and the next file in the list will be
checked. A setting of zero disables this feature.

Maximum size (KB)

The maximum amount of data your system will send during a
request session. Note that if the remote system requests an
alias filename that expands into two files, the size of both
files is checked. A setting of zero disables this feature.

Minimum speed (BPS)

The minimum baud rate required to allow Requests. If the
current connection is at a lower speed, Requests will not be
honored.


12.4.6 Limited hours

You may also choose to limit the access of your request
functions to certain days and certain hours of those days.

Limited

Enables limited hours.

81



Start

The time of day when your system should start honoring
Requests. This setting can only be changed if the Limited
hours option is enabled.

End

The time of day when your system should stop honoring
Requests. This setting can only be changed if the Limited
hours option is enabled.

Days

Defines on which days your system will honor requests.


12.4.7 Event restrictions

Ultimately, whether or not your system will honor requests is
controlled by the current event's behavior. If the Allow file
requests option for an event is set to NO, requests will not
be honored.


12.4.8 Protecting files and directories

You may want to protect access to certain files and
directories, just like another system may require you to
present the proper password to request one or more files. See
"Outbound Requests".

The Request Manager in FDSETUP is used to protect Inbound
Requests.

Filename/Directory

Defines the filename/directory you want to protect. This
is NOT an exclusive name. If you set this field to
C:\HIDDEN\ and define a password, all Requests that
result in files being sent from C:\HIDDEN\ are protected.
If you set this field to MYSECRET.ARJ and define a
password, the file MYSECRET.ARJ will only be sent if the
requesting system presented the proper password.

Password

Defines the password for the specified file/directory.
The requesting system have to present this in its request
to get the file(s). These passwords are treated case
insensitive.

Entries with inactive status in the Request Manager are
ignored by the Mailer. Note that Alias definitions can also
be protected by placing the name of the Alias definition in
the Filename/Directory field.


82



<+> 12.4.9 Request processor

A request processor is basically a slide-in replacement for
the Mailer's internal code to handle file requests. The main
difference is that it is an external program and can thus be
easily replaced and updated. Other advantages include being
able to access proprietary file database formats used by some
BBS packages, and to handle searches for files located on CD-
ROM drives which are notoriously slow if you access them
directly.

The Request processor is configured in the Mailer > File
requests > Request processor section of FDSETUP. The Name
field is the program to invoke (i.e. the name of the request
processor) and any parameters it may require. Several macros
can be specified to give the request processor access to some
of the Mailer's internal variables and data. The Enabled
field simply determines if the Mailer should call the request
processor or if it should handle file requests internally.
The Swapping option determines if the Mailer should swap its
program image out of memory prior to invoking the request
processor.

The available macros are described in the FrontDoor
Developer's Kit (FDDEV) and the specific macros you have to
use with the request processor should be covered by its
documentation. There are at least two request processors
available for FrontDoor at the time of publication; one works
with the Maximus BBS software and the other with
RemoteAcccess 2.x.


13 Swapping

Both the Editor and the Mailer require over 220 KB of RAM. If you
shell to DOS, or load another program from the Mailer, this memory is
not available for other programs. You can therefore force the Editor
and the Mailer to swap their program image to disk or EMS/XMS memory.
If you have specified that you want the programs to use XMS/EMS
memory for swapping but there is not sufficient XMS/EMS memory
available, the swap image is written to disk. The swap file is placed
in the SYSTEM directory and removed when you return to the program.

If you enable swapping for the Mailer, it will be swapped out when
you invoke a DOS shell and when you invoke other programs. The Mailer
swap setting also affects the Terminal. The Terminal will not flush
its scroll-back buffer to disk if any type of swapping is enabled for
the Mailer.

Once the swap image has been created and written to XMS/EMS memory or
a disk file, all memory used by the program is freed except between
three and five KB which will always remain in memory.






83



13.1 Complete path specifications

To avoid problems when you enable swapping, it is recommended
that all the filename and directory specifications under Global >
Filenames in FDSETUP contain complete path specifications,
including a driver specifier.

If you choose to swap to a disk file, it is further recommended
that you specify a complete path to where you want the swap files
to be placed (Global > FileNames > Swapping).


13.2 Loading programs in a DOS shell

Make sure that you do not load any TSR (Terminate and Stay
Resident) programs, such as DOS' PRINT and SideKick, when you are
in a DOS shell. Failure to follow this advice may lead to system
lockups when you attempt to return from the DOS shell.


14 CRT environments

All programs in the FrontDoor package are screen environment aware
and most of them can adjust to most (if not all) screen sizes as long
as the current screen mode has 80 or more columns (horizontally).

If you have an EGA or VGA card that allows you to set the screen mode
to something like 132x28 and you want to use this in the Editor, the
Mailer, or the Terminal, you should specify that you want the AUTO
screen mode for that particular program. This will prevent it from
altering the screen mode.

Please note that if you run the Mailer in AUTO mode, you must run the
Editor and the Terminal in AUTO mode as well, if you plan to invoke
either from the Mailer (and not just from DOS). Otherwise, the Mailer
will display garbage on the screen when you return from the Terminal.
The opposite (running the Terminal in AUTO and the Mailer in 25 or
43/50) is, however, properly handled.

<+> The registered version also allows you to use an alternate mode
referred to as Custom, which allows you to specify the exact register
parameters to the INT 10H Video BIOS call. Refer to the documentation
for your video adapter for further information.


15 Message Status Bits

Message status bits determines how the Mailer will treat outbound
(outgoing) messages and how the Editor will treat locally destined
messages. The Message status menu is accessed by pressing in
the Editor and is also displayed when entering a new message and
changing the subject of a message.






84



The keys listed refer to the status menu in FM.

Private

Indicates that the message should only be read by the addressee.

Crash

High-priority mail. Messages with crash status can never be routed or
held by a route file (see Mail routing). Crash messages do, however,
NOT override any cost restrictions for an event; they also require
that the destination system has been qualified before the Mailer will
call it.

Hold

The hold status will force the Mailer to ignore the message unless
the destination system calls your system to pick up its mail. If the
message is destined for a point system and the boss of the point
system calls your system, the message will be given to the boss
unless the message also has Direct status.

File

Indicates that the message has one or more files attached to it. The
files are listed in the subject (Re:) line. File attach messages can
be routed and held unless another status bit (Crash, Immediate, Hold,
etc.) prevents it. The default treatment of a file attach message is
to send it directly to its destination.

File request

Indicates that the message is a File Request. The requested files are
listed in the subject line and may contain wild-cards characters.
File request messages can be held, but are never routed. See "File
Requests".

Update request

Similar to a File Request, but the subject line (Re:) must contain
valid (existing) file specification(s). When the Mailer connects to
the destination system, the requested files will only be sent by the
remote if they are more recent than the matching files on your
system. See "File Requests".

Kill/sent

Removes the message after it has been sent or picked up. If the
Kill/Sent status is not set on a message, it will be marked as sent
after it has been sent or picked up.

Trunc/sent

Truncates the attached files to zero length after they have been sent
or picked up. This option is only valid for file attach messages.



85



>>> Note that it is nearly impossible to recover a truncated file so
use this option with caution.


Delete/sent

Removes the attached files after they have been sent or picked up.
This option is only valid for file attach messages.

Direct

Similar to the Crash status, with the difference that they can be
held. Messages with the Direct and Hold status combined require that
the destination system (including points) call in to pickup their
mail.

Immediate mail

Similar to the Crash status, but messages with immediate status will
be sent at the first opportunity, ignoring all restrictions and
qualifications. If there is one or more messages with immediate
status to a system, all other messages (except those with hold
status) to that system will be added to the mail packet. USE THIS
OPTION WITH CAUTION!

Lock

Locks a message from further access. This is done by setting the DOS
attribute to read-only and adding a special flag to the message text.
The Mailer and most other utilities will ignore message files (.MSG)
with read-only attribute.

Messages with lock status cannot be removed by any of the purge
functions and will never be sent (or picked up). The Editor can,
however, renumber a folder containing one or more messages with
locked status.

Sent

Indicates that the message has been sent or picked up by the
addressee. Once a message has been flagged as sent, they cannot be
sent or picked up by the addressee.

No status

Clears all status bits. This is actually a toggle. I.e. if you press
once, the Editor will remove all status bits (except the
Local bit), if you press again, the Editor will restore the
previous status bits.


16 Mail routing

This is one of the most complex parts of FrontDoor and takes
considerable time to learn and understand. Make sure you understand
how each routing verb affects mail routing before you use it.



86



When the Mailer is brought up, it scans for any active events and
when one is found, opens the route file, ROUTE.FD, and uses it to
determine whom to send mail to, and how to send it. The route file
must be placed in the SYSTEM directory. If the timestamp of the route
file is modified, the Mailer will detect it and rescan the NetMail
folder (see "Semaphores").

Global routing commands are those that appear before any SCHEDULE
keyword in the route file. They are always used, so you can specify
routing that is identical for all your events here.

Local routing commands are those that appear between two SCHEDULE
keywords (a "Schedule block") in the route file. the Mailer
determines which schedule block to use by searching for a schedule
keyword with a tag (letter) matching the current event tag (see
"Events").

Several references are made to Hold status in this chapter. Do not
confuse this with the HOLD command. The Hold status refers to the
message status bit (see "Message Status Bits"), or where stated, to a
system's nodelist status.

The Mailer allows you to insert comments in your route file. Every
line with a semicolon as the first non-space (TAB/Space) character is
treated as a comment. While comments may seem inadequate at first
glance, it is a very useful function. Going back to a route file you
wrote five months ago may not be your definition of spending a
weekend in joy and happiness.

Addresses specified in the route file should always be fully
expressed. The * macro (implying "ALL") is supported. You can also
use any combination of nodelist flags to specify a range of systems.
The routing language is case insensitive (case does not matter).
SCRIPT, SCripT, and scRIPt are all treated as the same command.


16.1 Default routing

The Mailer has several default rules for routing that will be
used if no other rules have been defined for a specific system.
Some of the default rules cannot be overridden by routing
commands.


16.2 Message status

Messages with immediate (IMM hereafter), Crash, File/Update
Request, and Direct status will normally not be routed. They are
sent directly to the destination system, with the exception of
systems without a telephone number, as described later.

Messages with IMM or Crash status can never be held by using the
HOLD command. Messages with Crash status can, however, be
prevented from being sent by event behavior, qualification lists,
and cost restrictions.



87



Messages with Hold status will NEVER be packed into a mail
packet. They can always be picked up by the destination system
(unless they also have Lock status). Messages to points with Hold
status can and will be picked up if the Boss of the point calls
to pickup mail, unless the message also has Direct status.

Messages with IMM status will always be packed into mail packets,
overriding event restrictions. If you have a message with IMM
status, the Mailer will add all other qualifying messages to the
same system to the same mail packet.

Messages with Rcvd (read), Orphan, Lock, and/or Sent status are
ignored by the Mailer.


16.3 Host/Hub/Boss routing

Messages not otherwise prevented from being routed will by
default be sent to the destination system's Host (see "Nodelist")
if the destination system is outside your own net and to its Hub
if it is within your own net.

If you have mail for a system listed as DOWN in your nodelist
database, it will never be packed. If the system calls your
system to pick up mail, it will receive its mail.

If you have mail for a system listed as HOLD or PVT (no telephone
number) in your nodelist, the default behavior is to send the
mail via the system's Host, Hub, or Boss. If the mail to a HOLD
or PVT listed system contains file attaches, the mail packet will
by default be placed on hold for the Host/Hub, or go directly to
the Boss in the case of a point.

Messages to systems not in your nodelist (unlisted systems) will
not be Host/Hub routed by default, but they can be explicitly
routed.

Messages with Crash, IMM, or Direct status, destined for points
to which the Mailer cannot place a call directly will retain its
status (and restrictions), but the Mailer will instead assume the
point system's Boss as the destination.


16.4 Qualifying systems

Before the Mailer will send mail to a system, it must be
qualified by specifying its address, or a macro that includes its
address in a SCHEDULE block (this is not true for IMM mail as
previously described).

You can qualify a system by placing a SEND-TO command in the
global section of a route file, but this is NOT RECOMMENDED.
SEND-TO, POLL and the optional SEND-LIST after a SCHEDULE command
are the only available methods to qualify a system for mailing.




88



If the Mailer cannot find ROUTE.FD, mail to all systems will be
put on hold for the destination system to call in and pickup its
mail.


16.5 Route commands

SCHEDULE [SEND-LIST]

Defines the start of a schedule block. All commands following a
SCHEDULE command are considered a part of the same block until
another SCHEDULE command is encountered.

TAG is a letter corresponding with the event tag, defined in
FDSETUP (see "Events"). You should only have one schedule block
per defined event tag.

The optional SEND-LIST parameter should contain the systems to
qualify for the event.

SEND-TO

Qualifies the specified systems. This is identical to the
optional SEND-LIST after the SCHEDULE command.

HOLD

Hold mail for the specified systems.

UNHOLD

The opposite of HOLD. Useful if you have used the HOLD command in
the global section and want to negate the effect of those for one
or more systems.

NO-ROUTE

Send mail to the specified systems directly. This overrides the
default routing rules. Some logics is applied to "directly" when
using the NO-ROUTE command. Systems which the Mailer cannot mail
directly will be sent "as directly as possible".

E.g. if includes a system listed as PVT (no telephone
number), the Mailer evaluates the "NO-ROUTE" as "NO-ROUTE this
message to the system's nearest Host/Hub".

DIRECT

Unconditionally send mail to the specified systems directly (you
can still place it on hold by using the HOLD command). No implied
logics is applied to this command, and if the Mailer cannot call
the specified systems, the resulting mail packets are placed on
hold automatically. Note that a system must still exist for this
to apply. If a system that is included in a DIRECT does
not exist, the message will be stamped "Orphan" and not included
in a mail packet, but it can still be picked up by the
destination system.

89



ROUTE-TO

Route mail (excluding file attach messages) for the specified
systems via TARGET. This automatically implies "NO-ROUTE
", i.e. the target system's mail will not be routed
through another system, even if so previously stated.

HOST-ROUTE

Route messages, not otherwise prevented from being routed, for
the specified systems through their Host system.

HUB-ROUTE

Route messages, not otherwise prevented from being routed, for
the specified systems through their Hub system.

ROUTE-FILES

Route file attach messages (and normal mail) for the specified
systems through TARGET. This automatically implies "NO-ROUTE
", i.e. the target system's mail will not be routed
through another system, even if so previously stated.

You should ask the SysOp of the TARGET system if he allows you to
route files through his system before using this command.

POLL

Force the Mailer to call the specified systems even if there is
no other mail destined for them. This does not effect the routing
of existing mail destined for the specified systems. The POLL
command unconditionally qualifies a system for mailing. Each
system in LIST will only be called once. If an event is
restarted, the Mailer will not call systems that it has already
polled.

EXCEPT

Specifies an exception to the LIST of the previously used
command.

FORWARD-FOR

Tells the Mailer that you allow the specified systems to send
mail (excluding file attach messages) through your system. Note
that this does not place any restrictions of the destination of
the forwarded mail.

FORWARD-TO

Tells the Mailer that you allow mail (excluding file attach
messages) to be forwarded through your system ONLY if it is
destined to any of the specified systems. This is a more secure
alternative to the FORWARD-FOR command.



90



FILES-FOR

Identical to FORWARD-FOR, but for file attach messages.

FILES-TO

Identical to FORWARD-TO, but for file attach messages.

DENY

Allows you to prevent the specified systems from picking up
waiting mail. The Mailer will still accept incoming mail from the
specified systems. This can be used to prevent local (or other
low-cost) systems from picking up their mail in national mail
events, etc.

SCRIPT