home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
OS/2 Shareware BBS: 3 Comm
/
03-Comm.zip
/
romes100.zip
/
ROMES.INF
(
.txt
)
< prev
next >
Wrap
OS/2 Help File
|
1999-09-11
|
271KB
|
2,097 lines
ΓòÉΓòÉΓòÉ 1. Introduction ΓòÉΓòÉΓòÉ
RoboticsMessenger (RM/2) controls the USR Message Modems (Plus and Pro)
With RM/2 (in conjunction with e.g. Faxworks, HyperAccessLite, VDIAL/2) the
Phonetools delivered with the Modem are fully substituted by OS/2-Programs, so
there is no need to start a WINOS/2-Session.
Thanks to Manfred Agne <Manfred.Agne@munich.netsurf.de> who has spend Rossen a
Sybil License :-))) so the development of this complex solution was possible
ΓòÉΓòÉΓòÉ 2. Installation ΓòÉΓòÉΓòÉ
Installation is simple. Just unzip the archive and run install.cmd. No entries
are done in the config.sys or in the OS/2 ini files. For removing simply delete
the selected directory.
ΓòÉΓòÉΓòÉ 3. Setup ΓòÉΓòÉΓòÉ
Open RoboticsMessenger/2.
For the correct settings consult also the smp_sdk.pdf file available at
ftp://ftp.3Com.de/pub (ATTENTION Developers: it contains some bugs !!).
It is also recommended to upgrade the code of the modem to the latest available
one. Look at ftp://ftp.3Com.de/pub and choose the dos version of the update (in
case you don't want to install windows9x - and there are a plenty of good
reasons for not doing that).
If you do a 'right mouse click' in RM/2 you can select the 'used font'and its
size (e.g. WarpSans 9.0 works fine with 1024X768 screenresolution)
As the log file pops in front whenever you do an action adjust its size and
position so it will no longer disturb, but give you useful informations.
Now click on the 'Modem-Setup' Button and make the settings on the correspondig
Notebook pages.
ΓòÉΓòÉΓòÉ 3.1. Message Modem ΓòÉΓòÉΓòÉ
These settings are valid for all Modem Types (Plus and Pro)
1. Self Mode
enables the 'self mode' of the message modems, so that they can receive faxes
and messages independent from the computer. Please select first the correct
Modem Type, if you own the MESSAGE PRO activate the corresponding checkbox. If
you select to disable the self-mode, this setting is saved until the next start
of the RoboticsMessenger/2. Each time you start the RoboticsMessenger/2, or
after using the 'Initialize' Button on the 'Main-Page' the self-mode is
activated! (Auto-Initialize).
MESSAGE MODEM (The AT command is AT+MCS=1 for on, AT+MCS=0 for off).
MESSAGE MODEM PRO (The AT command is AT+MCA=1 for on, AT+MCA=0 for off).
TIP: Cause the RoboticsMessenger/2 uses a auto-initialize routine everytime
he's started, deselect - if you want to deactivate the self-mode permanently -
the 'autoinit' checkbox.
TIP: Some users complained that the selfmode is deactivated everytime after
they used another communication program (e.g. an internet dialer). If you read
your modem handbook carefully, you'll find some AT-COMMANDS for storing the
actual mode (with selfmode enabled !) in a NVRAM PROFILE. After making the
correct settings (naturally you must also use this profile as default) the
modem will deactivate the 'selfmode' when it goes into the 'datamode' and
restores the 'selfmode' after finishing the communication program. Quite nice,
cause from now on you never have to activate the 'selfmode' again, so RTFM ;-).
But be careful not to mess up your profile, if this happens send a ATZ4 to the
modem so that the custom default settings made by 3COM/USRobotics are used.
2. Call Monitor
enables the 'Message Control Monitor', i.e. audio signals are routed to the
speaker (AT command is AT+MCM=1 for on, AT+MCM=0 for off)
3. Voice Reception
enables the reception of voice messages (AT command is AT+MCV=1 for on,
AT+MCV=0 for off)
4. Fax Reception
enables the reception of faxes (AT command is AT+MCF=1 for on, AT+MCF=0 for
off)
5. DialUp Retrieval
enables the remote retrieve of the stored voice messages (AT command is
AT+MCD=1 for on, AT+MCD=0 for off). Consult your Modem Handbook for using this
feature
6. Report Clock (NOT IN THE PHONETOOLS)
reports the current clock setting (AT command is AT+MCC?)
7. Reset Clock (NOT IN THE PHONETOOLS)
(Re-)starts the build-in clock (AT command is AT+MCC)
8. Incoming Rings
sets the number of incoming rings before the modem answers between 3-6 (AT
command is AT+MCR=X)
ATTENTION For a correct teamwork together with a faxing program (e.g. Faxworks)
you should select in the faxprogram a smaller amount of 'incoming rings' than
in the 'modem setup'. Example: When you defined in RoboticsMessenger/2, that
the MESSAGE MODEM should answer after 5 Rings, you should select in Faxworks 3
or less rings, cause otherwise the messages are stored into the modem memory
and the faxprogram has no chance to get the connection. :
9. Voice Message Duration
specifies the duration of received voice messages in seconds, range 1-254, 0 or
255 is no limitation (AT command AT+MVD=X)
10. FaxID
Your complete phone number including the country code (e.g. ++49 30 1234567)
ATTENTION it seems that the modem has an bug !
11. Dialup Password
sets up and stores the dialup password. Insert a 4-digit string e.g. 1111 (AT
Command is AT+MCP=4-digit string)
12. Change COM Port
Select the COM Port to which your modem is connect to, then press chance COM
Port
13. Read Settings
reads the stored settings.
ATTENTION there is no 'autoread' like in the Phonetools, cause this slows down
the use.
14. New Settings
Transfers and stores the new settings to your modem
ATTENTION this could take some time, wait till the log shows ok.
ΓòÉΓòÉΓòÉ 3.2. Message Modem Pro ΓòÉΓòÉΓòÉ
Originally there should be exclusively to OS/2 the possibility to do a
fax-forwarding as introduced with the modem-code 14.2.7. As USRobotics /3Com
has withdrawn/not implemented this feature in Version 12.2.8 available on as
the latest modemcode there is only a message on this page.
ΓòÉΓòÉΓòÉ 3.3. Greetings ΓòÉΓòÉΓòÉ
1. Play Greeting
plays the greeting message recorded by you (press stop to interrupt) (AT
command AT+MVP=0)
2. Record Greeting
records the greeting message, press stop at the end of your recording (AT
command AT+MVR=0)
3. Play "MEMORY FULL" Message (NOT IN THE PHONETOOLS)
plays the memory full message recorded by you (press stop to interrupt) (AT
command AT+MVP=255)
4. Record "MEMORY FULL" Message (NOT IN THE PHONETOOLS)
records the memory full message, press stop at the end of your recording. (AT
command AT+MVR=1)
ΓòÉΓòÉΓòÉ 3.4. Special ΓòÉΓòÉΓòÉ
1. Update NVRAM (NOT IN THE PHONETOOLS)
updates the stored informations
2. Erase Flash Memory (NOT IN THE PHONETOOLS)
erases the user sector (see next point), its mirror and the messages sector,
i.e. all stored information is lost! BE CAREFUL WHEN USING IT, it is only for
maintenance purposes! (AT command AT+MEA)
3. Erase User Sector (NOT IN THE PHONETOOLS)
erases the user sector which holds, the FaxID string, the outgoing message and
the memory full message. BE CAREFUL WHEN USING IT, it is only for maintenance
purposes! (AT command AT+MEU)
ΓòÉΓòÉΓòÉ 3.5. Editing of the added frec cfg ΓòÉΓòÉΓòÉ
This step is necessary for converting the Raw G3 faxes and GSM sound files to
TIFF and WAV, without these settings frec and pcmtowav won't function!
Open with any editor (e.g. e.exe) the file frec.cfg and adjust the following
lines
LocalID Your FAX ID; e.g ++49 30 1234567
ComPort The COM port where your modem is attached; e.g. COM2
THIS IS THE MINIMUM SETTING FOR FREC and only a subset. Please consult the frec
chapter for a complete documentation
ΓòÉΓòÉΓòÉ 3.6. We are ready to lift off ;-) ΓòÉΓòÉΓòÉ
Now you're ready.
Start RoboticsMessenger/2, lay back and enjoy the windoze free 'total recall'
of your message modem.
ΓòÉΓòÉΓòÉ 4. Usage ΓòÉΓòÉΓòÉ
On the next pages you'll find detailed explanations how to use
RoboticsMessenger/2
ΓòÉΓòÉΓòÉ 4.1. Main Page ΓòÉΓòÉΓòÉ
Starting the RoboticsMessenger/2 makes an autoinitialisation, this means all
for the use necessary parameters are enabled, also the self-mode (even when you
have disabled it in the modem setup). According to our experiences you should
not run into any trouble with the activated self-mode even when using other
programs. But if you want to deactivate the self-mode for permanent you can
find in modem setup a checkbox. If you have deactivated the 'autoinit' in the
modem setup you have to press first 'Initialize' before doing other actions.
click the 'Status Report'-Button to get a detailed report of the received
messages. You can scroll through the message window by using the mouse, the
down and up, or the page buttons on your keyboard.
Btw. 'D', 'H', 'M' stands for the Day(s), Hour(s) and Minute(s) since the last
reset of the internal modem clock. 'R' stands for released, and 'C' for
cleared.
If you click on the arrow near the 'drop-down-list' window titled 'Modem
Report' you'll get some informations about your modem, like the used memory, if
the outgoing messages are there etc.
If you select an voice file and press 'play voice message' you can hear the
message through your modems speaker. By a right mouse click and selecting 'user
break' you can interrupt the playing.
Click 'memory dump' to transfer the received messages into your computer.
Instead of the title 'Modem Report' now appears a text showing you how many %
of the memory has been transferred and how many kByte are already transferred
until now.
ATTENTION: this could take some time !, wait till the log says ok (transfer
speed is around 2kbyte/s). (AT command is AT+MTM).
Then press 'make message files', to seperate the transferred dump.dat into Raw
G3 faxes and GSM sound files. The files are stored in the subdirectories 'fax'
and 'voice'.
Now press 'convert msg files', to convert the faxes to Tiff and the voices to
wav. The generated messages will appear at the 'message files' page.
ATTENTION: All actual received faxes are stored in ONE SINGLE FAX FILE. This
has the advantage, that interrupted faxes are somehow 'glued' together, but on
the other hand the disadvantage that different faxes are stored together in one
fax.
You can delete the received messages selecting 'erase all messages'. (AT
command AT+MEM). This button erases the modem memory.
Unfortunately it is not possible to delete single messages, but this is a
<feature> of 3Com we can't change.
ΓòÉΓòÉΓòÉ 4.1.1. Error correction ΓòÉΓòÉΓòÉ
After processing 'memory dump' which transfers the modem memory to a file named
'dump.dat' you can try the command line tool splitdump.exe by Dr.Pollack (this
file is also copied to your RM/2 folder).
Usage: splitdump.exe dump.dat.
If the received messages have 'bad blocks' (this appeared often with the early
flash biosses) you can patch them by selecting the bad block and pressing
'patch block' on the seperate 'pacht dump file' page.
REMEMBER THIS IS AN ULTIMA RATIO if nothing else works, always try splitdump
before patching.
You can start Romes with the 'log' parameter, so all AT-Commands and their
return codes are stored in a log file. If RoboticsMessenger/2 fails to work you
can send us the log for error correction.
If you got a Fax which sqeezes in printing several pages on one load it with
PMView and scale only the width in the printing dialog to get the right numbers
of pages (resulting width should be 21cm for A4, or 21,59cm for legal, but
maybe you have to experiment). When printing you get a readable document (but
not a professional looking fax).
ΓòÉΓòÉΓòÉ 4.2. Message Files page ΓòÉΓòÉΓòÉ
There you can delete, see or hear the received files, individually for fax and
wav. In the upper window are informations shown for every selected file (Wav
and Fax), e.g.: .gsm : 16, this means the original file was a GSM-Soundfile of
16 secs. duration, or fg3 : 6 stands for Fax Raw G3-File with 6 pages
To play a sound file select it from the left window and press the 'play' button
or make a double leftbutton mouseclick. You can interrupt it by pressing
'stop'. To function you first have to compile a gsm.dll by using the added
sources out of the gsm.zip package. (Legal rights forcing us to do this
unpleasurable step. Please look also at know bugs and limitations).
The fax files can be viewed and printed selecting a file from the right window
and then pressing 'view fax' or make a double leftbutton mouseclick. This will
start faxview with the given file in your fax directory.
ΓòÉΓòÉΓòÉ 4.2.1. Usage of RAW G3 faxes and GSM-Files ΓòÉΓòÉΓòÉ
You can also view the raw G3 faxes by using the faxviewer of Dr.Pollack. This
is the only Raw G3 faxviewer for OS/2 we know).
But this is only for a first impression and not recommended at all (especially
with faxes more than one page, cause when printing them they are sqeezed to one
page).
You better convert the raw G3 faxes with frec.exe to tiff (the standard OS/2
fax-format), it can also generate the right settings for working together with
faxworks :-). As a benefit for converting them you get remarkably 'cleaner' and
'crispier' faxes.
Once converted the files can be viewed (and printed, etc.) with the faxviewer
by Dr.Pollack, impos/2, Pmview, Faxworks...
Btw. frec can also generate RAW G3 FAXES out of the transfered dump.dat (try
this if RM/2 fails, cause frec has some command line parameters for 'incorrect'
received faxes).
You can convert the GSM sound files also by using pcm2wav, but unfortunately
(see know bugs and limitations) you first have to compile the added sources
from the gsm.zip package to get a gsm.dll :-(( (but you should take a close
look on it). For the usage of pcm2wav read the added documentation.
ΓòÉΓòÉΓòÉ 4.3. Commands Page ΓòÉΓòÉΓòÉ
In the upper window you can type any AT-Command you want e.g.: ati6. After
pressing 'EXECUTE' the command will be sent to the modem and in the lower
window you'll get the modems response.
ΓòÉΓòÉΓòÉ 5. Faxview ΓòÉΓòÉΓòÉ
FAXVIEW is designed to work as:
1) Viewer for images files in TIF or BMP format
2) Printutility for images files in TIF or BMP format
3) Realtime fax viewer for FREC and FSEND
4) Utility to create fonts for FSEND from OS/2 installed fonts
5) Utility to change color of image and save (as BMP or TIF)
6) Maintainance of FAX.LOG and VOICE.LOG
7) User interface for playback of voice files in VOICE.LOG
FAXVIEW is a PM application and needs FAXIMG.DLL to work properly.
The HUFFMAN.DLL is not longer supported!
ΓòÉΓòÉΓòÉ 5.1. Faxview Usage ΓòÉΓòÉΓòÉ
The 'normal' use is quite simple, cause for the most used commands 'open file',
'print', 'turn 180 degrees', 'next page', 'previous page', 'open fax log',
'open voice log', 'save file' and 'zoom' there are buttons in the taskbar.
Using Faxview the first time you should choose in the menue 'options' 'save
preferences', so a faxview ini is written (either in the path where faxview is
stored or in the /os2/ path) and all choices you've made (printer, window
settings, open path, open file type etc.) are reminded for the next start.
In 'advanced' use you can select many options by menue.
FILE lets you open, close or reload a BMP, TIF or TIF in EPS image. br. Save
the file as bmp or tif in different 'tastes', save it as icon, or add the
specific icon to the file.
You can print the file with options and select the printer.
Store the device capabilities (screen, printer and sound). Tiff tag is not
implemented yet.
Open the logs (voice.log and fax log).
And exit the program (Alt x).
EDIT lets you select or deselect the whole file or parts of it.
You can copy the selected to the OS/2 cliboard, or paste the clipboard.
OPTIONS lets adjust the fax to scaled (Alt s, prefered), unscaled (Alt u), zoom
(Alt z) or scale it to the Faxview window (prefered, scaled has also to be
selected).
You can change the drawing mode to Gpi Draw and Winbilevelmode (go to command
lines for more information).
Rotate the image (90, 180 and 270 degrees).
Invert the image if shown as negative (Alt n).
Optimize the color palette (if you use 256 colors or less).
Save the choosen preferences (this means all that you've selected is saved as
preference in the faxview.ini).
Make fax fonts (necessary for sending faxes with fsend out of fax*.lzh).
Additionally there are some possibilities to chance the image (Graymode,
Colormode and convert it to different Color- and Grayresolutions, or to Black
and White).
VIEW lets you select the page you want to view.
HELP shows the product information and lets you select a wav file to play.
Showing help is not implemented yet.
ΓòÉΓòÉΓòÉ 5.2. COMMAND LINE PARAMETERS ΓòÉΓòÉΓòÉ
FAXVIEW accepts a few commandline options: These are additional informations
and not needed for using Faxview together with the RoboticsMessenger/2.
-VOICELOG
-FAXLOG
FAXVIEW starts with the LogWindow. Path to FAX.LOG and VOICE.LOG should be
stored in FAXVIEW.INI by entering the correct path and 'Save Preferences'.
-GPIDRAW
Formerly, this was named '-FASTDRAW', but has changed in version 0.39a. It is
possible to influence this by 'Option' in menu.
Normally, FAXVIEW uses a double buffering image routine to display or print a
bitmap. First the bitmap is copy to a memory device and the resulting hBitmap
is than drawn to screen/printer by GpiWCBitBlt, which is also performing
streching or shrinking if in 'scale' mode.
If using '-GPIDRAW' (or selecting it in menu), GpiDrawBits (streched if scaled)
draws directly to screen/printer and no hBitmap is created.
The default (double buffering and GpiWCBitBlt) seems to work on each display
and printer. The creation of the intermediare bitmap is fast enough for little
images (not more than 200 pixel per direction), but with larger images,
-GPIDRAW improves speed enormously, but as said above, it does not work on each
device...
-WINBILEVELMODE
Obviously, WINDOWS (3.x) applications treat bilevel (black&white) bitmaps
differently than OS/2 PM when drawing to a device. Due to the fact, that
bilevel bitmaps HAVE a ColorTable, color of resulting image can be interpreted
as indexed (0-bits refer to ColorIndex 0 and 1-bits refer to ColorIndex 1) as
described in Microsfts Windows Software Development Kit Reference or strictly
0-bits have background color and 1-bits have foreground color as described in
OS/2 GPI reference. As a surprise, most WINDOWS (3.x) application use methode
of GPIREF and most OS/2 applications use methode of MS Windows SDK. CONFUSING!
Normally, FAXVIEW works in the mode that ColorIndex is only used from GPI
itself, while in WINBILEVELMODE, foreground and background colors are set
according to ColorIndex. Try carefully before using... not fully tested!
This parameter is also accessable via menu - option.
-NEGATIVMODE
It can be watched, that some applications (WINDOWS and OS/2 PM) additionally
inverse there produced bitmaps and can only treat inverted bitmaps in the right
way. This parameter works INDEPENDANTLY of the menu - option selection and
should be used only in batch printing. Try carefully before using... not fully
tested!
-IDLEPRINT
Printing is quite fast and depends on the printer device driver. Certain
printer drivers (esp if used in 'printer specific data' mode) are very slow and
blocks in fact the whole system. With this option, such drivers will work in
'idle time', a portion of time, where no other activity takes place. this makes
the printout more timeconsumeing, but other tasks are as fast as usual. Try
with care!
-PRINT | -PRINT<QUEUENAME>
This is a switch to enable batch-print-facility of FAXVIEW. You can print one
(and ONLY one) file (single or multipage TIF or BMP) to the default printer -
this is the printer you have enabled by clicking right mouse button on the
desktops printer icon and selecting 'Set default' (in german 'Standard')- or to
'queuename' - use excatly the same name as directory in SPOOL is named - . No
wildcards ('?' or '*') should be in
'-b<filename>'. FAXVIEW is started iconized (same as additional -ICON).
-FROMPAGE<startpage>
Submit pagenumber for startpage to print (no space in commandline!).
-TOPAGE<endpage>
Submit pagenumber for endpage to print (no space in commandline!).
-PAGES<pagecount>
Submit pagecount for number of pages from startpage (no space in commandline!).
These three keywords are only usefull if '-PRINT' is used.
-QUEUE<QUEUENAME>
Preselect a printerqueue for further working as default printer (is highlighted
in 'Printer Setup').
-PAGEDESC
If TIF-format, entries PageNo, DocumentName, ImageDescription, SoftWare and
DateTime are printed also (if exist).
-ICON
FaxView is started 'iconized', useful eg. when used as a pipe-server.
-B <TIF_or_BMP_file> or -B<TIF_or_BMP_file>
-I <TIF_or_BMP_file) or -I<TIF_or_BMP_file>
FAXVIEW will 'come up' with the file you have chosen. You can use wildcards (*
or ?). In this case only the filedialog (when selecting OPEN) will point to the
selected path. The optional blank between the switch character and the filename
has only historycal reasons.
-P <name_of_a_pipe>
Alternativ method to use FaxView in conjunction with FREC. FIRST start FaxView
(eg. FAXVIEW -P\PIPE\VIEW1 [-ICON]). FaxView will wait for FREC, if this is
called with -v\PIPE\VIEW1 too. If -ICON option is used, each time FREC
activates FaxView, FaxView is restored to screen. When FREC finishes, FaxView
will be iconized again.
-D <ID_string>
DO NOT USE THIS OPTION !!! It's mentioned here only for completeness! FREC uses
this option to 'transmit' vital values for the 'realtimemode'. If used from the
commandline, unpredictable results (eg crash of the whole WPS) may occure!!!
-E
Normaly, FAXVIEW tries to 'collect' (partially) numerical named files (e.g.
PAGEnnnn.TIF) to present as multipaged. If using this switch, each file is
treated as single page. This feature is also per default enabled for extention
*.FAX!
-ERRORLOG
Faxview must be called with '2>ERROR.LOG' in commandline to redirect stderr to
file ERROR.LOG.
-#<idx_no>
This is a special commandline option to easyly load fax files via the
indexnumber. Fax files MUST be in the directory where FaxLog points to. The
FaxLog can be set in file menu and saved by options.
To load FX000123.FAX simply enter '-#123'. This feature also works in batch
print mode. To load the last recent stored fax, '-#?' can be used. Information
about the index is extracted from FAX.IDX, which is normally in the same
directory as FAX.LOG.
If the received fax from FREC should be printed immediatly (and FaxLog and
FaxIdx is enabled) simply use:
FAXVIEW -#? -PRINT
-T<taskno>
Select a tasknumber for a specific instance of FAXVIEW. For each tasknumber a
different entry in FAXVIEW.INI is maintained.
-SCALE or -UNSCALE
Overwrites the (default) setting from INI.
ONLY FOR TESTING:-K<TIFF_Compression_Scheme_for_Rawdata>
Same as for FREC, default '-k3' is assumed, see also '-R' below!
-R or -R<TIFF_FillOrder_for_Rawdata>
Default '-r1' is assumed. FAXVIEW is able to read fax rawdata as yielded by
some mailers.
Valid values are only 1 and 2!
ATTENTION! If compression or fillorder does not exactly match the requirements
of raw data, it is highly possible, that PM (and WPS) will CRASH! Do not use
it!
Use FREC to convert fax raw data!
-HIGHRES or -LOWRES
Raw fax data is assumed (if in 'scale-mode') in 204x196dpi (default) or
204x98dpi, as submitted by command.
-S<Gamma_or_BlackTrigger>
Values between 0.1 and 4.99 are treated as gamma values for DIFFUSED and
DITHERED representation (trigger for black is set to 127 = 50%). Values from 5
to 254 (2 - 99%) are treated as trigger for BLACK&WHITE (BiLevel) where gamma
is set to 1.0. You can influence both gamma and black trigger by entering both
values consecutive:
-S1.2 .... selects gamma
-S135 .... selects black trigger
ATTENTION! This is valid only for printing if SIZING of image is selected!
Menu Option - Change image is not (yet) influenced of '-S' switch!
If '-r' or '-k' is used, a raw fax file MUST by supplied by commandline ('-b'
or '-i'). The commandline options as described ONLY FOR TESTING are NOT TESTED
in batch printing and therefore will not work as assumed!!!
FileDialog now allows to select values for raw data (other than BMP, TIF or TIF
in EPS). use this VERY, VERY carefully! If supplied values do not match
EXACTLY, PM (and WPS) will crash and reboot is neccessary!
FAXVIEW stores (if enabled) its system values (Origin, Size, Maximized, Scaled,
FilePath and FileType) in FAXVIEW.INI. This file may either be located in the
same drive and directory where FAXVIEW.EXE is stored or directory which is
declared by SET USER_INI= in CONFIG.SYS. If no such environment is found,
FAXVIEW.INI is created in X:\OS2\ where X is your OS/2 bootdrive. This may be
helpful if FAXVIEW is installed on a network server and each workstation could
have its own settings.
At startup, FAXVIEW searches X:\OS2\ and if there is no FAXVIEW.INI, it assumes
the file is where FAXVIEW.EXE is stored (on first start, the INI file is
therefore placed here). You can copy FAXVIEW.INI to the users bootdrive to fix
the settings.
If printing, only the cursor changes to sign 'print in progress'. No security
is done for the case you finish FAXVIEW irregulary (eg by window list or some
'killers') when printing!!!
ΓòÉΓòÉΓòÉ 5.2.1. One additional word for printing ΓòÉΓòÉΓòÉ
It was reported, that bilevel images, which are well display on screen, were
printed INVERS (and are also shown invers in spool file).
I have searched, what this could be, but only possibility: printer driver does
NOT check colormap in bilevel bitmap. In bilevel BMP, colorvalue 0 is normaly
0,0,0 and colorval 1 is normaly 255,255,255. Black pixels are therefore 0 and
white pixels 1 (is in fact an idex to 'colormap').
It is also legal, to use 255,255,255 for colorval 0 and 0,0,0 for colorval 1.
Black pixels are than represented by 1 and white pixels by 0. I know some
software (and maybe some printerdrivers do also) which IGNORES colormap and
uses colorinformation only from pixelvalue (which is WRONG)!
Bug reports are wellcomed, but please do not ask for new features. FAXVIEW is
primarly designed as 'realtime viewer' (and it will work perfectly :-).
Viewing TIF and BMP should also work, but printing 'may' only work.
One final word to 'Scaled' and 'Unscaled':
In 'realtime mode' you MUST use 'Unscaled' and size the image with the
commandline option (-STANDARD, -PREVIEW, -LARGE or -BITS) when calling FREC!!!
TIF images (TIF) with X_Resolution NOT EQUAL to Y_Resolution (eg. fax in
'normal' = 204x98 dpi) are shown only in 'scaled' mode in right size! In
'unscaled' mode, FAXVIEW shows a 1:1 image from the source file, which could
result in shrinked or enlarged (unscaled) images! This is NO BUG!
Printouts to paper (eg DIN A4) are adjusted in a way, that either the image is
'centered' if images size is less then papersize or the image shrinked to fit
in page.
In order to construct faxes from text files, you may need other fonts than
(internally) supplied with FSEND. FAXVIEW gives you the possibility to
'convert' PM fonts (in fact all installed fonts in OS/2) to a fonttype, FSEND
can use to create a faxpage. It is strongly recommended, to use only fixed
(nonproportional) fonts. Proportional fonts are also accepted, but with a fixed
character width (the maximal width a character can have).
With the supplied application FONTEDIT you can 'proportionalize' fonts and
FSEND may use it. Keep in mind, that fonts may by 'copyrighted'!
One LAST word to fax rawdata files:
USE FREC to convert them to TIF! FAXVIEW MAY display them, but WITHOUT any
mechanism to 'resynchronise' if distorted rawdata is encountered! The
possibility to hang your PM is VERY HIGH, because ABSOLUTLY NO TESTS will be
done on rawdata.
Saving of an image is possible (BMP or TIF), but only the 'shown' image can be
saved. So use 'Reload page' if the original contents should be saved (in cases
the original is changed). When saving to an existing TIF file, the user is
asked for 'Overwrite', 'Cancel' or 'Append'. If choosing 'Append', the image is
appended to existing TIF but PageNumbers of this TIF (if existing) are not
updated.
ΓòÉΓòÉΓòÉ 6. Frec ΓòÉΓòÉΓòÉ
Frec Version x.yyz
Reference Manual
These Informations are for completeness and only needed if you want to use frec
for other purposes.
Created 1992 - 1999 by Dr. Harald Pollack & Bernhard Seidl
ΓòÉΓòÉΓòÉ 6.1. ABBREVIATIONS USED IN THIS DOCUMENTATION ΓòÉΓòÉΓòÉ
DTE . . . . . . . . . . Data Terminal Equipment, your PC
DCE . . . . . . . . . . Data Communication Equipment, your MODEM
CCITT/ITU T.4 . . . . . International standard for coding fax data.
CCITT/ITU T.30 . . . . International standard for transmitting fax over a
public switched telephone network.
ANSI/EIA/TIA-578-1990 . Asynchronous Facsimile DCE Control Standard Service
Class I (the common used class 1).
ANSI/TIA/EIA-592-1993 . Asynchronous Facsimile DCE Control Standard Service
Class II (the real class 2.0).
ΓòÉΓòÉΓòÉ 6.2. WARRANTY ΓòÉΓòÉΓòÉ
There is no warranty on this program. You can use it for your own risk.
The program should work the best way it can. If you detect some malefunction or
bugs, please report it with the correspondent FREC.DEB log file to the autor.
Without the log file it is almost inpossible to find and fix a bug. Common bugs
will be corrected if they are of vital interrest to the program. Wishes for
some extentions (but not printing and viewing) and hints for making things
better are welcome.
ΓòÉΓòÉΓòÉ 6.3. SOURCE CODE OF THE PROGRAM ΓòÉΓòÉΓòÉ
There was very much work and brain in creating Frec. To much for one person.
So, if anybody has senseful interrest in getting the source code (IBM CSet) he
could get it. There is only one restriction: do not name your program 'Frec'.
You can do anything with the sourcecode, read it, sell it, eat it, use it, but
please do not make a clone named Frec.
Due to the enhancement to FREC.DLL necessary includes (CLGLOBAL.H and
COMCAPI.H) are not supplied.
ΓòÉΓòÉΓòÉ 6.4. UPGRADING TO A NEW VERSION ΓòÉΓòÉΓòÉ
New versions of Frec are always packed in LZH type archives. It is recommended
to replace all EXE and DLL files and not to use parts of older version
(especially DLL files). New versions of Frec often use new or modified
configuration entries and commandline options. Please read all available
documentation carefully before using a new version.
ΓòÉΓòÉΓòÉ 6.5. THE CONFIGURATION FILE ΓòÉΓòÉΓòÉ
The configuration file keeps all information required. FREC.CFG needs to be
modified to suit your system. Please have a look at the sample configuration
file included in the Frec package. In the following section all keywords and
parameters are listed and described.
USER
Name of user of this application may be defined here (31 characters max.). See
also KEY.
KEY
A hex digit string to verify users certification. Keyword USER must also be
defined BEFOR this keyword is used. 'USER' plus 'KEY' gives a personal
signature which will be used for some features. A valid key may be obtained
from author.
NOLOGONBAD
If Frec is used in conjunction with third party environment (e.g. FaxWorks, see
also FAXLOG and FAXIDX keywords) and this keyword is used, no log entry will be
generated if there occured an error while receiving or no fax session was
established.
[TASK <n>]
Starts a section within the configuration file which only effects the selected
task. To end a section you can either use another [TASK <n>] keyword which
would start another section or use the keyword [COMMON], described below.
[COMMON]
All keywords after this statement belong to all tasks.
CONFIGEND
Frec will stop working off the configuration file and everything following this
keyword will be ignored.
LOGBINKLEYSTYLE
Using this keyword Frec will generate BinkleyTerm like log entries.
USROBOTICS
Special keyword to indicate that a USRobotics modem is used. Must be set to
allow some workarounds for nonstandardized actions!
FAESPECIAL
Some modems on the market have a certain behaviour, if used in adaptiv
autoanswer and fax class 1 or 1.0 (AT+FAE=1). If modem detects a fax call it
responses with FAX and CONNECT to indicate the successful session
establishment. If modem detects a data call, it responses with DATA and
reenters the command mode. So software has to send ATO to modem to establish
the data session which is triggered by this parameter.
OLDDTR
Frec uses the methode of 'DTR-drop' (switching modemline DTR off and on) to
reset the modem and to force a on-hook condition. This switching might be done
in two ways (different calls to DosDevIOCtl).
CLMINIMIZEDNOVIEW
If FREC.DLL is called from a minimized CantaLoup/2, FaxView is not started at
all. If machine is highly stressed this is recommanded.
CHANGEBAUD <n>
Some modems on the market must have 19200 bps set in phase C (faxdata
reception). To properly switch to 19200 bps, FAXBAUDRATE must be set to 19200
also. Depending on value <n>, the switch is performed at different states of
(nonstandardized) Class 2 protocol:
0 . . . nothing happens, is equal to not using this keyword
1 . . . FaxBaudRate is set a startup
2 . . . FaxBaudRate is set, when +FCON is detected
3 . . . FaxBaudRate is set, when OK is detected
Note: If CHANGEBAUD is used without parameter <n>, a value of 1 is assumed
(for compatibility of older versions of Frec). If using n=2, Frec must be
called, when modemresponse FAX is received!
Almost all Rockwell chipset modems report 'FAX' before '+FCON'. Unfortunately
there is no common rule which says what value of this keyword is required for
a specific modem. You have to try it out ...
FORCERETRAIN
If Frec is used to receive only raw fax data in PAGEnnnn.RAW files, no
checking of copyquality is done at all. Enabling this feature will always send
RTP(ReTrain Positiv) instead of MCF (MessageConFirmation) to sender of fax.
Preferable on known weak or bad phonelines.
Attention: Fax transmissions by fax modems and unknown fax software (trashware
:-) may fail when receiving this post page message.
LOGLEVEL <n>
Writing to FAXDEBUG depends on this value (0 to 5).
0 ... do NOT write to FAXDEBUG (is equal to 'FAXDEBUG NUL')
1 ... ERROR only
2 ... ERROR + SEND + RECEIVE only
3 ... ERROR + SEND + RECEIVE + ACTION only
4 ... ERROR + SEND + RECEIVE + ACTION + WAIT FOR only
5 ... ERROR + SEND + RECEIVE + ACTION + WAIT FOR + INFO (default)
DEBUG
Enables a lot of stuff for debugging. Do not use, because LOG will increase
enormous.
TIFEXT <extension>
Default extension for saved fax files ".TIF" may be overwritten. If
commandline switch '-ZFAX' is used, this is automatically overwritten by
".FAX" and if '-SFF' is used, extension ".SFF" is used. Use this to enable
some compatibility to third party software.
Attention: If '-ZFAX' or '-SFF' switch is used, TIFEXT is not used!
FAXEXT <extension>
Default extension for saved fax files ".FAX" if FAXLOG and FAXIDX is used. May
be overwritten, but FAXVIEW and third parties applications will never find the
file from index number. If commandline switch '-FAX' or '-SFF' is used, FAXEXT
is never used.
INBOUND <path to inbound>
If DESTNAME and DESTADDR are also defined, a netmail (????????.PKT) is created
each time a fax is stored. Is not in affect, if '-x' commandline switch is
used!
DESTNAME <string>
If this, INBOUND and DESTADDR is defined in FREC.CFG, a netmail is created and
addressed to.
DESTADDR <FidoNet style address> [<paket password>]
Must be defined to create an announcing netmail. Address MUST be in strict 4D
format (zone:net/node.point). To address a node, point 0 must be used.
SRCNAME <string>
Used to form the 'From:' part of the announcing netmail. Default is: "FREC".
SRCADDR <FidoNet style address>
Normally this is the address of local system. Defaults to DESTADDR.
SUBJECTRECFAX <string or '%'>
Used in creation of announcing netmail on incoming fax. If '%' is the first
(or only) character, the filename in which the fax is stored will be placed in
subject part of netmail. Default is: "Announcement of incoming FAX".
RINGCNT <n>
Number of rings FREC is skipping till modem goes off-hook. In stand alone mode
only.
TEXTCOLOR <colorvalue>
Select color of characters on Frec status screen:
0 . . . BLACK
1 . . . BLUE
2 . . . GREEN
3 . . . CYAN
4 . . . RED
5 . . . MAGENTA
6 . . . BROWN
7 . . . LIGHTGRAY
8 . . . DARKGRAY
9 . . . LIGHTBLUE
10 . . LIGHTGREEN
11 . . LIGHTCYAN
12 . . LIGHTRED
13 . . LIGHTMAGENTA
14 . . YELLOW
15 . . WHITE
TEXTBACKGROUNDCOLOR <colorvalue>
Select color of background on Frec status screen.
FRAMECOLOR <colorvalue>
Select color of the frame on Frec status screen.
CLPAGEOK <script or errorlevel or shellno>
If FREC.DLL is called from CantaLoup/2, a simple mechanism will allow further
actions of the mailer if faxreception was sucessful:
- A positiv value forces mailer to exit with this errorlevel.
- A negativ value forces mailer to 'shell' to abs(value).
- A name of a script forces the mailer to execute it.
POLLFILE <filename> [<numerical page indicator>]
Name of file which is passed to FSEND if FREC is frontend for a pollserver.
Can be defined as often as needed.
The filenames are collected and when calling FSEND (DLL or EXE) a temporary
file is created where all filenames and pageindicators are stored. FSEND is
called with '-o@<temp_file>' to pass filenames. Pollfiles can also be supplied
by '-o' and '-o@' commandline switch.
Attention: Not used if Frec acts as a fax poll requester ('-g' parameter)!
This prevents Frec to call Fsend! May be in further versions both send and
receive in one call would be possible!
FSENDCFG <configuration file for FSEND> [<commandline parameter>]
Is the key for Frec to work also as a frontend for Fsend to satisfy
faxpolling. See also POLLFILE. It is no longer supported, to choose between
FSEND.EXE and FSEND.DLL! From now on, FREC searches for FSEND.DLL in LIBPATH.
After the name of the config file for FSEND, optional commandline parameters
for FSEND may be submitted to DLL. These parameter are submitted as last, so
it will overwrite any choice from FREC itself.
Note: If primarly a fax pollservice is offered, use Fsend as the frontend.
Fsend is also capable to receive fax if configured right.
CHECKCOPYQUALITY <YES or NO>
Enables special algorithms to decide if page was of acceptable quality or if a
retrain should be performed by sender. If not a single scanline is received
correctly, a RTN (ReTrain Negativ) is sent. This means a total page reject and
sender normally gives up!
Attention: If '-x' commandline switch is in effect (saving raw data) or ECM is
selected, copyquality is NOT checked.
Note: Frec shows copyquality both in DEBUGFILE and onscreen, like "Page n
decompressed <lc,blc,cblc,llc>".
lc . . . total decompressed correct scanlines,
blc . . total detected bad lines,
cblc . . detected maximal consecutive bad scanlines and
llc . . lost scanlines if LINEBAD DELETE is selected.
This may match modems +FPTS (+FPS) report but if FREC has detected more errors
than modem, FRECs decision counts and modems page status parameter is
overwritten!
PERCENTAGEGOOD <1-100>
Gives Frec an upper boundry for deciding to send RTP (ReTrain Positiv) and
force a retrain. If the percentual part of correct received scan lines is
equal or above this value, a MCF (MessageCoFirmation) is sent. Defaults to 100
(%) but should be set to 95 or 99 if partial page errors could be accepted.
CONSECUTIVEBADMAX <1-255>
If detected consecutive bad scanlines are above this limit, FREC will send a
RTP. Consecutive bad scanlines are normally a good sign for a mismatch in
compression (1-D versus 2-D) or bitorder of faxdata (try with '-f1' or '-f2'
command line parameter).
LOCALID <local faxnumber>
Is used to form CSI (Called Subscriber Identification) or CIG (CallInG
subscriber identification). CSI is sent to modem as +FLID (+FLI) and CIG is
sent as +FCIG (+FPI).
Attention: This parameter is mandatory, Frec is stopped if not defined!
Note: Only '+', ' ' and '0' - '9' are valid characters! All other characters
are invalid and strictly discarded by Frec. String length is limited to 20
characters.
STATIONID <your company or elsewhat>This information is only transmitted, if
faxmodem is able to handle NSF (NonStandardFacility) frames. Usualy, class 1
modems can do it.
LINEBAD <IGNORE or DELETE or PREVIOUS or BLANK>
If a bad scanline is detected, Frec could either IGNORE (default) or DELETE or
copy the PREVIOUS one or leave it BLANK.
Note: Detection of bad scanlines is not a trivial job. On bad phone lines
normally single bits change their state and resynchronisation (to next
scanline) could be performed. If DCE-DTE connection is distorted (e.g. 14400
bps carrier in class 2 with 19200 bps DCE-DTE), one ore more bytes are lost
and resynchronisation may skip one ore more scanlines.
Hint: Avoid 14400 bps carrier in class 2! Keep in mind, that time between
scanlines effects transmission time more than bitrate. Use class 1 if
highspeed is wished. Frec can decide if overall performance is good enough.
Even if modem accepts 14400 bps training, DCE-DTE connection may limit the
result. Because of DLE-shielding bursts of more than 1920 CPS may occure! A
carrier of 14400 bps yields in 14400 / 8 = 1800 CPS.
FAXCLASS <1 or 1.0 or 2 or 2.0 or 2.1>
Select a fax class, your modem is able to handle. Frec is designed to deal
with the standardized methods of class 1 (EIA/TIA-578) or class 2.0
(EIA/TIA-592). ONE version of the manufacturer specific class 2 (publicated
either as CLASS_2.TXT from SUPRA or for the 28800 bps V.FC data-pump from
ROCKWELL) is relativly compatible to class 2.0 in receive mode. Frec supports
(without any warranty) this class 2 also.
Although nobody will believe, first choice of fax class should always be class
1. All lowprice modems support this class in an excellent manner. As a rule of
thumb: the cheaper the modem the lower the fax class :-)
Manufacturer specific fax classes other then the above (like Zyxels class 6 or
the AT#.. version of class 2) or not supported!
FAXBAUDRATE <DCE-DTE bitrate>
Only if fax class 2.0 (two point zero) is used, higher values than 19200 can
be defined here. In class 1 or class 2 strictly use 19200 or leave the default
of 19200.
Some modem on the market allow higher bitrates than 19200 in class 1 and class
2. For 14400 bps carrier, 38400 bps DCE-DTE is highly recommended in this case
of modem.
DATABAUDRATE <DCE-DTE bitrate>
Set to a desirable bitrate or do not use this setting.
RESET <modem command>
It is recommended to use either ATZ or AT&Fn to bring modem to well defined
state. See also flowchart of initialisation. A response of OK must come from
modem or FREC will abort.
Note: modem_init() is not performed if Frec is called with '-p' command line
parameter.
Save callers BaudRate
Switch BaudRate to DataBaudRate
If RESET is defined -> send <modem command> to modem
Wait for OK response
If response not equal OK or timeout -> abort Frec
If FaxBaudRate not equal to DataBaudRate -> switch to FaxBaudRate
Send AT+FCLASS=n to modem
Wait for OK response
If response not equal OK or timeout -> abort Frec
While INIT
Send <modem command> to modem
Wait for OK response
If response not equal OK or timeout -> abort Frec
If fax class is 2 (or 2.0) -> send AT+FLID (+FLI) to modem
Wait for OK response
If response not equal OK or timeout -> abort Frec
Send AT+FCR=1 to modem
Wait for OK response
If response not equal OK or timeout -> abort Frec
Send AT+FDCC (+FCC) to modem
Wait for OK response
If response not equal OK or timeout -> abort Frec If FREC should poll a fax
from elsewhere ->
Send AT+FSPL=1 (+FSP) to modem
Wait for OK response
If response not equal OK or timeout -> abort Frec
Send AT+FCIG (+FPI) to modem
Wait for OK response
If response not equal OK or timeout -> abort Frec
else ->
If FREC is frontend for FSEND to satisfy poll request ->
Send AT+FLPL=1 (+FLP) to modem
Wait for OK response
If response not equal OK or timeout -> abort Frec
ATTENTION! If FREC is called from elsewhere (mailer or other front end)all of
the above initialisation and decisions MUST be performed before FREC is
called! Changing to FaxBaudRate (if CHANGEBAUD is defined) will occure after
receiving OK just before AT+FDR is sent. Keep in mind, that certain modems
need 19200 bps just before switching to fax class!
INIT <modemcommand>
Unlimited number of additional commands to modem which must be acceptable in
the appropiate fax class. See also the flow chart which is performed while
initializing the modem. A response of OK must come from modem or Frec will
abort.
CAPABILITIES <vr,br,wd,ln,df,ec,bf,st[,jp]>
Default is 0,3,0,2,0,0,0,0,0 which means: normal resolution, maximal 9600 bps
in V.29 modulation, 8 inches paperwidth, endless paperlength, 1-D Huffman
coded data, no ECM, no BFT and 0 ms wait between scanlines.
With these values, successful transmission to each receiving station is
possible. If the receiver is not capable of any of these values, Fsend will
adjust to such values, the receiver can (and must) handle.
vr (vertical resolution):
00 . . . normal 204x98 dpi (R8 x 3.85/mm),
01 . . . fine 204x196 dpi (R8 x 7.7/mm),
02 . . . high 204x392 dpi (R8 x 15.4/mm),
04 . . . extra 408x392 dpi (R16 x 15.4/mm),
08 . . . 200x100 dpi,
10 . . . 200x200 dpi,
20 . . . 200x400 dpi,
40 . . . 300x300 dpi,
80 . . . 400x400 dpi (not defined in T.32)
All values for 'vr' are in hexadecimal notation!
Not all resolutions are supported!
br (bit rate):
0 . . . 2400 bps
1 . . . 4800 bps
2 . . . 7200 bps
3 . . . 9600 bps
4 . . . 12000 bps
5 . . . 14400 bps
wd (page width):
R8 R16 200 300 400
d/mm d/mm dpi dpi dpi
0 . . . 1728 3456 1728 2592 3456 (A4 width)
1 . . . 2048 4096 2048 (B4 width)
2 . . . 2432 4864 2432 (A3 width)
3 . . . 1216 2432 (A5 width)
4 . . . 864 1728 (A6 width)
Not all resolutions are supported!
ln (page length):
0 . . . A4 length, 297 mm (not supported)
1 . . . B4 length, 364 mm (not supported)
2 . . . Unlimited length
df (compression scheme):
0 . . . 1-D Modified Huffman (ITU T.4),
1 . . . 2-D Modified read (ITU T.4),
2 . . . 2-D Uncompressed mode (ITU T.4), (not supported)
3 . . . 2-D Modified modified read (ITU T.6)
ec (error correction):
0 . . . do not use ECM 1 . . . Enable Annex A/T.30, ECM (only supported in
class 1)
2 . . . Enable Annex C/T.30, half duplex (not supported)
3 . . . Enable Annex C/T.30, full duplex (not supported)
bf (binary file):
00 . . Disable file transfer modes,
01 . . Select enable BFT (ITU T.434), (not supported)
02 . . Select document transfer mode, (not supported)
04 . . Select edifact mode, (not supported)
08 . . Select basic transfer mode, (not supported)
10 . . Select character mode Annex D/T.4, (not supported)
20 . . Selcet mixed mode Annex E/T.4, (not supported)
40 . . Select processable mode (ITU T.505) (not supported)
All values for 'bf' are in hexadecimal notation !!!
st (time/scanline):
vr = 0 vr > 0
0 . . . 0 ms 0 ms
1 . . . 5 ms 5 ms
2 . . . 10 ms 5 ms
3 . . . 10 ms 10 ms
4 . . . 20 ms 10 ms
5 . . . 20 ms 20 ms
6 . . . 40 ms 20 ms
7 . . . 40 ms 40 ms
jp (JPEG coding):
00 . . Disable JPEG coding,
01 . . Enable JPEG coding (ITU T.81), (not supported)
02 . . Full color mode, (not supported)
04 . . Enable preferred Huffman tables, (not supported)
08 . . 12 bits/pel/component, (not supported)
10 . . No subsampling (1:1:1), (not supported)
20 . . Custom illuminant, (not supported)
40 . . Custom gamut range (not supported)
All values for 'jp' are in hexadecimal notation !!!
CLEANUP <modem command>
Define any modemcommand which will be sent to. No check for any response is
done. CLEANUP is performed in hang_up() like:
If fax class is 1 -> send ATH0 to modem Drop DTR line for 300 ms
If FaxBaudRate not equal to DataBaudRate -> switch to DatabaudRate
If actual BaudRate not equal to callers BaudRate -> Switch to callers BaudRate
If CLEANUP is defined -> Send <modem command> to modem Trash modem response
FAXPATH [SUB [PWD]] <path to where incoming faxes are stored>
This entry is MANDATORY!
If combined with FAXLOG and FAXIDX, compatibility to third parties programs is
given, incoming faxes are stored in <path>\FXnnnnnn.FAX files and entries in
FAXLOG is done. FAXIDX is also incremented.
If used without FAXLOG and FAXIDX (at least one of both keywords must have OFF
in CFG), incoming faxes are stored in <path>\FRECnnnn.TIF, where '.TIF' may be
replaced by setting TIFEXT in CFG (look there).
Filetemplates are no more supported!
Values for SUB and PWD can be supplied. If caller sends a SUB-frame
(Subaddressing), incoming faxes are store in the FAXPATH with the defined SUB
for it. Optionally, a PWD (password) can be defined. If caller sends SUB and
PWD, both must match to select FAXPATH.
It is recommanded, to define one FAXPATH without SUB and PWD, to give caller
without this a chance.
Examples:
FaxPath X:\PATH\ALLFAXES
FaxPath 123 Y:\LANPATH\USERFAX
FaxPath 123 987 Y:\LANPATH\PROTFAX
First one is the 'normal' entry and compatible with former versions of FREC.
Second one defines a subaddress (123) which yields in routing faxes with
subaddress 123 to this path. Third one defines a password (987) protected path
for callers, who supply both. FAXPATH is also used, to form fully qualified
drive,path and filenames for FAXLOG and FAXIDX, which means, that each
'subaddres' has its own log and index!
ATTENTION !!!
NEVER supply 'relativ' pathes anywhere in config! Alsways use absolut path
(drive:\dir\). The trailing backslash can be omitted.
FAXLOG <file name> | OFF
Filename to FAX.LOG and only neccessary, if other than 'FAX.LOG'. Received
faxes from FREC will be joined to FAX.LOG. Each well received fax (hangup code
0) is flagged as 'Rcvd'. If fax is received in (partial) error or even no
session was established at all, entry in FAXLOG is flagged as 'BadRcv'. See
also keyword NOLOGONBAD.
FAXIDX <file name> | OFF
Filename to FAX.IDX and only neccessary, if other than 'FAX.IDX'.
FAXDEBUG <[+]x:\path\frec.log>
This is FREC log and debugging file. Nearly all activities are stored in this
file. If a '+' precedes the path, append mode is used: one log is chained to
the next. Select NUL as filename to disable logging. The logfile contains a
lot of informations in case of errors or situations where help is needed.
Bugreports to the author are only senseful if this logfile is part of the
report.
DIAL <dial command>
Default, a ATD is used. You can define here ATDP or ATDT, if your modem is not
able to distinct between pulse and tone dialing.
COMPORT <COM device>
This keyword is mandatory. If Frec is called with port handle (from elsewhere)
this keyword must exist! The name of the com device is used as a unique
identifier for internal use.
INITFIFO
If a hardware fifo (UART 16550) is detected by COM-device driver, the fifo is
initiallized to Rx=8 and Tx=16.
BINKLOG <file name>
Fully qualified drive, path and filename to your mailers log file. Used either
if FREC works only as an converter for PAGEnnnn.FAX to TIF or if FREC is used
in two pass mode (filename may be any). Supported is BinkleyTerm 2.50 EE (by
Michael Buenter), BinkleyTerm 2.59, 2.60 and 2.60 XE (by Vince Periello and
authorized coauthors) and CantLoup/2 (by Michael Buenter).
Xenia/2 (by Arjen Lentz) is not (yet) supported, because the raw fax is stored
in Zyxels ZFAX format, which is in fact only useable for one single page.
Maybe, Arjen will be able to read 'spagetti code' in future and switch to
senseful fax formats :-)
Obviously, Arjen was going again his own incompatible way. As reported by some
users, Xenia is able to store multipage fax rawdata in a format with extension
QFX which points to an intermediate format of QL2FAX. As supposed, Xenia does
not hit :-)
There is some new, but minor tested stuff in FREC, which is able to handle the
original fax rawdata format of QL2FAX.
DEBUGIDLEPRIORITY <value> or DEBUGREGULARPRIORITY <value>
These keywords, which are mutual exclusive, define the priority (0-31) for the
task (thread) which writes the data to FAXDEBUG file. Default is IDLEPRIORITY
30. Change this setting only, if you are absolutly sure knowing what you do!
Lower priority may yield in a endless blocking debug_thread! No data will be
written to FAXDEBUG and FREC may become 'uncloseable'. On very slow or high
stressed machines, you can try REGULARPRIORITY 0, if IDLEPRIORITY blocks
writing to FAXDEBUG.
Attention: It was reported by users, that some CPU load meters (like MEMSize
or CPUDrive) will TOTALY brake down working of debug_thread. If FREC seems to
be blocked, quite after fax reception is finished, and will never be closed
(even if 'killed') than omit using of such utilities!
SAVEIDLEPRIORITY <value> or SAVEREGULARPRIORITY <value>
These keywords, which are mutual exclusive, define the priority (0-31) for the
task (thread) which writes fax file to disk. Default is IDLEPRIORITY 31. Lower
priority may slow down writing, yielding in incorrect faxreception!
SAVEPRIORITY must be higher than
DEBUGPRIORITY. On slow or high stressed machines, try REGULARPRIORITY 1. You
can disable this priority switching by using the '-fastsave' commandline
switch (which is in fact the same as REGULARPRIORITY 0).
DATETIMEFILE
Special keyword to create TIF filename in the form of
YYMMDD-HHMMSS.TIF (or .FAX)
FaxPath has to point to a storage device which is capabel of LONG filenames
(HPFS or EXT2) otherwise ERROR_FILE_IO is returned.
'FaxLog OFF' must also be used, else this feature is disabled.
Based on a suggestion from Lutz Buchheister.
TSIFILENAME
Special keyword to create TIF filename in the form of
<TSI>.<n>.TIF (or .FAX)
The <TSI> part is constructed from the digits of a received TSI, '+' and ' '
are replaced by '-'. TSI is always 20 character long.
The <n> part is an incrementing number (starting with 1) to make fax from same
caller unique.
If no TSI is received, <TSI> is replaced by "FROM-UNKNOWN".
FaxPath has to point to a storage device which is capabel of LONG filenames
(HPFS or EXT2) otherwise ERROR_FILE_IO is returned.
'FaxLog OFF' must also be used, else this feature is disabled.
Based on a suggestion from Lutz Buchheister.
SOURCEFILENAME
This keyword is used (and only senseful) if FREC acts as fax raw data
converter (-i<rawfile>). Converted fax data is stored in a file, which is made
from the supplied filename and TIFEXT.
'FaxLog OFF' must also be used, else this feature is disabled.
Based on a suggestion from Aglaja Przyborski.
PIPECRLF
If a pipe (-a in commandline) is used to capture status, a leading CR + LF is
inserted in the line.
Additional information:
All file and path specifiers in configuration file are checked against
%<environment>%. If a valid environment entry is found, %<env>% is replaced by
the content of the variable, e.g.:
SET LOG=D:\LOGFILES
BinkLog %LOG%\BINKLEY%TASK%.LOG
FaxDebug %LOG%\FREC%TASK%.LOG
A special 'replacement' is done in all file name entries in configuration file
when '%TASK%' is detected. %TASK% (must be uppercase) is replaced by the
defined task number.
If using FREC.DLL with Cantaloup mailer, the task number from mailer is
provided to Frec. Nevertheless you can overwrite this task number in
'ExtrnDesc' by using '-TASK<n>' command line parameter.
If a debug file is defined and this debug file can not be accessed, than a
'default' in the root of the current drive (\FREC.DEB) is used instead. It is
strongly recommended to use a debug file !! In case of misbehaviour 99% of
faults can be localized quickly and (from the author :-).
ΓòÉΓòÉΓòÉ 6.6. FREC COMMAND LINE PARAMETERS AND SYNTAX ΓòÉΓòÉΓòÉ
The format of the commandline is as follows:
FREC <switch> <switch> ...
-c<config file>
Default Frec assumes the configuration file is named FREC.CFG and located in
the current directory. The '-c' command line parameter can be used to define an
other path and file name.
Configuration file can also be supplied via environment:
SET FAX=x:\path\frec.cfg
or
SET FAXCFG=x:\path\frec.cfg
-Task<n>
Where <n> specifies the task number to be used. See also [TASK <n>] and
[COMMON] keywords in configuration file. If this parameter is not used the
common task will be used.
-s<WAIT_OK>
In accordance to fax standards, Frec uses the +FCO (or +FCON) response from
modem to detect a fax call (in fact the HDLC-flags in V.21). If Frec is called
from a FidoNet mailer than +FCO (or +FCON) is already received when Frec takes
over control (this modem response is used to spwan Frec) and '-sWAIT_OK'
parameter must be used to ensure correct functionality. Default is WAIT_FCON
that means Frec will wait for +FCO (or +FCON) modem response in class 2.0 (or
2).
-x
Realtime decompression and creation of Tiff is switched off. Frec will work in
a minimal state and will save raw data as it comes out of the modem if '-x'
parameter is used. Only inserted DLEs are stripped and received bytes are
inverted back to their regular form (MSB first) in class 2.0 (or 2).
Note: This parameter also is used to perform the first passage of two passage
fax receive mode. A 'BINKLOG' file must be defined to store all session
parameters needed for the second passage (convertig raw fax data to Tiff). Also
see '-i' parameter.
-p<com port handle>
If this parameter is used, Frec assumes it is called by a FidoNet mailer or
other front end. Note: The port handle is not the same as the port number (e.g.
COM1)! The port handel must be put at Frec's proposal by the FidoNet mailer or
front end. Only 'FAXBAUDRATE' is set if 'CHANGEBAUD' is selected in
configuration file. No modem initialisation is performed. Hang_up() and
close_port() are called. While in hang_up() DTR-drop and 'CLEANUP' is
performed, close_port() should be without any effect. Note: All initialisation
must be done by the FidoNet mailer or other front end.
-PollSEP<numerical page indicator>
Is used to make a SEP (SElective Polling) frame when polling a fax from
somebody. Also see '-o' parameter and 'POLLFILE'.
Attention: Only '0' - '9', '#' and '*' are valid characters. All other
characters are invalid and strictly discarded by Frec. String length is limited
to 20 characters. '-PollSEP' can be used in Class 1 and 2.0 (if supported by
the modem) only!
-PollPWD<numerical password>
Is used to make a PWD (PassWorD) frame when polling a fax from somebody. Also
see '-o' parameter and 'POLLFILE'.
Attention: Only '0' - '9', '#' and '*' are valid characters. All other
characters are invalid and strictly discarded by Frec. String length is limited
to 20 characters. '-PollPWD' can be used in Class 1 and 2.0 (if supported by
the modem) only!
-NoFineSign
Some general switched network suppliers demand a special sign on each fax page
transmitted in 'fine resolution'. Frec therefore places a small black rectangle
in the right bottom corner of each 'fine resolution' page to satisfy that.
Using '-NoFineSign' this feature will be deactivated.
-FastSave
Overrides 'SAVE...PRIORTY' keyword in configuration file. The fax file is
savedwith priority REGULAR 0. This effects only Tiff saving and not saving fax
raw data in PAGEnnnn.RAW files.
-PollServer
If Frec is used as a front end for FSEND to satisfy poll requests, Frec is
disabled to receive fax. T.4 transmitter bit in class 1 is not cleared because
a lot of fax machines and fax modem will fail if that is done.
-DISPoll
Normally, if Frec is used to poll a fax form somebody, a DTC (Digital Transmit
Command) is sent to indicate your wish to poll for a fax instead of sending a
fax. For class 1 alternativly a DIS (Digital Identification Signal) may be
sent, mainly to test the fax poll server if capable of this condition.
-ZFAX
Frec will store received fax files in a format defined by ZyXEL. FREC will
decompress received fax data and compress it again in 1-D Huffman compression.
So, in opposit to other fax receiving software, which will store raw fax data
with all line errors in ZFAX format, FREC will store corrected fax data! File
extension is set to '.FAX' and 'OUTFILLORDER' is set to '2'.
-SFF
Frec will store received fax files in a format defined by CAPI 2.0
specification. FREC will decompress received fax data and compress it again in
SFF 1-D Huffman like compression. So, in opposit to other fax receiving
software, which will store raw fax data with all line errors FREC will store
corrected fax data! File extension is set to '.SFF' and 'OUTFILLORDER' is set
to '2'.
-ECMraw
If this parameter is used, all received fax data will be stored in
'BLOCKnnn.RAW' files in case of an ECM (Error Correction Mode) connection. The
contents of these files is in fact senseless for the user, but from vital
interest for Frec if any ECM protocol failure is detected.
-ECMError<error count>
For testing purposes only! Do not use it!
Attention: ECM reception in class 1 is already implemented in Frec. The
functionality is not fully tested yet. This parameter says Frec to act as if
partial frame errors have been detected which shall force the sender to
retransmitted the corrupted data.
-g<phone number>
Frec calls the phone number to poll for a fax. Keep in mind, that some fax
modems (in class 2) are not able to poll for a fax. In that case use class 1
instead if your fax modem supports it.
-o<poll file>
Exactly the same as 'POLLFILE' in configuration file. The file name will be
added to the list of files which will be sent if an fax poll request from
somebody is received. You can send bitmap ('.BMP'), Tiff ('.TIF') or text files
(also see 'TEXTEXTENSION'). You can define as much files as the command line
can accept. Wildcards ( *, ?) are also allowed.
-o@<file name>
As an enhancement to the '-o' option, you can instead define a pointer file,
which contains the file names. Each line must contain only one filename.
Wildcards (*, ?) are allowed. In accordance to 'selective poll', a 'numerical
page indicator' may also be given.
Content of file POLLFILE.LST:
X:\PATH\NEWLIST.TXT
Y:\OTHERPATH\FILELIST.TXT 1
Z:\NEWPATH\ECHOLIST.TXT 2
Which means, NEWLIST will be sent to all callers whereas FILELIST only will be
sent to those callers supplying '1' in SEP frame and ECHOLIST only will be sent
to callers supplying '2' in SEP frame. If the caller does not use any SEP
frame, than ALL three files will be sent.
-a<pipe name>
A pipe of the given name will be created to which all screen output will be
sent.
Note: Frec uses DosCreateNPipe() with open mode NP_ACCESS_OUTBOUND (outbound
pipe - server to client) and pipe modes NP_NOWAIT (non blocking mode) and
NP_TYPE_MESSAGE (message type pipe) to create the pipe. DosConnectNPipe() is
used to connect the pipe, DosWrite() to write to the pipe and
DosDisConnectNPipe() and DosClose() to close the pipe at program termination.
See also PIPECRLF above!
-k<Tiff compression>
Select a compression scheme (default is 3) used for the stored decoded fax
files. The following compression schemes are available:
<1> . . . uncompressed,
<2> . . . 1-D Huffman, without EOL
<3> . . . 1-D Huffman, as defined in T.4
<4> . . . 2-D Read, as defined in T.4
<4.1> . . 2-D Read, without EOL, starting from an imaginary white line
<32773> . PackBits compression.
Note: Compression scheme 5 (LZW) is not supported because of copyright
protections in various countries.
-i<raw fax data file name>
Frec 'conversion only' mode is selected when using this parameter. Any number
of '-i' parameters are allowed (the only limit is the maximum length of a
single command line). Wildcards (*, ?) are supported. Frec reads in raw fax
data (exactly as received from modem) - e.g. as stored by Frec using '-x'
parameter or also raw fax data files generated by internal fax routines of some
FidoNet mailers like BinkleyTerm or CantaLoup/2. If a mailer log file (see
'BINKLOG') is defined, required fax session information (resolution, coding
scheme, ...) will be extracted from it. This performes the second passage of
Frec's two passage operating method (also see '-x' parameter).
Note: Try with '-f1' or '-f2' if conversion fails because of bitorder mismatch.
Also try '-FDCC:vr,br,...' parameter to specify session parameters manually.
See also RAW FAX DATA CONVERSION elsewhere in this document!
-FDCC:<capabilities>
This parameter replaces '-1' and '-2' parameters. It can be used to submit a
DCC (current session capabilities) value for the raw fax data supplied with
'-i' parameter. Only values for compression scheme and resolution are used.
-h or -?
A short help screen is shown. This printout can be redirected into a file.
-v<faxviewer>
If FREC is not operating in raw data mode ('-x' parameter), an external fax
viewer can be used to display an incoming fax in realtime on the screen.
Note: On slow or highly stressed machines, especially in class 2 or class 2.0
negotiation of session parameters may fail or no fax data is displayed. Also
see 'CLMINIMIZEDNOVIEW'.
There are TWO possible modes to use:
1) <faxviewer> is the name of a compatible viewer (obviously FAXVIEW.EXE),
which will be started (by DosStartSession) and closed by FREC.
2) <faxviewer> is the name of a pipe (eg. '\PIPE\LINE1'). In this case the
viewer (FAXVIEW.EXE) must be already loaded and is only actived by FREC (by
pipe).
-BITS or -LARGE or -STANDARD or -PREVIEW Scaling option for optional external
fax viewer.
Note: Do not use 'scaled' option in FAXVIEW.EXE.
-q
If the external fax viewer is used in combination with '-i' mode, Frec waits
after each page for a keystroke and puts focus to the viewers window (see also
-pid). This option is helpful to watch each single page of a fax.
-pid
Normally, the caller from viewer is detected by the PPID (parent process id).
In some circumstances, the callers parent may be the WPS itself so with this
commandline option the caller itself (PID) gets the focus.
-f<1_or_2>
Bitorder in fax raw data. Default is 2, which is the 'normal' order.
-e
Forces Frec to generate single page Tiff files. Default, all pages are stored
together in one multipage Tiff file. But not all programs are able to read
allpages stored in a multipage Tiff file.
-d
If used, input files ('-i') are deleted after conversion. Use this option VERY
CAREFULLY !!! Input raw data file is erased in any case, regardless if
conversion was successful or not!
-datetimefile
See DATETIMEFILE above.
-TSIFilename
See TSIFILENAME above.
-WatchDog<seconds>
Change internal watchdog interval (default 300 sec) to other values or even
disable function (0 sec).
ATTENTION!
Watchdog function not fully tested. If any unexpected watchdog timeout occurs,
please inform author (with complete LOG) and disable feature by '-WatchDog0'.
-CheckRes
If FREC is used as a raw fax data converter (decompressor) and no resolution of
raw data is known, than FREC uses (with this switch) a simple algorithm to
decide either original was normal (204x98 dpi) or high (204x196 dpi)
resolution. Algorithm is based on the fact, that an A4 high page contains
aprox. 1200 scanlines in normal and aprox. 2400 scanlines in high resolution.
Real trigger is 1500 scanlines, if scanlinecount is below, than normal else
high resolution is supposed.
-RawDLE
In certain circumstances, raw faxdata contains additional DLE bytes (0x10)
which were inserted by DCE to make datatransmission transparent. With this
switch, those DLE bytes are stripped also.
-Mlo
Downloaded raw faxfiles from ELSA Microlink Officemodem will be decompressed in
a better way, session data is excerpted from the file itself.
ΓòÉΓòÉΓòÉ 6.6.1. RAW FAX DATA CONVERSION ΓòÉΓòÉΓòÉ
Often, fax data (from a faxmodem) is only available in a raw format (which will
be in fact the original bitstream as it comes over the phoenline) so some
conversion (better decompression) is needed to get the original document back
again.
While FAXVIEW has minimal cababilities to do such a raw data conversion, FREC
is designed to do this job!
All you need is a very simple FREC.CFG:
LocalID <your name>
ComPort <any string>
FaxPath <path where results are stored>
FaxClass 2
FaxDebug frec.log
Loglevel 5
Debug
The last two lines are not really neccessary, but will help to find out of
which format the raw fax data is stored in the supplied file.
There are exactly TWO commandline parameters, which influence raw fax data
decompression:
-f<1 or 2> tells FREC in which order the single bits in a byte are to read.
Default is '-f2' so you will only use '-f1' explicitly.
-FDCC:1,3,0,2,<0 or 1> tells FREC either "1-D modified Huffman" (0) or "2-D
modified Real Address" (1) compression should be used. The first value in this
example (1) is also used by FREC and determines the vertical resolution of the
document (0 ... 204x98 dpi, 1 ... 204x196 dpi). All other values are only used
in 'ImageDescription' tag of TIF.
A good strategy is now described:
First of all, the form of rawdata is normally CONSTANT for a certain faxmodem
(and software which stores the raw data), so the correct value for '-f'
parameter must be only ONCE determined.
Second, the compression scheme (1-D or 2-D) is also predefined by the settings
for the fax reception itself (it is out of scope of this document, to describe
the various possibilities to setup a faxmodem but always try to use 1-D
compression).
Now, let's assume, you have a file named PAGE0001.FAX (only a example!). First
use NO additional commandline parameters:
FREC [-cFREC.CFG] -iPAGE0001.FAX
Screen output may look like:
Reading page 1 FAX-Rawdata from PAGE0001.FAX ...
no RTC received (1 EOL)
Page 1 decompressed <72E,72B,557,0>
The three (hexadecimal) values (detected scanlines,bad scanlines,grouped bad
scanlines,0) are a first hint, that decompression parameters were WRONG. If you
do not know about compression scheme (1D or 2-D), you can do a second trial
(with 2-D decompression enabled):
FREC [-cFREC.CFG] -iPAGE0001.FAX -FDCC:1,5,0,3,1
Sreen output may look like:
Reading page 1 FAX-Rawdata from PAGE0001.FAX ...
no RTC received (1 EOL)
Page 1 decompressed <735,39D,47,0>
Well, also a mistake.
Now try 1-D compression (default) AND reversed bitorder (in TIF specification
named 'FillOrder') by applying '-f1' as additional commandline parameter:
FREC [-cFREC.CFG] -iPAGE0001.FAX -f1
Screen output:
Reading page 1 FAX-Rawdata from PAGE0001.FAX ...
Page 1 decompressed <740,8,3,0>
Hit! Minor scanline errors, but the result should be useable.
Due to various reasons, fax rawdata file may contain MORE than one page. FREC
is highly optimized, to recognize this fact and split the pages. A possible
screen out may therefore look like:
Reading page 1 FAX-Rawdata from PAGE0001.FAX ...
Reading page 2 FAX-Rawdata from PAGE0001.FAX ...
no RTC received (1 EOL)
Page 1 decompressed <470,4D,3,0>
no RTC received (1 EOL)
Page 2 decompressed <46F,2B,3,0>
The raw data had contained NO RTC (Return To Control) sign (6x EOL) so FREC has
assumed start of new page by other algorithm (predocument training in Phase C)
if applicable.
There could be various forms of fax raw data. NOT ALL may be decompressable or
are decompressed with more than one page continously.
Any application, which yields (only) fax raw data, should never be named 'fax
program' (simple 'fax rawdata saver' could be a choice for a name :-).
Only FREC does, what every (simple) fax machine can: decompressing raw data
bitstream (quite as comeing over the phoneline) in realtime! So (only) FREC can
reject faulty pages or force fax sender to retrain if line is distorted!
Keep in mind! FREC stores always CORRECT imagedata, because fax raw data is
decompressed in realtime and after (successful) reception (recompressed and)
stored! If some distorted lines appear in stored image, than the distortion
itself is (correct compressed) stored and NOT a distorted scanline.
ΓòÉΓòÉΓòÉ 6.7. FAX SERVICE CLASS COMMAND SET ΓòÉΓòÉΓòÉ
This is a short explanation of the fax service class command set used by Frec.
The commands in parantheses are for fax service class 2.0!
AT+FCLASS=2 (AT+FCLASS=2.0):
Command to set modem to Fax mode. Modem will manage fax session and negotiates
(T.30 protocol).
AT+FDCC=vr,br,wd,ln,df,ec,bf,st (AT+FCC):
With this command you can set the communications parameter of your fax modem.
vr (vertical resolution):
0 . . . normal (204x98 dpi)
1 . . . high (204x196 dpi)
br (bit rate):
0 . . . 2400 bit/s (V.27ter)
1 . . . 4800 bit/s (V.27ter)
2 . . . 7200 bit/s (V.29 or V.17)
3 . . . 9600 bis/s (V.29 or V.17)
4 . . . 12000 bit/s (V.33 or V.17)
5 . . . 14400 bit/s (V.33 or V.17)
wd (page width):
has to be 0 for use with Frec (1728 pixels)
ln (page length):
This has to be 2 (unlimited length) for use with Frec.
dt (data compression):
0 . . . 1-D Huffman
1 . . . 2-D Read (also see the '-2' command line parameter)
ec (error correction):
0 . . . disable error correction mode
1 . . . enable ECM (only in class 1)
bf (binary file)
This has to be 0 for use with Frec.
st (time per scanline)
0 - 7 . 0 ms - 40 ms
AT+FLID="..." (AT+FLI):
Command to set local station ID.
AT+FCIG="..." (AT+FPI):
Command to set local poll ID. Class 2 modems hardly supports this, usefull only
in Class 2.0!
AT+FLPL=1 (AT+FLP):
Command to indicate that the local station can serve a poll request from a
remote fax. A valid fax document must be ready for sending (with Fsend).
AT+FSPL=1 (AT+FSP):
Command to indicate that the local station wants to poll a fax from a remote
fax. The remote fax must have a document ready to poll. Frec can be use either
as a 'poller' or as a 'pollserver'!
If you want to know if your modems supports fax-polling do the following short
test: AT+FLPL=? (AT+FLP). If only '0' is reported, than you modem is obviously
not able to support poll ('0,1' must be reported).
AT+FBOR=n (AT+FBO):
This command is often misunderstood and not so easy to explain.
Normally, FBOR is zero, meaning databits comming over the line were stored from
right to left in a byte (you can see in fax raw data the byte pattern 4D 9A 80
which stands for an empty, white scanline). Some fax modems and software uses
the invers byte order, which corresponds to FBOR is one (you see the patter B2
59 01).
Binkley's internal fax reception inverses the bytes also and stores them in the
B2 59 01 order although Binkley gets them as 4D 9A 80. Frec defaults to
Binkley's (inverted) byteordering.
AT+FCR=1 (AT+FCR):
The fax modem never can receive a fax when +FCR is not set to 1.
AT+FDR (AT+FDR):
Command to release HDLC-frames in phase B.
+FCON (+FCO):
The fax modem response to signal that the remote station is a calling fax
machine. Initializes phase B.
+FTSI (+FTI):
The fax modem response to show who is calling. This response is followed by the
caller's ID string.
+FDTC (+FTC):
The fax modem response to show who is polling. This response is followed by the
caller's ID string. This is the one and only sign for Frec to decide that a
remote fax wants to poll on us!
+FDCS (+FCS):
The fax modem response to show the current session results. The information is
shown in the same manner as +FDIS (+FIS).
CONNECT (CONNECT):
This message signals the end of frame exchange and start of page data
transmission.
+FHNG (+FHS), +FPTS (+FPS) and +FET (+FET):
Faxmodem responses at the end of pagedata transfer.
+FK (+FKS):
If there is some timing problem with the conversion, Frec will abort with this
command.
ΓòÉΓòÉΓòÉ 6.8. FREC AS A STAND ALONE FAX RECEIVER ΓòÉΓòÉΓòÉ
To use Frec as a stand alone fax receiver simply start the program with the
syntax as follows:
FREC -cX:\FAX\FREC.CFG -k3
Where 'X:\FAX\FREC.CFG' is the path and file name of your Frec configuration
file and '-k3' the selected compression scheme.
ΓòÉΓòÉΓòÉ 6.9. FREC AS A STAND ALONE FAX POLL REQUESTER ΓòÉΓòÉΓòÉ
To poll for a fax from somebody, the syntax is as follows:
FREC -cX:\FAX\FREC.CFG -g123456 -pollsep12
Where 'X:\FAX\FREC.CFG' is the path and file name of your Frec configuration
file, '123456' is the phone number of the remote fax machine and '12' is an
optional page indicator transmitted via a selective polling (SEP) frame.
ΓòÉΓòÉΓòÉ 7. Pcm2wav ΓòÉΓòÉΓòÉ
PCM2WAV is a command line tool for converting P(ulse)C(ode)M(odulated) Sound
Files to the Wav Format and the other way round.
Usage:
pcm2wav [option] [option] [...]
Options:
-i<source filename(s)>
-o<path [and name] for target>
-s<samplerate [Hz] for target>
-k<Type of conversion>
0 ..... any known format to RIFF PCM WAV
1 ..... WAV to 2 Bit Zyxel ADPCM
2 ..... WAV to 3 Bit Zyxel ADPCM
3 ..... WAV to 4 Bit Zyxel ADPCM
9 ..... WAV to 4 Bit Zyxel DVI ADPCM
10 .... WAV to Zyxel 8 Bit PCM A-Law
11 .... WAV to Zyxel 8 Bit PCM ?-Law
*21 .... WAV to 2 Bit Rockwell ADPCM
*22 .... WAV to 3 Bit Rockwell ADPCM
*23 .... WAV to 4 Bit Rockwell ADPCM
24 .... WAV to 8 Bit Rockwell PCM
31 .... Raw 2 Bit Rockwell ADPCM to RIFF WAV
32 .... Raw 3 Bit Rockwell ADPCM to RIFF WAV
33 .... Raw 4 Bit Rockwell ADPCM to RIFF WAV
100 ... Raw 8 Bit WAV to RIFF WAV
200 ... Raw 16 Bit WAV to RIFF WAV
300 ... Raw 16 Bit CD Audio to RIFF WAV
301 ... WAV to Raw 16 Bit CD Audio
**400 ... Raw USR GSM to RIFF WAV
**401 ... WAV to GSM (XTreem/VoiceConnect)
**402 ... WAV to USR GSM 6.10
***403 ... WAV to USR 4 bit G.721 ADPCM
404 ... WAV to USR 4 bit IMA ADPCM
-b<bits> ........ create 8 or 16 bit PCM WAV
-w .............. target RIFF WAV type [1]
1 ............. 8 or 16 Bit PCM
6 ............. 8 Bit A-Law PCM
7 ............. 8 Bit ?-Law PCM
17 ............ 4 Bit IMA ADPCM
**49............. MS GSM 6.10
**771............ embedded USR GSM 6.10 (RapidCommVoice)
-g<gain> ........ apply gain (0.1 - 10.0)
-n .............. smooth (noisefilter)
-h<frequence> ... apply HighPass filter
-l<frequence> ... apply LowPass filter
-f .............. apply 300 - 3400 Hz Bandpassfilter
-t<type of filter>
1 ... critical damping
2 ... Bessel
3 ... Butterworth
4 ... Chebyshew 0.5 dB overshoot
5 ... Chebyshew 1.0 dB overshoot
6 ... Chebyshew 2.0 dB overshoot
7 ... Chebyshew 3.0 dB overshoot
-q ............... quiet mode
-d ............... delete source after conversion
-h or /h or -? or /? shows this.
*) only displayed (and useable) if ADPCMDLL.DLL is detected.
**) only displayed (and useable) if GSMDLL.DLL is detected.
***) only displayed (and useable) if G72XDLL.DLL is detected.
Due to copyright and patent restrictions, neither of the above mentioned DLL
is distributed. But sourcecode which makes somebody able to create these DLLs
is freely available in internet.
Without ADPCM.DLL, Rockwell 2, 3 and 4 bit ADPCM is decoded with a simple, no
patented, methode. The result is not so good, but speach is well
understandable enough.
Conversion of raw CD format to/from WAV is disabled and for further studies.
The '-w771' option is experimental. This format is not documented anywhere,
but PCM2WAV can read and convert such RIFF WAV type files (thanks to Dmitri
Novoselov for supplying some examples).PCM2WAV does voice format conversion
'in memory', so large files will result in hugh memory need and/or will
increase OS/2 swap file enormous. Stream conversion (multithreaded) is under
study.
ΓòÉΓòÉΓòÉ 8. Getting in Touch ΓòÉΓòÉΓòÉ
e-mail: rossen_assenov@hotmail.com, or aglaja@ibm.net
for frec, pcm2wav and faxview: Harald.Pollack@datanews.at
If you don't like something in this program, discover any bugs or have any
suggestions, please let us know why or what they are by e-mailing a message.
This program is FREEWARE. but if you like it and want to send some money -
please, use the e-mail address to let us know, all money is invested for
further development.
ΓòÉΓòÉΓòÉ 9. Other ΓòÉΓòÉΓòÉ
For a freespeaking phone program look for vdial323.zip (or newer) by Rossen
Assenov. It works great with the USRobotics Message Modems and can be found on
hobbes, os2ss and leo. Homepage http://www.buntspecht.de/vdial/
VDial is also FREEWARE.
The complete fax107.lzh is available at http://www.buntspecht.de/fax/
Thanks to all who supported us:
Manfred Agne <Manfred.Agne@munich.netsurf.de> for spending a Sybil-Licencse
Ulf Bartholomeus
Jens Schiffler
Marcus Specht visit him at http://www.buntspecht.de
Ulrich Steinwedel visit his homepage at http://www.messagecentral.de to get
solutions for DOS Windows9x/NT and Linux.
Mr. Marburger by 3COM
3COM
All who have mailed us suggestions and failure-reports.
and last but first:
Dr. Harald Pollack without his kindly help and without his programs some
problems would still exist.
ΓòÉΓòÉΓòÉ 10. Known Bugs and Limitations ΓòÉΓòÉΓòÉ
Limitations:
Although Dr.Pollack has developed a GSM to WAV converter, you have to compile
the sources by yourself as THE USE of the GSM codec (not the codec itself) is
protected by legal rights and therefore the gsm.dll can't be distributed as
compiled version as long Dr.Pollack has no license. It is recommended to take a
serious look into the sources. If anybody wants to help Dr.Pollack (and us)
please contact Dr.Pollack (Harald.Pollack@datanews.at)
Frec, pcm2wav and Faxview have a lot of options (e.g. working together with
Faxworks/PMfax, saving files in other directories/drives), but unfortunately a)
you have to edit the corresponding settings manually and b) the cooperation
with the RoboticsMessenger/2 is then distorted.
Most errors we've been told had been errors in the modem setup - one user had
his modem profile totally messed up - or failures during sending/receiving
faxes. In all these cases Romes fails, cause it's (as long the errors aren't
symptomatic) impossible to correct these failures by software. For converting
the received faxes Dr.Pollack has build in several error-corrections (in his
own words "belts and braces" and additionally "more magic" ;-). But due to the
above mentioned problems we can't garantuee that everything works. Even (as one
user suggested) to make Romes payable and therefore hiring developers won't
solve this situation.
If you 'refresh' the modem clock older messages have a date in the future.
The returned messages from the modem at the commands page are limited to 255
Characters. This is a problem with Sybil. So for querying the modem settings
better use a 'real' terminal program like ZOC or HyperAccess.
ΓòÉΓòÉΓòÉ 11. Legal Stuff ΓòÉΓòÉΓòÉ
Idea Aglaja Przyborski, Realisation Rossen Assenov
RoboticsMessenger/2 (C) Copyright 1998-1999 by Rossen Assenov.
Frec, Pcm2wav and Faxview 1999 by Dr. Harald Pollack.