home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
OS/2 Shareware BBS: 3 Comm
/
03-Comm.zip
/
bgfax147.zip
/
BGFAX.DOC
< prev
next >
Wrap
Text File
|
1995-05-02
|
98KB
|
1,934 lines
DON'T FORGET TO LOOK AT THE "READ.ME" AND "WHATS.NEW" FILES!
=======================================================================
Voice B.J. Guillot Data/Fax
+1 713.893.9320 2611 Rushwood Circle +1 713.893.9124
Houston Texas 77067-1941
Copyright (C) 1993-1995 B.J. Guillot. All Rights Reserved.
=======================================================================
BGFAX 1.47 MON 2 MAY 95
=======================================================================
Dedicated to Gene Roddenberry
1921-1991
"Let's make sure history never forgets the name, ENTERPRISE."
-- Captain Jean-Luc Picard. Star Trek: The Next Generation.
"...Humans and aliens wrapped in two million, five hundred
thousand tons of spinning metal, all alone in the night..."
-- Commander Sinclair. BABYLON 5.
-------------------------------------------------------------
ABSTRACT
-------------------------------------------------------------
* Allows sysops to receives faxes on their BBS telephone line
without needing a fax switch box and real fax machine
* Everything runs in the foreground, no TSR programs needed
* If you are already running a Fido mailer, you can configure
your mailer to exit and run BGFAX when the line is hot, thus
BGFAX does not necessarily have to answer the phone itself
* Comes with a small and quick fax viewing program that supports
CGA, EGA, VGA, and VESA SVGA display modes as well as options
for fax printing and FAX-to-PCX conversion
* Works with modems that offer a feature known as adaptive
answering on Class 1, Class 2, Class 2.0 and ZyXEL fax modems
* Can send faxes via the command line and return status by
errorlevel; fully configurable top of page banners on outgoing
faxes so that user names and phone numbers can be there
-------------------------------------------------------------
INCLUDED FILES
-------------------------------------------------------------
1. BGFAX.DOC -- general documentation, looking at it now
2. READ.ME -- read this
3. WHATS.NEW -- release notes
4. BGFAX.EXE -- the main DOS executable
5. BGFAX2.EXE -- the main OS/2 executable
6. HELPME.ARJ -- specialized help files for various setups
D'BRIDGE.TXT - general help for D'Bridge, Class 2
D'BR-USR.TXT - general help for D'Bridge and USR
FD202.TXT - general help for FD202, Class 2
FD212.TXT - general help for FrontDoor, Class 2
FD-HAYES.TXT - general help for FrontDoor, Hayes Class 1
FD-USR.TXT - general help for FrontDoor, USR
FD-ZYXEL.TXT - general help for FrontDoor, ZyXEL
IM229C.TXT - general help for InterMail, Class 2
IM-USR.TXT - general help for InterMail, USR
PCB1521.TXT - general help for PC Board, USR
WILDCAT.TXT - general help for Wildcat!, using /HOST
LORA240.TXT - general help for Lora/2, Class 2
MAXIMUS2.TXT - general help for Maximus/2, using /HOST
MDOOR102.TXT - general help for MainDoor/2, Class 2
PORTAL.TXT - general help for Portal of Power, Class 2
WAFFLE.TXT - general help for Waffle, using /HOST
GT18.TXT - general help for GT Power, Class 2
EZYCOM.TXT - general help for EZYCOM, using /HOST
WWIV.TXT - modification file for WWIV systems
7. VIEW.EXE -- fax viewing, PCX conversion, and printing
8. NFAX.COM --\ optional TSR utility to notify the user
9. FAXOFF.COM --/ if a fax has been received (DOS ONLY)
10. MAKEFAX.EXE -- converts PCX and ASCII files to ZFAX format
11. MAKEFAX2.EXE -- same thing, but for OS/2
12 BGFAX.FNT -- font file for MAKEFAX and MAKEFAX2
13. FNTEDIT.EXE -- font editor to make customized fonts (DOS ONLY)
14. BGFAX.CNF -- configuration file for /SEND, /HOST, /INIT
15. FBBS.BAT -- example batch file for using /HOST mode
16. FILE_ID.DIZ -- short abstract for bgfax
17. REGISTER.FRM -- registration form
18. REGISTER.NL -- dutch registration form for the netherlands
19. REGISTER.AUS -- australian registeration form
-------------------------------------------------------------
DISCLAIMER
-------------------------------------------------------------
BGFAX and accompanying files are provided AS IS without any
warranty, expressed or implied. This includes without limitation
the fitfulness for a particular purpose or application and any
warranties of merchantability. [Did you really understand that?]
While I tried to be as through as possible in preparing BGFAX,
B.J. Guillot shall not be liable for any damages, whether direct,
indirect, special, incidental or consequential arising from a
failure of this program or accompanying files to operate in a
manner desired by the user. B.J. Guillot shall not be liable for
any damage to data or property which may by caused directly or
indirectly by use of this program.
In no event will B.J. Guillot be liable to you for any damages,
including any lost profits, lost savings or other incidental or
consequential damages arising out of your use or inability to use
the program, or for any claim by any other party. Individuals using
the software bear all risk as to its quality and performance.
-------------------------------------------------------------
OBTAINING THE LATEST VERSION OF BGFAX:
-------------------------------------------------------------
FidoNet: 1:106/400 Voice: +1 713.893.9320
InterNet: bjg90783@jetson.uh.edu Data/Fax: +1 713.893.9124
1. Calling my BBS in the United States, +1 713-893-9124
2. TELNET/FTP/VMODEM address for my BBS is 198.65.189.2.
3. FidoNet FREQ of the magic name "BGFAX" from 1:106/400
(Beta copies are available under magic name "BGBETA")
4. FidoNet FREQ... The Netherlands... 2:512/39
The Owl's Nest is the Dutch Supra distributor and they
have three nodes:
+31 0.2155.10921 +31 0.2155.12571 +31 0.2155.28096
5. FidoNet FREQ... Austraila... 3:632/552
Hamish Moffatt, Cloud Nine, +61 03.886.5195
6. The Internet (fast) FTP site FTP.CSN.NET in directory /Computech
7. E-mail request for users that do not have FTP access...
Just send Internet e-mail to "bgfax-request@stat.com"
(Beta copes are available from bgfax-beta-request@stat.com)
To join the BGFAX mailing list, send Internet e-mail to
"listserv@stat.com" with the text "subscribe bgfax-list" as the
first line in your message.
-------------------------------------------------------------
MISCELLANEOUS NOTES
-------------------------------------------------------------
BGFAX does not offer printing for 9-pin dot matrix printers.
Epson LQ 24-pin dot matrix, Canon Bubble Jet, HP Desk Jet and
Laser Jets are supported.
If you need to print with a 9-pin printer, you will need to obtain
a copy of ZyXEL's ZFAX software (version 2.23 perferred) or Smith
Micro Software's Quick Link II, a commerical program included
with many fax modems.
Delrina format files (WinFax, DosFax) will NOT be supported do
to Delrina's refusal to release the WinFax file header format to
developers. [If you wish to see a copy of Delrina's fax, Fido
FREQ the magic name "DELRINA" from 1:106/400 or call my BBS and
download the file "DELRINA.ARJ".]
BGFAX supports Desqview's alternate video buffer zone, if used,
and will return ticks to other tasks. BGFAX also issues an
Interrupt 28h call every now and then for OS/2 time slices.
This program was compiled under Borland's Borland Pascal 7.0.
Modems that I have direct access to:
SupraFaxModem v.32bis (V1.80-02, Rockwell AC ROM)
SupraFaxModem 144 Express Plus
SupraFaxModem 288 V.FC (FLASH firmware, latest version)
SupraFaxModem 288 V.34 (FLASH firmware, latest version)
USR 28.8K V.Everything (FLASH firmware, latest version)
Hayes Optima 288 V.FC (V3.1 firmware)
Zoom Voice-Fax-Data Modem v.32bis (old piece of junk firmware)
SIERRA based 2400 data/9600 fax modem from Computer City
If you wish to put BGFAX in DEBUG mode (where it logs most of the
strings sent out and in from the modem in a DEBUG.LOG file), you
must set the following environment variable:
SET FAX=DEBUG
*************************************************************************
*************************************************************************
Things are going to get VERY confusing from this point on.
I suggest you uncompress the HELPME.ARJ file to get simple,
step-by-step notes on how to setup BGFAX with your particular
setup.
The following notes are just provided for your information.
If you don't know that much about modems, you probably won't
understand any of it.
Looking at the examples in the HELPME.ARJ file will help you
much more than trying to figure out how to setup BGFAX from
reading this document file.
*************************************************************************
*************************************************************************
-------------------------------------------------------------
TALKING WITH THE COM PORT
-------------------------------------------------------------
Introduction
~~~~~~~~~~~~
If you want BGFAX to answer the phone, you will be using BGFAX
in /HOST mode. In this case, BGFAX will get the com port
information from the BGFAX.CNF file. To specify COM2, a line
in that file must read "po=2".
If you are running PC Board, Spitfire, FrontDoor, Intermail or
any other software that has been designed to interface with
BGFAX only when the modem detects an incoming fax call, you
can use BGFAX in rear-end mode. In this mode, BGFAX gets the
com port information as a command line parameter. (BGFAX.CNF
IS NOT USED IN REAR-END MODE). To specify the use of COM2 on the
command line for rear-end mode...
bgfax /fax c:\bgfax 2 z
The /FAX command line switch is explained in detail later in
this document as well as the other possible switches that you
may need to use with your modem.
If BGFAX were running in /HOST mode, the following lines would
be EQUIVILANT to the "bgfax /fax c:\bgfax 2 z" example...
BGFAX.CNF rp=c:\bgfax { receive path }
for BGFAX /HOST: po=2 { com port number, dos }
p2=2 { com port number, os2 }
ft=z { fax type, ZFAX 2.23 }
Note that the actual BGFAX.CNF file contains many additional
lines, and they will be fully explained later in this document.
The additional lines in BGFAX.CNF are required because /HOST
mode does much more than rear-end mode. (/HOST mode has a
simple event manager, records Caller ID, tells the modem to
answer the phone, etc. Rear-end mode simply takes control of
the modem when your BBS or Fido software tells it to.)
Pop Quiz. How do I tell BGFAX to use COM1 ?
In /HOST mode, "po=1" is placed in the BGFAX.CNF file.
In rear-end mode, COM1 is specified by putting "1" as the
THIRD command line parameter. (bgfax /fax c:\bgfax 1 z).
1st 2nd 3rd
Putting an exclamation mark (bang) after the port will tell BGFAX
not to shift the DTE speed to 19200 when receiving a fax. (i.e.,
whenever you want to specify COM2, do as as "2!" instead of "2").
This is required on a very small amount of modems.
Non-Standard Ports (under BGFAX/DOS, BGFAX.EXE)
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
By default, BGFAX knows only the normal four com ports...
COM1 address 3F8 irq 4
COM2 address 2F8 irq 3
COM3 address 3E8 irq 4
COM4 address 2E8 irq 3
If you are using one of the above standard port configurations,
you can skip to the next section of the documentation.
However, if you are using a configurable serial card, you will
need to tell BGFAX the address and IRQ for your non-standard
port. If your I/O card has COM4 configured as follows...
COM4 address 2e8 irq 12
In this case, if you wish to use BGFAX with this non-standard
port, you must _tell_ BGFAX the address and IRQ. To do this,
instead of using "po=4", you will use "po=2e8x12".
Remember that each device in your computer should use a
different IRQ and address. IRQ sharing is risky and will cause
problems under DOS, OS/2 and Windows.
Standard and Non-Standard Ports (under OS/2, BGFAX2.EXE)
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Make sure you are using SIO 1.30 or higher.
Under OS/2, in the eyes of BGFAX/2, there isn't a such thing as
a "non-standard" port. If you have a COM7 for example, of ANY
address and IRQ, for /HOST mode, set "p2=7" in the BGFAX.CNF
file, and for rear-end mode, pass the number "7" as the third
command line parameter.
How does BGFAX/2 know what address and IRQ to use? BGFAX/2
does not have to know. BGFAX/2 will simply tell Ray Gwinn's
SIO.SYS to open "COM7", and SIO.SYS will use the information
you provided in OS/2's CONFIG.SYS to handle the port
operations.
You will notice that in /HOST mode, I said to use "p2=7". Is
that a typo? Shouldn't it be "po=7"? Not a typo. The "p2"
tells BGFAX that what follows is an OS/2 style port. Many
people may want to dual-boot between DOS and OS/2. Remember,
under OS/2, we didn't care what address and IRQ COM7 used.
But, under DOS, BGFAX.EXE will have no idea what port to use if
you simply had "po=7". So, we have two lines in the BGFAX.CNF
for the com port. One for DOS, and one for OS/2. Example:
po=278x12 { for BGFAX.EXE, DOS }
p2=7 { for BGFAX2.EXE, OS/2 }
In this case, our example COM7 actually used base address $278
and IRQ 12. Our OS/2 CONFIG.SYS line read...
DEVICE=C:\SIO.SYS (COM7,278,12,-).
If we were using a standard port, such as COM1, then both
"po=1" and "p2=1" in BGFAX.CNF.
OS/2 WARNING: Most people that I've talked to "lock" their
ports using SIO.SYS under OS/2. Unless you are using a ZyXEL
modem or USR V.34 Everything. If you are using an "average
Joe" modem like a Supra, if you lock your port at anything
other than 19200, you will have problems receiving faxes.
For example, let's say you have a Supra (or PPI, or Zoom, etc.)
and your CONFIG.SYS reads:
DEVICE=C:\SIO.SYS (COM2:57600,3E8,3,-)
^^^^^^^
BGFAX will attempt to receive the fax, but, at a specific point
during fax receive, the DTE speed _MUST_ be changed to 19200.
If this change does not occur, the fax receive will not work.
Since SIO is "locked" in at 57600, SIO will ignore BGFAX/2's
request for a speed shift. You have a few options:
1. If you are using a registered version of SIO, you must
tell SIO to UNLOCK the port before BGFAX loads. Example
BBS.CMD file:
@echo off
:start
OS2BBS.EXE
if errorlevel 255 goto fax
goto start
:fax
rem If using a USR or ZyXEL don't worry about SU.EXE
SU.EXE 2 LOCK 0
BGFAX2.EXE /FAX C:\BGFAX 2 Z
SU.EXE 2 LOCK 57600
goto start
The SU.EXE will only function with registered version
of OS/2. The "2 LOCK 0" means to UNLOCK port 2, so
that the application program (BGFAX2.EXE) will be able
to change the DTE speed at will. After BGFAX/2 runs,
we issue another SU.EXE line which relocks the port at
57600 for your BBS software.
I've seen many people that really distort my
instructions and do "SU 2 LOCK 19200" instead of "SU 2
LOCK 0". The "LOCK 19200" will NOT work, because, as
I've said before, the DTE must be shifted at the right
moment. If you do it yourself instead of letting
BGFAX2.EXE do it, you will not receive your fax.
2. If you are using an unregistered version of SIO, it's
best to lock your port at 19200. For a 14400 modem, a
19200 locked DTE speed is FINE. If your users
download pre-compressed ZIP and ARJ files like both BBS
users, they won't even notice the difference. If you
are using a 28800 modem, obviously, locking at 19200 is
not an valid solution.
3. If you are using an unregistered SIO, with a 28800
modem, you will need to leave the DTE rate at the mercy
of your BBS software. This usually doesn't work out
very well. I suggest you register SIO before
attempting to configure BGFAX/2.
If you are running BGFAX.EXE (DOS) under OS/2, there are a few
other things you need to worry about:
1. If your DOS-based BBS software requires a FOSSIL driver,
use VX00.SYS, which is included with SIO. DO NOT
ATTEMPT TO USE THE 'REAL' X00.SYS OR BNU.SYS. That
will cause you nothing but trouble. (I've gotten some
calls saying that the opposite is sometimes true. Now,
I don't know what to think. :-)
2. If you try to /SEND faxes under OS/2, you _MUST_ use
BGFAX2.EXE in an OS/2 box. The way SIO.SYS handles
XON/XOFF communications in a DOS box will prevent the
DOS-based BGFAX.EXE from sending faxes properly. Or,
you can use the /HW switch at the end of the BGFAX/DOS
command line to use hardware (CTS) flow control.
3. If you are using BGFAX.EXE (DOS) under OS/2, make sure you
are using the "DEVICE=C:\VSIO.SYS" line in your CONFIG.SYS.
Also, make sure you are using the dash ("-") option on the
SIO.SYS command line.
DEVICE=C:\SIO.SYS (1,,,-) (COM2,3E8,3,-)
DEVICE=C:\VSIO.SYS
FOSSIL drivers (under DOS, without DesqView)
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
It is always best to let BGFAX talk directly to the port, even
if you have a FOSSIL driver loaded. BGFAX will not care that
the FOSSIL driver is loaded. It will default to talking
directly to the port.
If for some reason, BGFAX is unable to directly talk to your
com port using direct communications, you may want to tell
BGFAX to try and _use_ the FOSSIL driver. See the next section
(FOSSIL drivers, under DOS, with DV) for instructions on
telling BGFAX to _use_ the FOSSIL.
FOSSIL drivers (under DOS, with DesqView)
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
I have seen many problems that occur when people are using FOSSIL
drivers under DV. The problems only seem to occur if you are
using both FOSSIL and non-FOSSIL applications. If all your
applications are FOSSIL, or all non-FOSSIL, things seem to work
fine. So, if your BBS or Fido Mailer requires the use of a
FOSSIL driver, AND YOU ARE RUNNING UNDER DESQVIEW, in this
case, it is best to tell BGFAX to _use_ the FOSSIL driver.
If you must make BGFAX _use_ the FOSSIL driver, e.g. the FOSSIL
for COM2, in the BGFAX.CNF file, a "po=F2" would be specified.
TELLING BGFAX TO _USE_ THE FOSSIL DRIVER IS NOT RECOMMENDED
UNLESS YOU ARE RUNNING UNDER DESQVIEW AND YOUR BBS PROGRAM,
FIDO MAILER, AND DOORS ALL REQUIRE THE USE OF A FOSSIL DRIVER.
Many people that use FOSSIL drivers lock their port at a
specific DTE speed. This will cause problems with BGFAX.EXE
since BGFAX must change the port speed at a specific point
during the fax receive. You have a few options...
1. Do NOT lock the FOSSIL, and hope that your BBS or Fido
Mailer software is correctly able to set the speed.
This isn't really that good of an option due to the
nature of the FOSSIL drivers and high speed modems.
(WE REALLY NEED TO MAKE AN UPDATE TO THE FOSSIL
STANDARD SINCE THEY WERE DESIGNED WHEN 19200 WAS
CONSIDERED THE FASTEST WE WOULD EVER NEED.)
2. If you are using a 14400 modem, you can lock the port
at 19200. If you are using a 28800 modem however, you
have to try option 3...
3. You can use the FOSSIL utility program to manually
unlock the port before BGFAX.EXE loads. Here is an
example using X00 and BNU on COM2. (We refer to the
port as "1" since FOSSIL drivers can't count right.)
@echo off @echo off
rem X00 example rem BNU example
:start :start
fosbbs.exe fosbbs.exe
if errorlevel 255 goto fax if errorlevel 255 goto fax
goto start goto start
--> XU.EXE LOCK:1:OFF BNU.EXE /L1=0
BGFAX.EXE /fax c:\bgfax F2 z BGFAX.EXE /fax c:\bgfax F2 z
--> XU.EXE LOCK:1:38400 BNU.EXE /L1=38400
goto start goto start
If you are having trouble when trying to /SEND faxes under DV,
make sure that "Optimize Communications=YES" in the DV config.
-------------------------------------------------------------
RECOMMENDED INITIALIZATION AND ANSWER STRINGS
-------------------------------------------------------------
This section tells you the recommended initialization and answer
strings for your modem. It will not tell you what the commands
do. Look in the "Quick tutorial" section to find that out.
MAKE SURE YOU ARE _NOT_ USING THE AUTO ANSWER FEATURE OF YOUR
MODEM. Auto answer tells the modem to answer (by itself) on X
number of rings. We want to be able to send the modem special
commands when the phone rings, so auto answer will not want to be
used. (Auto answer should never be used in a BBS environment,
anyway.) Make sure that auto answer is disabled by checking to
see that the S0 register is set to 0. (S0=0).
The "pipe", or |, is used at various places in the following
section. The | simply means a carriage return is to be sent
after typing that line. i.e., if you were in terminal mode,
"ATZ|" would mean press "A", "T", "Z", then "ENTER".
If the software is smart, it SHOULD wait for an "OK" to come
back from the modem before sending the next next string.
Unfortunetly, most software I've seen is dumb and tries to
rapid-fire the init strings to the modem without waiting for
an "OK". :-(
Class 2 modems (Supra v.32bis, PPI, Zoom, etc.)
Init-1 ... ATZ|
Init-2 ... AT+FCR=1;+FDCC=1,3,0,2,0,0,0,0|
Init-3 ... AT+FLID="713 555 1212"|
Answer ... AT+FAA=1;A|
Dial ..... ATDT
Class 2.0 modems (USR 28800 V.Everything)
Init-1 ... ATZ|
Init-2 ... AT+FCLASS=2.0|
Init-3 ... AT+FLI="713 555 1212"|
Answer ... AT+FCLASS=2.0|~AT+FAA=1+FNR=1,1,1;A|
Dial ..... AT+FCLASS=0DT
Class 1 modems (Hayes Optima 288, Supra 144LC)
Init-1 ... ATHZ|
Answer ... AT+FCLASS=1|~AT+FAE=1;A|
Dial ..... AT+FCLASS=0DT
ZyXEL modems (ZyXEL E, S, E+, S+, etc.)
Init-1 ... ATZ|
Init-2 ... AT#P713 893 9124
Init-3 ... AT#B1+FCLASS=6|
Answer ... ATA|
Dial ..... ATDT|
-------------------------------------------------------------
QUICK TUTORIAL ON FAX COMMANDS AND ODDITIES
-------------------------------------------------------------
Skip this section if you do not care about the internal
workings of fax modems...
AT+FCLASS=?
===========
This command asks the modem to tell you what fax classes it
is compatible with. It will respond with something like:
0,1,2 or 0,2 or 0,1,2.0 or 0,2,6 or 0,1,2,6 or 0,2,2.0,6 or ERROR
0 = Data
1 = Fax Class 1 capable
2 = Draft Fax Class 2 "compatible" (TR29.2)
2.0 = Fax Class 2.0 capable
6 = ZyXEL or Rockwell voice mode compatible
ERROR = no fax capabilities
GROUP and CLASS
===============
Many people are often confused between the terminology "GROUP" and
"CLASS" with regards fax modems.
ALL FAX EQUIPMENT is "GROUP 3" compatible. This includes fax
machines, fax modems, standalone PC fax cards, etc. Group 3 just
defines the fax specifications, e.g., black-and-white, the
resolutions, etc.
"CLASS" refers only to fax modems. CLASS has NOTHING AT ALL to do
with fax machines. Class 1, Class 2 and Class 2.0 are different
methods of sending "AT" COMMANDS to a fax modem from a computer
serial port. Many fax modems offer the Class 2 command set.
GROUP III
=========
Most Group III fax images are 1728 bits across. A normal
resolution page is approximately 1100 scan lines long, while
a high resolution page is approximately 2200 scan lines long.
When the fax devices are handshaking, this occurs at 300 bps,
regardless of what the negoiated fax DCE rate is (i.e., 9600).
(This is why on some modems, you will see the HS [high speed]
light go on and off several times during the fax transfer.)
Computer fax modems use v.17 modulation at 12000 and 14400,
v.29 at 7200 and 9600, and v.27ter at 2400 and 4800 bps. The 300
bps handshaking signals use something called v.21 channel 2. All
fax modulations are half duplex (data going only in one direction
at any given time.)
Fax images can use one or two-dimensional Modified Huffman
encoding. One-dimensional is known as MH, and two-dimensional is
known as MR (Modified Read). MR encoding sends one scan line,
followed by special bits that spell out differences between the
above line and the current line. This results in generally about
as 12% compression. BGFAX's VIEW.EXE program can only view 1D-MH
faxes at this time, although BGFAX will support receiving and
saving to disk of both types of compression. (See T4SPEC.TXT for
a very detailed description of the 1D-MH compression method. That
file is included in SOURCE.ARJ.)
Fax images have things known as EOLs and RTC. EOL stands for
End-Of-Line and is represented as 000000000001. Fax viewing
programs read through the fax image file, scan line by scan line.
They know where each scan line ends by searching for all the EOLs
in the file. RTC, Return-To-Control, is a series of six EOLs.
The RTC sequence usually indicates an "end of page". No huffman
codes start with 11 zeros like the EOL character. Why am I
telling you all this? Because many older fax machines send "fill"
to your fax modem when receiving. "Fill" is just extraneous zeros
that are stored on your hard disk that take up space. For
example, you might have an scan line that ends with...
0000000000000000000000000000000000000000000000000000000000001
...but, all that is actually needed is 000000000001. As you can
see, many extraneous zeros could be filtered from this line to
reduce the size of fax image files a few bytes per scan line. Fax
machines like to add all those extra zeros in there. That's why
you should notice that fax modem->fax modem facsimile transfer is
faster than fax modem->fax machine or fax machine->fax modem.
Another interesting Group III fact is that a "training check" is
performed by fax machines shortly after they connect. The
training check consists of the sender sending zeros for
approximately 1.5 seconds (at the negoiated rate, i.e., 9600
bps). The receiving end will count all the zeros received, and
any non-zeros received (bad bits that got corrupted by noise over
the phone line), and if 10% (or more) of the bytes received were
bad (non-zero), the receiving end will request a RETRAIN. This
usually involves a downshift of 2400 bps, i.e., 9600 -> 7200 bps.
After the shift, another training check will be performed.
AT+FAA=1
========
This command will put a Class 2/Class 2.0 modem in ADAPTIVE
ANSWERING mode.
Your modem will properly mate with either a standard modem
data call or a fax machine/fax modem. Some modems, such as the
Supra, will report a "FAX" response the instant a fax CNG tone is
heard from the remote end.
All modems, on true fax calls, will report a "+FCON" response code
when the fax connection is truly established. (This is similar to
a "CONNECT 9600" or "CONNECT 14400" on a data call.)
Many modems are slightly brain dead and will forget the +FAA
setting when another command is issued to the modem. To ensure
you always answer in adaptive mode, rather than using "ATA" to
answer the phone, use the following: "AT+FAA=1;A".
The ";", semicolon, is used as a seperator for fax commands. Some
modems, such as the Supra, do not require it. Others, such as the
PPI, will "ERROR" out if the semicolons are not used.
Please note that many modem manufactuers did not test adaptive
answering as much as they should have before they released their
modems. Some modems won't allow low speed callers into your BBS
when adaptive answering is enabled. Others won't allow high
speed callers into your BBS when adaptive answering is enabled.
If this is happening, you will need to call your modem manufactuer
and request new ROMs if any are available. For example, the 14.4K
PC Logic modem's adaptive answering doesn't work at all. Even
well known companies sometimes overlook adaptive answering. A key
example is that early version of the USR 21.6K modem would lock up
whenever an HST call would come into their BBS when adaptive answer
mode was enabled.
The SupraFaxModem v.32bis, for example, is pretty good concerning
adaptive answering. (Note that very earlier versions of the
Supra, did not offer adaptive answering until the 1.2-H and 1.2-J
ROMs appeared on the scene.) However, many older fax machines do
not send out a CNG tone when they are engaged. Many fax modems,
including the Supra, won't know what to do, and will assume the
old fax machine is really a data caller. Again, this is not good,
but its not that much of a problem. Tell the operator of the old
fax machine to push their "START" button *IMMEDIATELY* after dialing
the last digit of the telephone number instead of waiting to hear
the fax tones on our end like many office people do.
AT+FAE=1
========
This is the Class 1 command to enable adaptive answering.
AT+FCR=1
========
This is a Class 2/2.0 command to give your modem PERMISSION to
take faxes. Note that Class 2.0 modems default +FCR=1, so you
won't need to use this command.
AT+FLID="713 893 9124"
======================
( The Class 2.0 command is AT+FLI="713 893 9124" )
The above command sets your modems fax ID string. This is the
string that is send to the remote end on fax connects. (It's the
deal that's printed on the little 'confirmation reports' that many
fax machines make.) The fax ID can ONLY BE A MAXIMUM OF *20*
CHARACTERS. If you try to stuff more than 20 characters in a fax
ID string, the modem will respond with an "ERROR". DO NOT USE
HIGH-BIT ASCII CHARACTERS IN THIS STRING. Use only simple
letters, numbers, and punctuation marks. (High-bit ASCII
characters include foreign accented letters, inverted question
marks, etc.)
Some fax machines will go nuts (hang up on you) if you use
non-CCITT defined characters in the fax ID field. The only
"valid" characters are PLUS, SPACE, and ZERO through NINE.
+1 713 893 9124 <-- Valid
713 893 9124 <-- Valid
+1 713.893.9124 <-- Not Defined (the periods)
713-893-9124 <-- Not Defined (the dash)
MY GREAT BBS <-- Not Defined (the letters)
I've never personally seen a fax machine that will hang up on you
for using any of the above "Not Defined" strings, however, I have
been told that someone found an old fax machine that did, infact,
hang up if you used letters (or dashes) in the ID string.
Class 1 fax modems have their ID set by the fax software.
AT+FDCC=1,3,0,2,0,0,0,0
=======================
The above command is what the power on defaults to a 9600 fax
modem are, with one exception. The first number, 1, allows your
fax modem to accept high resolution fax documents. The power on
default to most modems are to accept only low resolution
documents. The second number, 3, allows your fax modem to use fax
speeds up to 9600 bps. In the past I would always tell people
to use 1,5,0,2,0,0,0,0 (where the "5" uses 14400), but I've since
discovered that a large number of fax modems do not work in 14400
fax mode very well. (Most stand-alone fax machines only support
9600 bps anyway, so it's no real loss to limit your maximum receive
fax speed to 9600.)
If you issue the above command on a fax modem with an upper limit
of 9600 on fax tranmissions, you will receive an "ERROR" or cause
the modem to behave odd. Use this string on a 9600 fax modem:
AT+FDCC=1,3,0,2,0,0,0,0
If you want to activate 2D-MR compression on a 14400 capable fax
modem, use:
AT+FDCC=1,5,0,2,1,0,0,0
^
That "1" after the "2" means that you wish to allow 2D-MR
compression. As previously mentioned, 2D-MR approximates gets
about 12% better compression than the more familar 1D-MH. If you
tell your modem to allow 2D-MR compression, it should be noted
that you will not lose any compatibility. Enabling 2D-MR allows
for both receiving in standard 1D-MH mode and 2D-MR mode.
Remember that VIEW.EXE will not yet view 2D-MR faxes. If you
decide to use that extra "1", you must use ZFAX to view any
received 2D faxes!
The remaining numbers are not that important. Changing them
around, though, may cause BGFAX to fail. The command can also be
abbreviated to "AT+FDCC=1,5" or "AT+FDCC=1,3".
You do not need to use this command on Class 1 and 2.0 modems. On
Class 1 modems, if you wish to change these settings, you will
need to do it via BGFAX's /DIS:nnn command line parameter.
STACKING COMMANDS
=================
A single command string can be made using what we need ...
AT+FAA=1;+FCR=1;+FLID="713 893 9124";+FDCC=1,3,0,2,0,0,0,0
However, if you are using BGFAX in rear end mode with a Fido
mailer, you may have a hard time of making an initialization
string that long, so you may be required to split the line into a
few pieces. Remeber to make your ATA command "AT+FAA=1;A" if it
is possible to change in your mailer.
The +FDCC string must come at the end of the stack of commands!
AT+FMFR?
========
( The Class 2.0 command is AT+FMI? )
If you want to find out who makes the fax datapump for your modem,
this command should tell you if you enter it in while in terminal
mode. My Supra (and many others) report "ROCKWELL". My Cheap
2400 data, 9600 S/R fax modem reports "SIERRA". Others report
"EXAR" and other things as well.
AT+FNR=1,1,1,1
==============
This is a Class 2.0 command that tells the USR modem to let BGFAX
know many details about the current fax reception, such as the
resolution of the fax, what the fax DCE speed is currently
negotiated at, etc. Class 2 modems always report this. However,
for some strange reason, the Class 2.0 spec writers thought it's
be "nice" to have the fax program NOT knowing this critical
information. I can think of no logically reason for this command
existing, but if you forget to set it, your faxes on your Class
2.0 modems may look elongated or smashed together.
AT#B1+FCLASS=6
==============
This is a ZyXEL fax command. This is of use only to ZyXEL owners,
and the ZyXEL user manual explains it very nicely.
FAX MODE
========
Probably 95% of you will be using BGFAX with a high speed modem
(v.32 or v.32bis). Many of you may have started off with slower
300, 1200, or 2400 modems from long ago. If you can remember back
that far, when an incoming data call came in, you would see a
string like "CONNECT 1200". If your port was set at 2400, you
would garbage on the screen unless you shifted your bps rate down
to 1200 to match that of the caller. Many newer terminal programs
refer to this speed shift as "Autobaud".
Modern modems require your serial port be locked at a specific
speed (such as 19200, 38400, 57600, etc.) so that you can achieve
higher thruput via compression engines such as MNP and v.42bis.
The modem-to-modem speed may only be 14400, but the modem-to-
computer speed stays "locked" at 38400. Autobaud is not required,
and if used, would result is garbage on the screen.
Why am I telling you all this? Well, I don't know who's silly
idea it was, but the powers that be decided that fax modems should
use the ancient method of changing the port rate when a fax is
incoming or outgoing.
After your modem reports the result code "+FCON" all further
communications *MUST* be done at 19200 bps, even if you are locked
at 38400 or 57600. If the port speed is not relocked at 19200,
nothing but garbage will come on the screen.
I'm telling you this because I frequently get mail asking me why
I'm changing the port speed to 19200. It's not my fault! That's
the way is has to be done! The only modem that I know that does
not require this idiotic speed shift is the ZyXEL modem. In fact,
a special option must be used to tell BGFAX you are using a ZyXEL
or BGFAX will fail as it will try talking to the ZyXEL modem at
19200 instead of 57600 or whatever rate it's locked at.
Note that the 19200 shift is not needed on Class 1 and 2.0 modems.
BIT ORDER
=========
Class 2 fax modems receive in reverse bit order and transmit in
direct bit order. Actually, this is not in the Class 2 spec, but
a bug in Rockwell's Class 2 implementation. This reverse bit
order bug became so wide spread, that other fax modem manufactuers
now have to receive in reverse bit order to make their modems
compatible with existing fax software. :-)
BGFAX will save all incoming fax files in direct bit order, so it
effectively flips all the bytes on the fly when receiving.
Class 1, Class 2.0, and ZyXEL modems receive and transmit in
direct bit order. BGFAX will know this and keep the received
faxes in the correct bit order.
-------------------------------------------------------------
FRONTEND/HOST MODE
-------------------------------------------------------------
If you want BGFAX to answer the phone, BGFAX is started up using
the /HOST command line parameter.
If you plan on using BGFAX in Frontend mode, you need to do a
couple of things first.
1. An evironment variable called BGFAX needs to be inserted in
your AUTOEXEC.BAT or someother batch file. Example:
SET BGFAX=C:\BGFAX
This environment variable points to the location of your BGFAX
configuration file and the directory where faxes will be
received into.
(Note, some people don't like cluttering their environment with
variables. You can start up /HOST mode using a different config
file other than BGFAX.CNF, by using the "$" modifier, e.g.:
BGFAX /HOST /50 $C:\BAT\ROBIN.CNF
BGFAX /SEND C:\BGFAX\FAX0001.FAX 893-9124 $C:\BAT\BATGIRL.CNF
The "$" modifer must be the last thing on the command line.
Instead of looking for a BGFAX.CNF file as specified by the
BGFAX environment variable, this will cause BGFAX to look for
a "ROBIN.CNF" (in host mode) or "BATGIRL.CNF" if sending.
The "$" modifer has NO EFFECT on rear end mode operation.)
2. Make sure the BGFAX.CNF configuration file is in the directory
pointed to by the BGFAX environment variable and make any
changes you think necessary. The included configuration file
is self explantory. I won't repeat the format here.
3. BGFAX can exit with 7 possible internal errorlevels:
6 - host mode idle for more than x minutes
4 - fax was received
3 - local logon
2 - data call
1 - restart batch file
If no errorlevel is encountered, it means the sysop aborted
BGFAX by pressing the [Esc] key or a serious error occurred.
Actually, BGFAX can exit with several errorlevels if you setup
events. Events are specified in the BGFAX.CNF file (see the
example file included). Example:
ev=07:00,192
ev=19:00,193
That would cause BGFAX to exit with errorlevel 192 at 7:00am
and errorlevel 193 at 7:00pm. BGFAX's event handling is very
crude, and I very much need to change it. The event handling
still has several bugs that need to be fixed. It works best if
you use a total of two events. One event doesn't work very
well, and if you use more (up to 20 are allowed), you can miss
an event or two if a caller to your BBS overstays their visit.
BGFAX will always execute the first event that is passed over,
but won't do any more. And, if you only have one event setup,
it will not execute that one if it is missed. But it will, if
you set up two events. You can probably tell I hate events.
If anyone has some ideas on how to keep track of events and
execute the ones that are missed, etc., I'd appreciate it.
4. When BGFAX is waiting for a call, pressing Ctrl-R will reset
the on screen counters. Ctrl-A will force BGFAX to send the
answer string to the modem.
5. If you some reason, you want to use the USR Class 2.0 modem in
Class 1 mode with BGFAX's /HOST mode, you will need to use the
/ATO switch which will cause BGFAX to send an "ATO" to the
modem after the "DATA" response is received.
6. When a data call comes in, BGFAX creates a DOBBS.BAT file that
looks like so...
C:\BGFAX\EXEBBS.BAT 9600 1 528 /ARQ
BGFAX/2 will create DOBBS.CMD: C:\BGFAX\EXEBBS.CMD 9600 5 528 /ARQ
The first parameter is the DCE data speed, then the com port,
number of minutes until the next event, and then the error
correcting string, if any. The EXEBBS.BAT file must be created
by you so that your bulletin board software is loaded up in
frontend mode (ie., the data connection is already hot.)
%1 -> the DCE speed, modem-to-modem real connect speed
%2 -> the COM port (BGFAX/2 will put the OS/2 com handle)
%3 -> number of minutes until the next event
%4 -> error correction/reliable mode indicators
DOBBS.BAT theory
================
If you have never used a frontend program uses DOBBS.BAT theory,
there are several things you need to know. You have to be pretty
confident in DOS and batch files, or you will get lost very
easily. First, you need a main batch file that runs BGFAX. Let's
call this FBBS.BAT:
@echo off
c:
cd\bgfax
bgfax /host
if errorlevel 4 goto faxrcvd
if errorlevel 3 goto datacall
if errorlevel 2 goto datacall
if errorlevel 1 fbbs.bat
goto end
:faxrcvd
rem [you can put a printing batch here if you want]
call %bgfax%\doprint.bat
del %bgfax%\doprint.bat
:datacall
rem [errorlevel 3 is local login, 2 is data caller]
%bgfax%\dobbs.bat
:end
--> Note that DOS requires all if-errorlevel statements to go in
--> DESCENDING ORDER! (255,254,253,...,4,3,2,1). This is a fact that
--> many people forget.
This FBBS.BAT file will run BGFAX and when a data caller calls
your system, BGFAX will exit with an errorlevel of 3. This will
cause the batch file to jump to the ":datacall" label. Here, the
line "%bgfax%\dobbs.bat" is executed, causing DOS to shift control
of the computer to the DOBBS.BAT file. Rememeber, this is a file
that BGFAX creates! You do not need to make a DOBBS.BAT file.
The DOBBS.BAT then executes _another_ batch file called EXEBBS.BAT
which will look something like:
EXEBBS.BAT
==========
@echo off
bbsprog /f:%1:%2
fbbs
THE EXEBBS.BAT FILE WILL LOOK DIFFERENT FOR EVERY DIFFERENT
TYPE OF BBS SOFTWARE!!!
You will have to look up the info for the EXEBBS.BAT file in
your BBS user's manual. I can't help you with that. Notice
that the last line "fbbs" restarts the original FBBS.BAT
file that runs BGFAX in /HOST mode.
In review: (1) Modify FBBS.BAT to meet your needs, (2) BGFAX will
MAKE a DOBBS.BAT file by itself, (3) YOU will need to MAKE an
EXEBBS.BAT file, (4) the EXEBBS.BAT file must restart FBBS.BAT.
Do not use the CALL statement anywhere unless you really know what
you are doing. "FILE.BAT" and "CALL FILE.BAT" causes two
completely different things to happen. Only experienced DOS/batch
file writers need to experiment with that. Example:
TEST.BAT
========
echo **TEST**
EXAMPLE1.BAT Example1.BAT output:
===========
echo Hello World! Hello World!
call test.bat **TEST**
echo Bye World! Bye World!
rem ***We RETURNED to the batch file after TEST.BAT
EXAMPLE2.BAT Example2.BAT output:
============
echo Hello World! Hello World!
test.bat **TEST**
echo Bye World!
rem ***We DID NOT RETURN to the batch file after TEST.BAT
If you want to allow 300 bps callers, you must use the /300
command line switch. ( Example: BGFAX /HOST /300 ).
-------------------------------------------------------------
INITIALIZATION MODE
-------------------------------------------------------------
If you want BGFAX just to initialize the modem, you can have it do
so with the BGFAX /INIT parameter. BGFAX will get the port,
speed, and initialization strings from the BGFAX.CNF file in the
directory specified by the BGFAX environment variable.
This mode is provided for people who need to use BGFAX in rear end
mode, but their Fido mailers (or BBS software) do not allow them
to use the long initialization strings required for fax usage.
-------------------------------------------------------------
REAR END MODE (FIDO MAILERS, ETC.)
-------------------------------------------------------------
Rear end mode is useful for those of us who are FidoNet members
where a Fido mailer is required to be running 24 hours a day. It
will be your job to figure out how to get your mailer to exit to
BGFAX when your modem informs the mailer a fax call is coming
through. (See the HELPME.ARJ file for hints on specific mailers.)
You will need to know the result code your modem sends when an
incoming fax call is detected. Some modems send TWO fax connect
strings. For example, the Supra will send "FAX" followed by an
"+FCON" response about 2 seconds later. The ZyXEL will send
"CONNECT FAX" followed immediately by "ZyXEL". Most fax modems
report only one string though. Use this chart for reference:
Result Modems
====== ====================================================
FAX Supra, Zoom, Hayes, most Rockwell based chipsets
+FCON PPI, other Class 2 modems
+FCO USR V.Everything 28.8K and other Class 2.0 modems
You need to configure your mailer (or BBS software) to exit
IMMEDIATELY upon receipt of the proper fax result code. You
need to call BGFAX in the following manner:
BGFAX /how [faxpath port faxtype [pid]]
FAXPATH will be the directory where incoming faxes are to be
placed. PORT is a valid communications port from 1 to 4, or,
optionally, a hexidecial base address and IRQ formatted as
followed "3F8x5". Also, optionally, if the port has a bang, !,
following it, it will force the port to stay locked at the current
speed rather than shifting to 19200 on fax connects. FAXTYPE is a
single character 'Z' or 'Q'. 'Z' for ZyXEL ZFAX format, 'Q' for
Smith Micro Software's Quick Link II fax format.
The "/how" deal is the most critical switch. There are three
possible settings.
/FAX ... Modem reports "FAX" or "CONNECT FAX".
BGFAX will automatically detect whether it should
use Class 2 (Supra, Zoom) or the ZyXEL fax mode
based on the next message (ie, "+FCON" or "ZyXEL").
/FAX:713_893_9124 If your modem in Class 1, try one of
/FHAY:713_893_9124 these two options.
/FAST ... Modem reports "+FCON" (PPI, other Class 2 modems)
/FCON ... Try this option if /FAST doens't work.
/FCO ... Modem reports "+FCO" (USR V.Everything)
/FCOS ... Try this option if /FCO doesn't work.
/FZYX ... ZyXEL owners use this if /FAX doesn't work.
Here is a schematic of how each option behaves:
*** /FAX [ Supra, ZyXEL, i.e. all modems that report "FAX" ]
1. keeps port at locked DTE 1. <same> 1. <same>
2. waits for "+FCON" _or_ 2. waits for "OK" _or_ 2. waits for "ZyXEL"
3. drops port to 19200 3. sends "AT+FDR" 3. waits for high CTS
4. waits for "OK" 4. sends <DC2>
5. sends "AT+FDR"
*** /FAX:713_893_9124 [ Supra LC modem, Class 1 modem ]
1. keeps port at locked DTE
2. waits for "CONNECT"
3. begins sending Class 1 HDLC frames
*** /FHAY:713_893_9124 [ Hayes 288, other Class 1 modems ]
1. keeps port at locked DTE
2. blindly starts sending Class 1 HDLC frames
*** /FAST [ PPI, i.e. all modems that report "+FCON" ]
1. drops port to 19200
2. waits for "OK"
3. sends "AT+FDR"
*** /FCON [ PPI, use this if above options don't work ]
1. drops port to 19200
2. blindly sends "AT+FDR"
*** /FAST:nn [ all Class 2 modems where /FAX won't work ]
This switch is a hybrid of the /FAST and /FCON switches.
Let's present we use /FAST:4 ...
1. drops port to 19200
2. waits for "OK" for nn seconds (FOUR seconds if /FAST:4)
3. if "OK" occurs before nn seconds, sends AT+FDR
_or_
3. if "OK" is not received in nn seconds,
blindly sends AT+FDR
*** /FCO [ USR, i.e. all Class 2.0 modems that report "+FCO" ]
1. keeps port at locked DTE
2. waits for "OK"
[ 2a. If the /OU switch is used, if the port is locked at
38400, it will shift the DTE to 19200 ]
3. sends "AT+FDR"
*** /FCOS [ USR, i.e. all Class 2.0 modems that report "+FCO" ]
1. blindly sends "AT+FDR"
*** /FCO:nn [ USR, i.e., all Class 2.0 modems that report "+FCO"]
This switch is a hybrid of the /FCO and /FCOS switches.
Let's pretend we use /FCO:4 ...
1. keeps port at locked DTE
2. waits for "OK" for nn seconds (FOUR seconds if /FCO:4)
3. if "OK" occurs before nn seconds, sends "AT+FDR"
_or_
3. if "OK" is not received in nn seconds,
blindly sends "AT+FDR"
*** /FZYX [ ZyXEL, use this only if /FAX doesn't work ]
1. waits for high CTS
2. sends <DC2>
NOTE: /FCO:0 is equivilant to /FCOS
/FAST:0 is equivilant to /FCON
The /FCO:nn and /FAST:nn are more reliable than using the
regular /FCO, /FCOS, /FAST, or /FCON commands. In the next
version of BGFAX, the above four switches may be phased out so
that /FAX, /FHAY, /FZYX, /FCO:nn, /FAST:nn are the only valid
switches.
When a fax is inbound, here are some example BGFAX command
lines for rear-end mode operation on my Supra:
BGFAX /FAX C:\BGFAX 1 Z
bgfax /fax c:\bgfax f3 z
bgfax /fax c:\bgfax 3f8x7 z
Using my Hayes 288, example command line options might be:
bgfax /fhay:713_893_9124 c:\bgfax 1 z
...note that the ID string MUST be presented on the command line
when you are receiving with a Class 1 modem in rear end mode.
In Class 1, the fax software is responsible for sending the ID
string to the remote machine. (In contrast to Class 2/2.0 modems,
which automatically send the ID to the remote machine.)
The /FAX means that I used the modem response "FAX" as a trigger
for FD (see BGFAX.HLP for more details), C:\BGFAX is the path
where I want all faxes to be stored, "1" is the communications
port, and the "Z" represents I want faxes saved in ZyXEL's ZFAX
image format.
If you want to run BGFAX on a multinode system, an optional fifth
parameter can be used. This fifth parameter can be up to three
characters and it is called the PID. Example:
BGFAX /FAX C:\BGFAX 1 Z /PID:99
The only difference between the command above and the previous one
is that rather than making a BGFAX.LOG, all log entries will be
written to a file called BGFAXpid.LOG, in this case, BGFAX99.LOG.
-------------------------------------------------------------
MISCELLANEOUS /HOST AND REAREND (/Fxxx) OPTIONS
-------------------------------------------------------------
Stop that hopping blue box
==========================
In /HOST mode, the BGFAX status box hops around the screen every
10 seconds to prevent screen burn-in. However, some people got
dizzy watching the box, and others complained that the screen move
was taking up too many time slices in multitasking environment.
The /NH parameter will force "No Hop" mode which has considerably
less screen writes when sitting idle.
bgfax /host /nh
50 Line Mode
============
BGFAX can use VGA's 50 line mode if you wish by using the /50
command line parameter:
bgfax /host /50
bgfax /send c:\bgfax\fax0004.fax 893-9124 /50
bgfax /fco c:\bgfax 1 z /50
(Also, if you have only a EGA video card, the /50 switch should
switch your display into 43 line mode.)
BGFAX and the USR 21.6K modem with September 93 chips
=====================================================
If you are using BGFAX with the USR 21.6K modem, BGFAX will
default to use the 12/08/93 firmware revision. If you wish to use
BGFAX with the 09/20/93 firmware, you will need to use the /OU
switch on the BGFAX command line. Example:
bgfax /host /ou
bgfax /fco c:\bgfax 4 q /ou
...DO NOT USE THE /OU SWITCH WITH ANY OTHER MODEM *EXCEPT* THE USR
21.6K WITH SEPTEMBER 1993 FIRMWARE! (See WHATS.NEW for other
exceptions).
Turning off the alert sound BGFAX makes when it receives a fax
==============================================================
BGFAX will automatically sound an "alarm" to let you know when a
succesful fax reception occurs. This "alarm" is annoying to some
people. To disable the "alarm", use the /NS switch for No Sound.
(ONLY AVAILABLE IN THE REGISTERED VERSION.)
bgfax /host /ns
bgfax /fast c:\bgfax 1 z /ns
Telling Class 1 modems to receive at a maximum of 9600 bps /DIS
================================================================
If your Class 1 modem can receive at a maximum of 9600, strange
things will happen if you forgot to tell BGFAX this, since it will
default to tell the other side you will be using 14400 bps for fax
operations. To force BGFAX to receive at a maximum of 9600 bps
with Class 1 faxmodems, use the /DIS:79 parameter, i.e.:
bgfax /fhay:713_893_9124 c:\bgfax 1 z /dis:79 /ns
To compute your own /DIS value, first, pick a value from the
following table:
2400 -> 3
4800 -> 11
9600 -> 15
14400 -> 47
Next, you have two options. If you want to allow high resolution
documents, add the value 64 to your choice. If you want to allow
2D-MR documents, add the value 128 to your choice. For example,
let's say you wanted a maximum speed of 9600 along with high
resolution documents: 15 + 64 = 79, so use /DIS:79.
See the following chart for pre-computed examples:
/DIS:nnn Description (all of the following allow high res faxes)
-------- -------------------------------------------------------
75 Maximum speed of 4800 bps, 1D-MH faxes only
79 Maximum speed of 9600 bps, 1D-MH faxes only
207 Maximum speed of 9600 bps, 1D-MH & 2D-MR faxes
111 Maximum speed of 14400 bps, 1D-MH faxes only [DEFAULT]
239 Maximum speed of 14400 bps, 1D-MH & 2D-MR faxes
TSR fax notification
====================
BGFAX comes with an optional TSR program (NFAX.COM) that will
place the word "FAX" on your screen whenever a successful incoming
fax occurs. However, you must tell BGFAX that you wish to alert
NFAX.COM to display the message. You can do this by using the /NF
switch. Example:
bgfax /fcon c:\bgfax 2 q /nf
This will activate the NFAX.COM interrupt and cause the message to
get displayed. To turn the message off, you can run the FAXOFF.COM
program contained in the BGFAX archive. Remember, NFAX.COM is a
TSR and must be loaded in your AUTOEXEC.BAT properly if you wish
to use it with BGFAX. It is totally optional! Also, note that if
your machine is rebooted, the fax message will not be on your
screen when your system powers back up.
NFAX.COM/FAXOFF.COM techinical information:
===========================================
Here is a snip of the Turbo Pascal source code that tells NFAX.COM
to put the fax indicator on the screen:
var
regs : registers;
begin
writeln('Activating "NFAX" interrupt.');
regs.ah := 30; { nfax-function }
regs.al := 21; { nfax-sub function }
regs.bl := 95; { nfax-"FAX" attribute, white on purple }
intr($55, regs); { nfax-tsr }
end;
When you want to turn off the "FAX" alert message, you need to
run the included "FAXOFF.COM" file. It basically issues the
same code above except that "regs.al := 22" instead of 21.
(Go into DEBUG and do an unassemble on the .COM file to see
exactly how to turn it off.)
************************************************************************
AFTER YOU RECEIVE THE FAX
************************************************************************
NAMING CONVENTION
=================
The name of the fax file will be FAXnnnn.??? where "nnnn" is a
number that is padded with zeros and "???" is "FAX" or "QFX",
depending upon which fax format you save the file in. If you ever
see a BGFAX.$$$ file in your directory, it should *NOT* be there,
as it should have been renamed in the FAXnnnn.??? format. If it
is there, it means some kind of problem happened during the fax
reception. Normally, problem faxes will be renamed to BADnnnn.???.
FAXIN.LOG
=========
BGFAX creates a BGFAX.LOG file that contains a bunch of
information that is mainly only for debug purposes. A much
cleaner log file is called FAXIN.LOG and looks like this:
Date Time ET Bytes Rate Filename Remote Fax ID Pgs Notes
-------------------------------------------------------------------------------
12-21 11:52 00:42 18183 9600*FAX0001.FAX Unknown 2 Finished
12-21 18:04 00:38 18182 9600 FAX0002.FAX Unknown 2 Not Done
12-22 21:30 00:29 17793 14400*FAX0003.FAX 7138939124 1 Finished
12-22 21:42 00:29 17541 14400#FAX0004.FAX TRANQUILITY BASE 1 Finished
12-23 06:44 00:32 16941 9600%FAX0005.FAX Null ID Received 1 Finished
12-25 17:21 01:22 107392 14400*FAX0006.FAX 7132424708 1 Finished
Notice the special symbols between the Rate and Filename:
-> (space) means low resoultion, 1D-MR compression
* -> means high resolution, 1D-MH compression
% -> means low resoltion, 2D-MR compression
# -> means high resolution, 2D-MR compression
"Not Done" under Notes means that BGFAX believed more pages were
to have followed, but were not actually received. "ET" is
estimated time. Everything else is self explanatory.
VIEWING/PCX CONVERSION
======================
You can use the included VIEW.EXE file to view the faxes you have
received. It's use is quite simple:
VIEW FAX0002.FAX
...will cause VIEW.EXE to start viewing operations on FAX0002.FAX.
VIEW should automatically detect what kind of video card you are
using (VGA, EGA, and CGA) and use that video card's monochrome
mode. If VIEW.EXE has trouble finding a video mode, you can force
VIEW to use an alternate mode with the /CGA, /EGA, or /VGA
command as the second command line parameter after the filename.
VIEW FAX0002.FAX /CGA or VIEW FAX0002.FAX /EGA
When you are viewing the fax, you have a few options:
Alt-F ... Flip the image (makes upside down and mirrors)
Alt-I ... Inverse the image (white-black -> black-white)
Alt-S ... Shrink current on-screen image to 1/3 width
PgDn .... go to next page
PgUp .... go to previous page
...and the Up/Down/Right/Left arrows do their normal job.
Note that viewing the fax, with my VIEW.EXE program, takes up
quite a bit of memory. (It uses 216 bytes of memory for each scan
line, so a single high resolution fax page of 2200 lines uses
a minimum of 475K of memory!)
If you want to convert a fax to PCX ...
VIEW FAX0002.FAX /PCX
...would create a FAX0002.P01 and FAX0002.P02 file. (Two PCX
files since there are two pages in this fax image.)
A special option, /BO, is also available with VIEW.EXE. /BO
tells VIEW that you wish to flip all the bytes in the fax data
stream before processing it. This should NEVER need to be used,
as it is for my debugging purposes only. (Basically, using the
/BO parameter will let VIEW display/convert reverse bit order
faxes. Normally, BGFAX will save all faxes in direct bit order,
no matter what bit order the modem actually receives in.)
Another special option, /DB, forces VIEW to display the bad scan
lines of a fax image. Normally, if VIEW encounters a bad scan
line, it will display it is a dotted line going all the way across
the width of the fax image. If /DB is active, VIEW will put up to
1728 bits of the incorrectly decoded scan line on the page.
DOPRINT.BAT
===========
After you successfully receive a fax, BGFAX will exit with an
errorlevel of 4 and append (or create) a DOPRINT.BAT file.
CALL C:\BGFAX\EXEPRINT.BAT C:\BGFAX\FAX0085.FAX
CALL C:\BGFAX\EXEPRINT.BAT C:\BGFAX\FAX0086.FAX
You do not have to do anything with this at all, but it is
provided for those of you who wish to print faxes as they are
received. It will call the EXEPRINT.BAT file and pass it the
parameter with the path and name of the fax file that was just
received. If you are using Smith Micro Software's Quick Link II,
for example, and are one of those people that leave your printer
on 24 hours a day, your EXEPRINT.BAT file might contain this:
@echo off
printfax %1 24pin.qlp
Remeber to delete the DOPRINT.BAT file after you process it.
(If you do not, every time BGFAX goes to print another fax,
it will print ALL faxes received since you first set it up.)
-------------------------------------------------------------
SEND FAX MODE
-------------------------------------------------------------
Currently, if you want to send a fax to another person, the fax
file must already be in either ZFAX or Quick Link II fax image
format.
BGFAX /SEND FAX0001.FAX 893-9124
See the BGFAX.CNF file for more info, such as maximum amount of
busy signals and failures before exit, etc.
At this time, only previously converted fax files can be sent.
(i.e., ASCII files have to be translated to ZFAX .FAX format or
QLII .QFX format.) You can use the included MAKEFAX.EXE program
to convert an ASCII file to .FAX format. MAKEFAX.EXE will require
that the font file BGFAX.FNT exists in your BGFAX directory.
MAKEFAX allows a width of up to 100 characters per line. (Use
the /SP command line parameter on MAKEFAX if you want it to use
short sized pages for pages in the fax that aren't fully used.)
BGFAX can exit with three possible errorlevels when sending...
errorlevel 5 -> fax sent successfully
errorlevel 1 -> fax send failure
no errorlevel -> file not found, keypress abort, etc.
If the number is BUSY, BGFAX will try a few more times (the number
of times specified in the MB= entry in the BGFAX.CNF file) and
will pause for SW= number of seconds between dials. If a failure
occurs during handshaking or during the actual sending of the fax,
BGFAX will terminate with an failure errorlevel.
If you are a programmer, and need to use BGFAX to send faxes, but
need more information than success or failure, you need to use the
/ER switch on the BGFAX /SEND command line. BGFAX will make only
ONE attempt to send the fax in /ER mode (regardless of BUSY, etc.)
bgfax /send fax0001.fax 893-9124 /er
The following "Extended Results" are available:
errorlevel 18 -> input fax file not found on disk
errorlevel 17 -> remote fax device does not support 2D-MR
errorlevel 16 -> remote fax does not support high resolution
errorlevel 15 -> failure after connect (HDLC frameout, etc.)
(a class 1 failure)
errorlevel 14 -> a timeout occurred
errorlevel 13 -> no +FCON ever occurred (NO CARRIER, etc.)
errorlevel 12 -> failure after connect (+FHNG, no XON, etc.)
(a class 2 or 2.0 failure)
errorlevel 11 -> "NO DIALTONE"
errorlevel 10 -> "BUSY"
9,8 <reserved, i have no idea why>
errorlevel 7 -> the number is BLACKLISTED by the modem
6 <dr. samuel beckett steped into the quantum leap
accellerator and vanished>
errorlevel 5 -> *** FAX SENT SUCCESFULLY ***
4,3,2 <reserved for bgfax /host mode>
errorlevel 1 -> generic fax send failure
no errorlevel -> keypress abort, unknown failure type
TOP OF PAGE HEADERS
===================
BGFAX will print a top of page header at the top of each page
BGFAX sends out. This is same time of things that real fax
machines and other computer fax software do that identify who sent
the fax, where it's going, the date and time, and the page number.
BGFAX will need to call MAKEFAX.EXE with a special command line
parameter to cause the creation of the top of make banners. Make
sure you keep both MAKEFAX.EXE and BGFAX.FNT in your BGFAX
environment directory.
If you get lost real easy, you can skip the rest of this section.
This rest of this section describes how to configure BGFAX to
change the format of the top of page banners.
BGFAX lets you be very flexible with what exactly is said on the
top of page headers. It does this by the use of a "template" that
is located in the BGFAX.CNF file. This is necessary so that
countries that do not use English can put their own langauge on
the top of page banners. Also, it's just plain fun.
fh=To: %to21% From: %fr42% %mo2%/%dy2%/%yr2% %hr2%:%mi2% Pg %pg2%/%mp2%
fr=B.J. Guillot (713-893-9124)
The fh= entry is the template.
It should be obvious as to what all those %TTNN% things do,
but if not, here's a little dictionary:
%toNN% -> who the fax is for (will default to the sending phone number,
but can override to say any text with the /TO= command line switch)
%frNN% -> who the fax if from (will default to the ID= entry in the
BGFAX.CNF file, unless a FR= entry is found, but can override to say
any text with the /FR= command line switch)
%moNN% -> month
%dyNN% -> year
%hrNN% -> hour
%miNN% -> minute
%pgNN% -> current page number
%mpNN% -> maximum number of pages
With %to and %fr, BGFAX will right pad the whoto or whofrom strings to
a total number of NN characters with blanks. All other fields, are
left padded to NN characters with ZEROS. Keep in mind that BGFAX can
fit 100 characters across the page.
The fr= option, is used in the fh= template entry. Basically,
fr= is what will be inserted into the %frNN% template variable.
Are you lost? Here is an example and what it would look like:
C:\> bgfax /send output.fax 555-1212
To: 555-1212 From: B.J. Guillot (713-893-9124) 05/08/94 16:25 Pg 01/15
Let's say you run a BBS with a fax door and want to stick you
user's name at the top of each page instead of your personal name.
No need to rebuild a BGFAX.CNF! You can manipulate the %toNN% and
%frNN% template variables from the command line. If you do this,
remember to use underscores (_) to indicate spaces. Example:
C:\> bgfax /send output.fax 555-1212 /fr=BGFAX_Tech_Support /to=John_Doe
To: John Doe From: BGFAX Tech Support 05/08/94 16:25 Pg 01/15
MISCELLANEOUS /SEND OPTIONS
===========================
/C1 Some Class 2 modems have bugs and cannot send to all fax machines
reliably in Class 2 mode. Because of this, the /C1 parameter is
available. It causes BGFAX to force the use of Class 1 when
sending:
bgfax /send c:\bgfax\fax0001.fax 893-9124 /c1
maximum Some fax machines and fax modems don't operate very well together
at 14400 speeds. You can force BGFAX to use a lower maximum speed
by putting the BPS rate after the send command, e.g.:
bgfax /send:9600 fax0001.fax 893-9124
bgfax /send:7200 fax0001.fax 893-9124
bgfax /send:12000 fax0001.fax 1-713-893-9124 /c1
/SMD A special option, /SMD, is available for my testing purposes only.
You should NEVER use this option. Basically, between each page,
it will tell the remote fax machine another "document" is coming
next, rather than the normal response that another "page" is
coming next. Example:
bgfax /send fax0001.fax 893-9124 /smd
REMEMBER, /SMD is only for testing purposes. DON'T USE /SMD!
/NB Some people do not want top of page banners to be added by BGFAX.
The /NB switch will do this. (PLEASE NOTE THAT UNITED STATES AND
CANADIAN CITIZENS CANNOT LEGALLY USE THIS SWITCH.)
/XB For some reason, you may want to tell BGFAX to use an existing
BGFAX top of page temporary fax graphics file (BGFAX.HH$). This
will prevent BGFAX from exec()'ing MAKEFAX.EXE. The only real
situation that you'd want to use this in, is if you were so low on
memory you didn't have enough to have BGFAX shell to MAKEFAX, or
if you wanted to design top of page banners completely independant
of BGFAX's fh= template. Ask me about MAKEFAX's internal /HDR
command if you want more details about this. (Basically, if you
will be sending out a 4 page fax, you will create a 4 line ASCII
text file called BGFAX.H$$ that has the header text for the top of
each page. Running MAKEFAX /HDR will take the BGFAX.H$$ ASCII file
and convert it to a BGFAX.HH$ graphics file. All BGFAX.H?$ files
must appear in the BGFAX environment directory. If the fax
document you are sending will be high resolution, you will also
need to do MAKEFAX /HDR /HR -- If you are going to be sending a 2D
fax document, you'll need to do MAKEFAX /HDR /2D ).
FAXOUT.LOG
==========
A FAXOUT.LOG file is created when sending out faxes to indicate
the success or failure. Here is an example:
Date Time ET Bytes Rate Filename Phone Number Pgs Notes
-------------------------------------------------------------------------------
03-22 13:18 00:25 3882 14400 RESPOND.FAX 8939124 2 Finished
03-22 13:18 00:11 3884 NOFAX RESPOND.FAX 8939124 0 Busy
03-22 13:19 00:11 3884 NOFAX RESPOND.FAX 8939124 0 No Fcon
03-22 13:30 00:31 3208 7200 RESPOND.FAX 8939124 0 Bad Conn
03-22 13:31 00:28 3882 9600 RESPOND.FAX 8939124 2 Finished
03-23 14:42 00:26 3882 14400 RESPOND.FAX 8939124 1 Timeout
03-23 14:44 00:29 3882 NOFAX RESPOND.FAX 8939124 0 BlackLst
03-23 14:47 00:21 3882 NOFAX RESPOND.FAX 8939124 0 Max Busy
03-23 14:51 00:23 3882 14400 RESPOND.FAX 8939124 1 Gen Fail
03-23 14:54 00:05 3882 NOFAX RESPOND.FAX 8939124 0 No Dial
-------------------------------------------------------------
HANGUP STATUS CODES
-------------------------------------------------------------
When BGFAX reports "Problematic fax reception", it will indicate a
fax hangup code, such as [+FHNG: 73]. This chart, taken from the
Supra CLASS_2.TXT fax command set documentation (which, I believe
was taken from the Rockwell Class 2 documentation), allows you to
match up the +FHNG message with its true meaning. For example,
+FHNG: 73 would indicate "T.30 T2 timeout, expected page not
received", which really does not say much, but it may give you
some clue. I don't know what most of these mean myself, so I
don't know whether it will provide you any luck or not, but, many
people asked that it be included, so here it is.
/-----------------------------------------------------------------\
| 2.0 Class 2 | Cause Description |
| --------------|-------------------------------------------------|
| 00-0F 0-9 | CALL PLACEMENT AND TERMINATION |
|---------------|-------------------------------------------------|
| 00 0 | Normal and proper end of connection |
| 01 1 | Ring Detect without successful handshake |
| 02 2 | Call aborted, from +FK/+FKS or <CAN> |
| 03 3 | No Loop Current |
| 04 4,n/a | Ringback detected, no answer (timeout) |
| 05 n/a | Ringback detected, answer without CED |
|---------------|-------------------------------------------------|
| 10-1F 10-19 | TRANSMIT PHASE A & MISCELLANEOUS ERRORS |
|---------------|-------------------------------------------------|
| 10 10 | Unspecified Phase A error |
| 11 11 | No Answer (T.30 T1 timeout) |
|---------------|-------------------------------------------------|
| 20-3F 20-39 | TRANSMIT PHASE B HANGUP CODES |
|---------------|-------------------------------------------------|
| 20 20 | Unspecified Transmit Phase B error |
| 21 21 | Remote cannot receive or send |
| 22 22 | COMREC error in transmit Phase B |
| 23 23 | COMREC invalid command received |
| 24 24 | RSPEC error |
| 25 25 | DCS sent three times without response |
| 26 26 | DIS/DTC received 3 times; DCS not recognized |
| 27 27 | Failure to train at 2400 bps or +FMS/ |
| | +FMINSP value |
| 28 28 | RSPREC invalid response received |
|---------------|-------------------------------------------------|
| 40-4F 40-49 | TRANSMIT PHASE C HANGUP CODES |
|---------------|-------------------------------------------------|
| 40 40 | Unspecified Transmit Phase C error |
| 41 n/a | Unspecified Image format error |
| 42 n/a | Image conversion error |
| 43 43 | DTE to DCE data underflow |
| 44 n/a | Unrecognized Transparent data command |
| 45 n/a | Image error, line length wrong |
| 46 n/a | Image error, page length wrong |
| 47 n/a | Image error, wrong compression code |
|---------------|-------------------------------------------------|
| 50-6F 50-69 | TRANSMIT PHASE D HANGUP CODES |
|---------------|-------------------------------------------------|
| 50 50 | Unspecified Transmit Phase D error |
| 51 51 | RSPREC error |
| 52 52 | No response to MPS repeated 3 times |
| 53 53 | Invalid response to MPS |
| 54 54 | No response to EOP repeated 3 times |
| 55 55 | Invalid response to EOP |
| 56 56 | No response to EOM repeated 3 times |
| 57 57 | Invalid response to EOM |
| 58 58 | Unable to continue after PIN or PIP |
|---------------|-------------------------------------------------|
| 70-8F 70-89 | RECEIVE PHASE B HANGUP CODES |
|---------------|-------------------------------------------------|
| 70 70 | Unspecified Receive Phase B error |
| 71 71 | RSPREC error (before TCF??) |
| 72 72 | COMREC error (after TCF??) |
| 73 73 | T.30 T2 timeout, expected page not received |
| 74 74 | T.30 T1 timeout after EOM received |
|---------------|-------------------------------------------------|
| 90-9F 90-99 | RECEIVE PHASE C HANGUP CODES |
|---------------|-------------------------------------------------|
| 90 90 | Unspecified Receive Phase C error |
| 91 91 | Missing EOL after 5 seconds |
| n/a 92 | < Not assigned > /--- Rockwell only |
| 92 -Note-> 94 | Bad CRC or frame (ECM {or BFT} modes) |
| 93 93 | DCE to DTE buffer overflow |
|---------------|-------------------------------------------------|
| A0-BF 100-119 | RECEIVE PHASE D HANGUP CODES |
|---------------|-------------------------------------------------|
| A0 100 | Unspecified Receive Phase D errors |
| A1 101 | RSPREC invalid response received |
| A2 102 | COMREC invalid response received |
| A3 103 | Unable to continue after PIN or PIP |
|---------------|-------------------------------------------------|
| C0-DF n/a | RESERVED FOR FUTURE STANDARDIZATION |
| E0-FF n/a | REVERVED FOR MANUFACTURER SPECIFIC USE |
| n/a 120-255 | RESERVED CODES |
\-----------------------------------------------------------------/
-------------------------------------------------------------
LIST OF ALL COMMAND LINE PARAMETERS, SHORT DESCRIPTIONS
------------------------------------------------------------
/NS Eliminates the sound that BGFAX plays after successfully
receiving a fax. Registered version only.
/HW Tells BGFAX to use hardware flow control (CTS) when
sending faxes. See WHATS.NEW for more info. Applies
only to the DOS version of BGFAX.
/NF Make "FAX" appear on screen after fax received, must be
have the NFAX.COM TSR loaded. Use only on 286 machines
and higher. Do not use under OS/2
/OU Use if you are using an "Old USR" modem, i.e., the 21600
only modem. I do not recommened using BGFAX with the
21600 modem in Class 2.0 mode.
/50 Tell BGFAX (DOS version only) to use 50 line text mode
/DW If you are using a Rockwell chipset based modem in
Class 1 receive mode, this parameter changes timing
somewhat to try and make the +FCERROR go away
/ER Extended Results send mode. Discussed earlier.
/NB Do not create top of page banners when sending faxes.
/XB Create you own ASCII banners. Don't use unless you
have read the /XB section of the documentation.
/HB For internal testing purposes only. Don't use.
Has to do with top of page banners.
/NH No Hop. In /HOST mode, BGFAX will normally do a
"screen saving" hop. This takes less CPU resources.
/C1 Forces BGFAX to use Class 1 mode when sending.
/ED Tells BGFAX to use "European Date" format. DD-MM-YY.
/ATO In /HOST mode, use this parameter if you are using
some very old modems in Class 1 mode (some old 2400/9600
modems, as well as the newer USR modems).
/PID:nnn Example... /PID:34 will make all log files named
BGFAX34.LOG to keep from having trouble on multi-node
systems.
/SMD For internal testing purposes only. Don't use.
Tells BGFAX to send each page as a seperate fax
document instead of a fax page.
/300 Tells BGFAX's /HOST mode to allow 300 bps callers.
Only use this on a Class 2, 2.0, or ZyXEL modem.
Class 1 (when adaptive answering is disabled) uses
a string of "CONNECT" to represent a fax connect,
which is the same as a 300 BPS data caller.
/DTE:nnnnn If BGFAX has trouble determining the DTE speed when
used in rear-end mode (sometimes happens on FOSSIL
based systems), you can tell BGFAX what DTE speed the
port is set to. Example... /DTE:57600
People using BGFAX/DOS in a dos session of Windows 3.11,
Windows 95, and OS/2 may need to use this.
/DIS:nnn Useful for limiting/changing the fax capabilities on
a Class 1 modem. Discussed in detail in another part
of the documentation.
/FR:xxxx Overrides the FR= field in BGFAX.CNF when sending
faxes. This text goes in the "From:" field in the
top of page banner. Use underscores instead of
spaces. Example... /FR:BGFAX_Tech_Support
/TO:xxxx Overrides the TO= field in BGFAX.CNF when sending
faxes. Same story as /FR:xxx_xxx.
/EX If you are using an EXAR based fax modem, BGFAX will
not perform DLE escapes so that you can get a readable
fax image when receiving. DO NOT USE THIS COMMAND ON
A ROCKWELL OR OTHER TYPE OF FAX MODEM. Most people
in the United States will never need this parameter.
A few people in other countries might need to use it.
/SB In /HOSE mode for the OS/2 version of BGFAX, it causes
BGFAX/2 to _spawn_ the DOBBS.CMD file so that BBS
software such as Maximus/2 can be used successfully.
/ME In /HOST mode, if you make BGFAX ask the user to hit
<Escape> to load the BBS, normally, if nothing
happens in ten seconds or so, BGFAX times out and
loads the BBS anyway. /ME stands for Must hit Escape
to actually load the BBS. If the user does not,
BGFAX will hang up on them instead of loading the
BBS. Can be used to keep people that don't have
<Esc> keys on their keyboard off your BBS.
/ND In /HOST mode, BGFAX will send a message to any human
(data) callers telling them the BBS is not currently
accepting modem callers. You should never really need
to use this.
-------------------------------------------------------------
ACKNOWLEDGEMENTS
-------------------------------------------------------------
I would like to thank the following people for their assistance
during the initial alpha and beta test phase.
Bill Huther
Brian Wood
Russell Kroll
Ethan Brofman
Ed Lucas
I also think the many people from the Internet and FidoNet that
help out with the the on-going public beta program.
US Robotics, Hayes and Supra have also been very helpful in
getting BGFAX to work/work better with their modems.
-------------------------------------------------------------
SHAREWARE
-------------------------------------------------------------
THIS PROGRAM IS SHAREWARE.
If you use this program for more than four weeks you are required
to register it for its low cost of only $25 US DOLLARS.
Please make sure BGFAX works for you BEFORE registering. If you
have a question or problem, I'll answer it (or say I don't know
the answer) whether you have registered or not. I receive so much
mail that it sometimes takes me up to two months to reply to your
question. Again, this is whether you are registered or not.
Voice contact is the only way you will be able to get prompt reply.
Registrations encourage frequent updates.
If you are paying by check or money order, please print out the
REGISTER.FRM file, fill it out, and mail it to my address. Please
try your best to make sure checks are drawn on a US bank.
If you are paying by credit card (Visa, Mastercard, Discover or
American Express) you can (1) mail the form to me, (2) fax the
form to me, (3) netmail the form to me, or (4) call my BBS and
open door #6 and quickly register.
You can also register with Authur Mol in the Netherlands. (See
the REGISTER.NL file for more info. I hope you read Dutch.)
Hamish Moffatt is the registration agent for Australia. (See
the REGISTER.AUS file for more info. This one is in English.)
I will mail (or air mail) registration letters to everyone who
registers. They will include your registration codes. If you
should ever lose the codes, you can call my BBS and open door #6
to grab your codes off the BGFAX registration database.
-------------------------------------------------------------
Regards,
B.J. Guillot
"Don't take a vacation while basting your Rick Roger's turkey."
-- Yan Can Cook, PBS television network