NFU and DOOR32.SYS under ProBoard for DOS

The following was written by Mike Ehlert and John Riley, Sr.

NetFoss Utilities for Win32 Doors version 1.14

NFU allows DOS BBS software using NetFoss to run Win32 doors. NFU currently has three functions:

1. Builds a DOOR32.SYS drop file, needed by most Win32 BBS Doors. It does this by reading user data from the DOOR.SYS drop file, and also reading the Telnet Socket Handle from the Windows Environment Variable

%SOCKET%.

2. Allows a Win32 application to run from a DOS BBS Shell, which must be passed on the NFU command line.

3. It has an option to also pass keystrokes to the Console when the door launches, but this does not work for non-Console GUI doors. This can be useful for doors that ask if ANSI is supported, or asks the user for their name. It can also be used to allowing a DOS BBS to shell to a Win32 BBS that uses the same userbase.

NFU [path to DOOR.SYS] ["Door Command line + parameters in quotes"] <Opt par>

Examples:

NFU c:\proboard\node1 "c:\proboard\dark32\dark32.exe /n1"
NFU . "c:\proboard\dark32\dark32.exe /n1" (dot uses current directory)

Shortcuts:

$ - Replaced by path+\ only of DOOR32.SYS
^ - Replaced by path+\filename of DOOR32.SYS

Optional parameters:

/Q - Quiet Mode: No console output except for error messages
/R - RIP Enable: Without this, RIP Emulation in DOOR.SYS is ignored
/YN - Send Yes/No character to a door that asks user if they have ANSI
/K="x" - Stuff keyboard buffer with one character or a string of characters
Keyboard macros: |=Enter, !N=User Name, !A=User Alias, !P=Password

The second parameter can be a batch file (.BAT or .CMD), or an executable. Keyboard macros are case sensitive.

IMPORTANT INSTRUCTIONS

If you are using Net2BBS version 1.14 or later then skip the next two steps and continue on to the the “Adding your DOOR32 to your BBS” section. Net2BBS 1.14 and later automatically updates the %SOCKET% environment variable with the Telnet Socket Handle.

Changes to your telnet server command line:

If your current telnet server command line may look something like this:

Command=c:\netfoss\nf.bat /n*N /h*H c:\pb\proboard.bat *N

As you can see, the BBS batch file (in this case proboard.bat) is only being passed the node number, (using the *N macro) which it will be able to be accessed as variable %1 since it is the first parameter passed.

You will need to change the command line to also pass the Socket Handle (using the *H macro), as the second parameter being passed to proboard.bat, so it will be accessible as variable %2.

The new telnet server command line will look like this after the change:

Command=c:\netfoss\nf.bat /n*N /h*H c:\proboard\proboard.bat *N *H

Changes to the BBS batch file:

Add the following line to proboard.bat before it runs the BBS software:

set SOCKET=%2

This will store the socket handle into the environment variable %SOCKET%, which can later be accessed by NFU so the socket handle can be placed in the DOOR32.SYS drop file it creates.

Adding your DOOR32 door to your BBS:

In order for a DOS BBS to run a Win32 Door, the Door command line or batch file must be passed through NFU on the second command line parameter shown above. The Door command line must be contained within quote marks to allow spaces between any passed parameters.

Below are setup examples for the following 32-bit Windows doors:

BBSLink

MannIRC

LORD32

Darkness

DoorMud

Ambroshia

Pimp Wars

Jezibel

Food Fight 2004