Binary Newsreader (BNR) for OS/2
Version 1.25
©1996,1997 Ralf Christen
Table of contents
The software was tested under OS/2 Warp 3 (Base, FixPak 17, Fixpak 22), OS/2 Warp 3 Connect (Base) and OS/2 Warp 4 (Base).
There is a general problem after installing Fixpack 17 that focused windows are displayed BEHIND all other windows or some dialog windows remain gray. This is an OS/2 problem and NOT a BNR problem. IBM opened an APAR for this problem which has number PJ21838. This is fixed in FixPak 22.
Users report that BNR works just fine with fixpak 22 installed. The window problem mentioned above, is fixed in FP 22.
Warp Connect users should have fix pack IC12657 installed.
Click here to get the fix pack. Be sure to read part 1.5 of this documentation.
BNR works just fine with Warp 4. There are no special fixes needed. Be sure to read part 1.5 of this documentation.
BNR uses a TCP/IP interface called RXSOCK.DLL which has been published as a part of the IBM EWS-program (Employee written software). Version 1.3 of this interface is included in the BNR package. However, if you should have TCP/IP for OS/2 installed (is part of Warp Connect and Warp V4) you have a newer (and slightly faster) 32-bit version of this DLL. Thus, you can delete the BNR delievered 1.3 version. The BNR 'About' screen then should show you Version 2.0 of the TCP/IP interface. Please note that this is the version of the DLL and NOT the TCP/IP version number.
You need an UUE-Decoder and a BASE64/Mime-Decoder installed. I suggest to use the combinded UUE- and BASE64/Mime-Decoder UUDEVIEW, written by Frank Pilhofer (which is my favourite decoder).
I have seen that it is much better to use a text-based Decoder (such as UUDEVIEW) because they don't pop up every time BNR calls them to decode an article (which takes you the keyboard/mouse focus away). If you use a combined UUE/BASE64 decoder, you should enable the 'General decoder' checkbox on the 'Decoder' page of the configuration notebook.
BNR supports up to 2 newsservers. You can configure them in the configuration notebook. There is also a checkbox called 'Use XOVER NNTP command' on this page. XOVER is an extended NNTP command which gives direct (and fast) access to subject headers. BNR uses this command to retrieve the subject headers from your newsserver. However, some newsservers don't support this command and you have to deselect this option. BNR then uses the slower XHDR command. Because we have to submit 3 XHDR commands to get all relevant information, you will notice that the red progression indicator goes from 0 to 100 percent
three times.
How do I know if my server supports XHDR? Try to get a subject list with XOVER enabled. If there are no articles found, you should disable this option.
Some newsservers DO support XOVER but they use a different implementation. This can produce scrambled subject lists. In that case, you should also disable the XOVER commands.
If you want to try other public newsservers, you should visit the site at http://login.eunet.no/~kjetilm/news.htm which contains a directory of public newsservers.
BNR can import and export NEWSRC compatible UNIX newsgroups files. This allows you to synchronize your subscribed newsgroups across different newsreaders or even platforms. The import and export functions are available on the menubar of the newsgroups manager.
Perform these simple steps to get started after you copied the BNR files into a new directory and started the software the first time:
- Select 'Create desktop folder' from the 'Configure' Pulldown menu. This creates the necessary desktop objects for you.
- Go through the configuration notebook and modify your personal settings. Each notebook page contains a short function description. You should complete at least the two pages 'Decoder' and 'Servers'. All other pages contain acceptable default values you can use for your first start. If you use the recommended combined decoder software UUDEVIEW, you can enter the following decoder command:
UUDEVIEW.EXE -i +d -p D:\DOWNLOAD %
where D:\DOWNLOAD is the path you want to have the decoded files saved.
Please note, that you can enter your own name on the 'Register' page without being registered. This information is used to reply to or post articles. After this, close your notebook. Chapter 5.2 contains a detailed description of all notebook settings.
- Go to the newsgroup manager and download the list of all available newsgroups (-> Load all). Please note that there is also a 'flat' newsgroup manager (-> Editor) if you should not like the hierarchical (tree) manager. There, you can subscribe to a newsgroup with a simple cut/paste operation of the newsgroup name. If you should have an other newsgroup reader which is able to export NEWSRC compatible files (such as NR/2) you can import this NEWSRC file into BNR without reloading the entire newsgroup list.
- After restarting the newsgroup manager, select (subscribe to) the newsgroups you want to work with, using the 'Add' button.
Here's how you work with the BNR (after downloading the list of all available newsgroups):
- Get the newsgroups status to have an overview of the number of unread articles (Ctrl+S)
- Select a newsgroup from the drop-down-list. This will download the headers of all unread articles for this newsgroup (It's also possible to directly enter the name of a newsgroup in the drop-down-list. This receives the headers and automatically subscribes to this newsgroup). If you want to cancel this process for some reason, you can hit the 'ESC' button or select 'Stop newsgroup load' from the 'File' pulldown menu.
- A doubleclick marks an article to be downloaded as the first (or only) part. If there are multipart articles you want to connect, mark the second, third etc part using the right mouse button (a popup menu comes up) and then 'select subpart'. If you have the 'automatic subpart detection' feature enabled, BNR will automtically search for subparts and mark them for you (strongly recommended).
- Press Ctrl+R to receive the selected articles (or press the button located at the upper right corner of the window). This puts the selected articles to the receiver job queue and downloads/decodes them automatically while you can select the next few articles...
- Mark the articles you have seen 'as read' (Ctrl+M)
Please note:
- Although you CAN modify the file/part spin-buttons in the upper right corner of the window, you SHOULD NOT do this. They are increased and reset automatically.
- You can unmark a marked article with another doubleclick
- You can unmark ALL marked articles using the reset function (Ctrl+T)
- You can switch to an other newsgroup even if the receiver job queue is still receiving data from your present newsgroup.
There is a timer feature which is located on the menubar of the receiver job queue window. With this feature, you can
- Get the article subjects online (as usual)
- Hang up
- Program the timer (this disables the immediate start of the job queue).
- Select the desired articles
- The BNR then connects to your provider (at the desired time) and starts the receiver job queue. If the timer had to dial, it will hang up automatically after all articles have been received, otherwise it stays online.
Please note:
- The IBM IAK dialer only works correct (when using an automatic logon) if it isn't already started. Be sure to completely end your dialer before the timer starts dialing.
- BNR checks the time every 20 seconds. This means that the receiver job queue starts somewhere between 0 and 20 seconds after the specified time.
Filters
"Filters" are used to select articles containing a specific piece of text. You can use them to drop unwanted articles headers which do not contain a required text (GIF, JPG, BMP, ZIP etc). That's a very effective way to reduce the number of received article headers to those you really want. The option "Override at runtime" allows you to override them prior to download the subject headers. A small popup window will come up at runtime where you can enter enter different filters for this specific download.On the second page you can specify the maximum number of article headers you want to receive at a time. The remaining article subjects are not lost; you can get them after marking the received article subjects 'as read'. Use this options if you have very large newsgroups which use too much time or memory. Another option allows to specify the minimum number of text lines an article must contain. BNR doesn't display articles having less lines than specified. Be aware: It is possible to suppress the (small) last part of a multi-part article when specifying a minimum number of lines. The disabled option "Eliminate crossposted articles" isn't available yet.
It is possible that BNR receives slightly more or less articles than specified in the value mentioned above. This is because a newsserver only delivers an estimated value of available articles. BNR reduces the number of the highest article number to match the maximum number of articles to load. If the estimated value received from the newsserver was not correct, the result can slightly differ.
Blocker
On this page you can maintain a list of e-mail identifications of authors you want to exclude (block) from your subject list. Articles from one of those authors won't be displayed on the screen. You can also add an author to the blocklist using the Ctrl+B command on the main window. There, you'll add the author of the currently selected article to the blocklist. You can also add generic E-Mail IDs to the blocklist. They must have the format *@myhost.net
. This would exclude all posts submitted by an E-Mail address at myhost.net.
Hangup
This command is used to hang up when "Hangup now" or "Hangup after download" is selected on the main window. If you are connected to the Internet through a network (a leased line), you just can ignore this. Usually, the hangup command tells the dialer to hang up.
Decoder
These commands are used to decode the UUE- or BASE64-coded downloaded articles' content. Substitute a '%' for the name of the file to be decoded. A valid command could be 'DECODER.EXE -d %'. If you have a decoder which is able to decode both UUE- and BASE64-coded articles (such as UUDEVIEW) or if you want to write your own batchfile to decide which decoder shall be used, you can enable the "General decoder" option. If you have this option enabled, BNR doesn't analyze the received data, which can be slightly faster. Furthermore, BNR never calls the editor to display unrecognized articles. If you want to do so, you can select "Remove received articles from list". This removes received articles immediately from your subject list. If you do not select this option, received articles get a "REC" marker. You shouldn't remove downloaded articles from your list if you want to reply to one of them. You can automatically mark downloaded articles 'as read'. They won't be displayed the next time you reload the headers of this newsgroup (or they already have a "REC" marker). However, from time to time, you still have to mark the entire newsgroup 'as read' (up to a certain article number) to mark all unwanted articles as well.
If you use UUDEVIEW, you can use the following command: UUDEVIEW.EXE -i +d -p D:\DOWNLOAD %
where D:\DOWNLOAD is the path you want to have the decoded files saved.
There is one more variable available: The %N
decode the articles of different newsgroups to different subdirectories.
Encoder
This command is used to encode binary files you are uploading (posting) to a newsserver. Substitute a '%' for the name of the file to be encoded. If you do not want to upload your own binary files using the BNR you can ignore this page. UUE is the only supported encoder type.
Servers
You can specify the names of two newsgroup servers. They are used as a primary and alternate (backup) server. You can specify the name of the server or the IP-adress (in the format nnn.nnn.nnn.nnn) of the server. In the first case, BNR will ask the TCP/IP defined nameserver for the appropriate IP-address of your newsserver. If your newsserver doesn't listen at port 119, you can specify a different port using a server address like 'myserver.net:nnn' where nnn is your new port number. The option "Use XOVER NNTP command" should be checked if your server supports the XOVER command. If you can receive a correct subject list with XOVER enabled, you can leave it that way. If you get an empty (or scrambled) list, you can disable XOVER (which enables the usage of XDHR). For a detailed description see Chapter 3.0 'The newsserver'.
- Using a SOCKS gateway
A SOCKS gateway is a firewall that enables you to reach the outside Internet while being inside a local network. If you access the Internet through a SOCKS gateway (you usually know that because you had to configure your WebExplorer as well), you can enter the IP-Address (like 148.46.254.12) of your SOCKS gateway in the appropriate field of this page. Be sure NOT to enter a hostname; only IP-addresses are allowed. BNR connects to the SOCKS gateway using the SOCKS
protocol version 4 and accesses port 1080. - Using a PROXY gateway
A PROXY gateway is a firewall that enables you to reach the outside Internet while being inside a local network. Unfortunately, a Proxy gateway can only handle protocols using URLs such as HTTP, FTP and GOPHER. It is not possible
to access hosts using "session oriented" protocols such as NNTP, SMTP, POP or TELNET. Thus you can't access a news- or mailserver through a Proxy gateway (you can't even send E-mail from your WebExplorer).
Posting
This information is used when sending (posting) articles to the server. Enter your real Mail-ID here! Your registration name is automatically added to your Mail-ID: "ralf.christen@ibm.net" gives ralf.christen@ibm.net (Ralf Christen)". If you want to have replies to a different address, you can specify this address in the "Reply to" field. If you want to have the name of your organization in the header information of your article, you can enter this in the "organization" field. The field "Timezone" is to specify the timezone of your location. Usually, you refer to the next known timezone (such as GMT, EST etc) and specify the appropriate offset (GMT+1, EST-1 etc). You can use test newsgroups (alt.test) to test your postings.
Prompt
If you receive an article which cannot be decoded, (neither UUE nor BASE64), you can display the content on the screen, using an editor of your choice. This function is used to display non-binary articles (maybe an announcement of an upcoming binary file) which contain text. Because BNR is a binary newsreader, this shouldn't be the usual case. However, there are 3 options: "Always display", "Display if automatic hangup is disabled" (to avoid the display of many articles while being in unattended mode) and "Never display". Valid OS/2 editor commands can be "E.EXE", "EPM.EXE" or any oder OS/2 editor
which is currently installed on your system.
Register
Here's the place to fill in the registration information you have received from the BMT Micro Shareware Registration. If you have questions on how to register, see Chapter 9.0 'Registration'.
Display
You can use the OS/2 functions to customize to following objects of the BNR screens:
- The container of articles on the main window (this also affects the dropdown list of subscribed newsgroups)
- Both containers on the newsgroups manager window
- The receiver job queue
Select a font from the OS/2 font list and drop it on one of the objects mentioned above. The BNR will save those fonts and automatically reloads them after restarting. BNR also saves the size and position of both windows. If you want to restore the original size, you can press the "Restore window size" button on this screen. You should use the Binary Newsreader on a 1024x768 display.
Logon
Some servers require a user identification and password to log on. If you want to connect to one of those servers, you can enter the logon information on this screen. Newsservers of access providers do not require a login, because they test your IP adress to grant access. In that case you have to leave the fields blank!
Options
The BNR can ask you if you really want to quit. There are two options "Confirm leaving BNR" and "Confirm leaving BNR with jobs in queue" to enable this function. If you want to have a copy of the receiver job queue saved to disk, you should enable "Save reciever job queue to disk". Then, you can terminate and restart the BNR anytime and continue working with your receiver queue. Sometimes, the receiver task can fail due to a communication or server error. A "watchdog timer" checks the active connection every few minutes and restarts a failed receiver job.
On the second page you can enter the name of the Web Browser you want to use for actions such as sending mail, reading the documentation or going to web pages.
Logging
If you are processing scripts, you do not want the BNR to display error messages in a message window. There are several logging options available when processing BNR scripts:
- Write to ASCII logfile
- Use external logging utility (such as SYSLOG)
- Display popup window (interactive method)
If you want to have an error log in a ASCII file, you have to specify the output logfile you want to use. If you select to use an external logging utility, you must specify the exact command to call this utility. Substitute a '%' character for the message to be logged. Example: To use the LOGGER.EXE utility which is part of the SYSLOG package written by Jochen Friedrich, you can enter C:\SYSLOG\LOGGER.EXE -t BNR %
Be aware, that some options impact the performance of your BNR
Option | Impact | When |
Eliminate crossposted articles | CPU | Receiving headers |
Mark received articles 'as read' | Harddisk | Put articles into queue |
Use of XOVER disabled | Line | Receiving headers |
Save receiver queue to disk | Harddisk | Whenever the queue changes |
Important: If you mark received articles automatically 'as read' you should reorganize the BNR.MRK file from time to time. The BNR.MRK file is a OS/2 INI-file which can grow very fast and slow down the entire BNR work (heavy disk work when pressing the RECEIVE button). Because the OS/2 INI-file management still hasn't an effective algorithm to reduce deleted records you have to do this manually using a utility software such as INIMAINT. In some cases, this reduces the BNR.MRK file size by 90%. This also applies to BNR.INI.
There are some command line parameters you should be aware of:
/D | starts BNR in debug mode. Use this function if you have to submit an error report after one of these symptoms: - BNR closes after an error without further information - OS/2 issues SYS3175 (GUI problem). |
/CS | connects automatically to the newsserver after starting and gets the newsgroup status. |
/I= | Specify a different path for the internal BNR work files. The example /I=D:\DATA tells BNR to put the work files to the D:\DATA directory. Use this in a Client/Server environment (to force saving personal work files on the clinet) or to connect to different access providers with different newsservers. |
/R | Restarts a reloaded receiver queue automatically when starting BNR. |
/S | Removed since V1.20 |
/C | Removed since V1.25 |
This is the complete syntax diagram:
BNR.EXE [/D] [/CS] [/I=datapath] [/R] [script.bsc]
If you want the dialer to connect to your service provider when starting the BNR, you can add the BNR to your desktop as follows (replace d:\path with the path where you have BNR installed):
- Create a new program icon on your desktop
- Program name is LINKUP.EXE
- Parameter is d:\path\BNR.EXE
- Working directory is d:\path
BNR uses the following work files which are created automatically:
BNR.INI | Configuration settings, subscribed newsgroups |
BNR.GRP | Plain ASCII-file of all available newsgroups |
BNR.MGP | Plain ASCII-file of top level hierarchy of all newsgroups |
BNR.MRK | Single marked articles |
BNR.QUE | Plain ASCII-file of the saved receiver job queue |
You can redirect the path of those files using the /I command line parameter.
BNR supports a simple script language which enables you to automate often used downloading procedures. You can do almost everything with a script you can do manually. Currently, there are no 'logical components' such as IF-THEN-ELSE or things like DO-WHILE etc in this script language. That's why a BNR script is always processed sequentially (top down). However, I think it's a nice tool to get binaries from selected newsgroups automatically.
I decided not to build a separate BNR script editor; therefore you have to use an OS/2 editor such as E.EXE or EPM.EXE to write a BNR script. A BNR script always has an extension of .BSC (which means Bnr SCript) and is stored in the same directory where BNR is located. I strongly recommend to use long filenames (on a HPFS disk) because this gives a nice description of your script for free. A valid BNR script filename would be 'My_first_script.BSC'.
A BNR script contains script commands; always one command per line. And here is the complete list of commands (in alphabetical order):
CONNECT n
Doesn't really connect to your newsserver but selects your server where 'n' can be 1 or 2. 1 means your primary server, 2 means your secondary server. If you omit 'n', you select your primary server.
END
This command ends the script immediately. Use it you want to end script execution within a script.
EXECUTE pgm parms
The EXECUTE command provides a handy way to execute OS/2 commands while processing scripts. The following command example can be used to call the PKZIP packer: EXECUTE D:\PACKER\PKZIP.EXE PICS.ZIP E:\DOWNLOAD\*.JPG
If you want to use an internal OS/2 command (such as DIR, COPY or TYPE), you have to call the CMD.EXE program like this: EXECUTE CMD.EXE /C COPY E:\DOWNLOAD\*.JPG A:
FILTER f1 f2 f3 f4 f5 f6
The FILTER command overrides the 6 filters defined on the 'Filter' page of the configuration notebook. If you omit one or more of the 6 possible filters, they are blanked out and not in use.
GOTO xxx
Jump to the script line containing the label 'xxx' which has been defined using the LABEL command.
GROUP xxx
Switches to the newsgroup 'xxx' and receives the list of subject headers. You can even switch to newsgroups you are not subscribed to.
HANGUP
Just hangs up using the 'Hangup' command specified in the configuration notebook.
LABEL xxx
This command defines a label 'xxx' which can be reached using the GOTO or ONERROR command.
MARKREAD
Marks all articles in the article list 'as read'. This command must be after a GROUP command because it marks all articles as read that have been loaded using GROUP.
MESSAGE xxx
You can send your own message to the BNR logfile or to your external logging utility (see the 'Logging' page of the configuration notebook). Use this command to write additional information to your log; error messages issued by BNR are being logged anyway.
ONERROR xxx
This command defines to go to the label 'xxx' if we encounter a problem during script processing. The label must be defined using the LABEL command. If you omit the label 'xxx', BNR ignores errors and continues with the next script line.
PAUSE
This command suspends the execution of your script and returns control to the BNR. You can continue or stop the execution using the appropriate options on the menubar (-> Scripts).
QUIT
This ends the script and quits the BNR immediately without further notice.
RECEIVE
Puts the selected articles to the receiver job queue. This command must be after one or more SELECT commands because it receives the articles evaluated by SELECT.
SELECT xxx yyy zzz ...
This selects articles to download from the subject headers which contain the string 'xxx' AND 'yyy' AND 'zzz' in their subject or author-id. You can specify as many strings as you want. If you have the 'auto subpart detect' feature enabled (what I recommend), this also selects all subparts to download. Be sure NOT to mark subparts; this will the mentioned 'auto subpart feature' do for you; therefore you should include a SELECT like '1/'. Please note that the parameters of this command are NOT case sensitive. This command must be after a GROUP command because it processes article headers received by GROUP.
TRACE ON|OFF
You can turn on the script trace using the TRACE ON command which enables logging of every script command. Use TRACE OFF to turn the command logging off.
WAIT
Waits until the receiver job queue is empty and all articles have been received. You can stop the execution of WAIT using the appropriate option on the menubar (-> Scripts). Issue a WAIT command after a RECEIVE but before a QUIT, END or HANGUP command.
Here's an simple script example:
CONNECT 1 | Select the primary newsserver |
GROUP alt.binaries.pictures | Switch to alt.binaries.pictures |
SELECT .JPG 1/ | Select all 1st part JPG files |
RECEIVE | Put them to the receiver job queue |
MARKREAD | Mark them 'as read' |
GROUP alt.binaries.pictures.nature | Switch to alt.binaries.pictures.nature |
SELECT sunset 1/ | Select all 1st part sunset pictures |
RECEIVE | Put them also to the job queue |
MARKREAD | Mark them 'as read' |
WAIT | Wait until all articles have been received and the queue is empty |
HANGUP | Hang up |
And here's an example with error processing:
MESSAGE The script starts now | Send a message to the log |
CONNECT 1 | Select the primary newsserver |
ONERROR ERRLABEL1 | Define the error exit label 1 |
GROUP alt.binaries.pictures | Switch to alt.binaries.pictures |
SELECT .JPG 1/ | Select all 1st part JPG files |
RECEIVE | Put them to the receiver job queue |
MARKREAD | Mark them 'as read' |
GOTO RECEIVE2 | Jump to label RECEIVE2 |
LABEL ERRLABEL1 | This is the error exit label 1 |
MESSAGE Error in alt.binaries.pictures | Send a message to the log |
LABEL RECEIVE2 | Define the label RECEIVE2 |
ONERROR ERRLABEL2 | Define the error exit label 2 |
GROUP alt.binaries.pictures.nature | Switch to alt.binaries.pictures.nature |
SELECT sunset 1/ | Select all 1st part sunset pictures |
RECEIVE | Put them also to the job queue |
MARKREAD | Mark them 'as read' |
GOTO WAIT-FOR-END | Jump to label WAIT-FOR-END |
LABEL ERRLABEL2 | This is the error exit label 2 |
MESSAGE Error in alt.binaries.pictures.nature | Send a message to the log |
LABEL WAIT-FOR-END | Define the label WAIT-FOR-END |
ONERROR | Ignore errors |
WAIT | Wait until all articles have been received and the queue is empty |
HANGUP | Hang up |
There are four ways to start a BNR script:
- Use the 'Execute' option on the menubar (-> Scripts) and select the script to be executed.
- Drop a .BSC file from your desktop onto the BNR main window (Be sure to hit the window background and not one of its objects like buttons etc). This executes the dropped script immediately.
- Specify the script file name as a command line parameter when starting the BNR. With this function you can execute scripts which have been generated by your own REXX program or another application program. If you have put the QUIT command into your script, BNR ends automatically after the script has been processed and returns control to your program.
- Associate the BNR object on your desktop with the filetype '*.BSC'. From now on, you can just doubleclick a BSC file within a OS/2 drives object (which can be shadowed to your desktop). This automatically starts the BNR and executes the selected script.
Where are the decoded binary files stored ?
That depends on the settings of your decoder software. BNR only downloads articles and calls the decoder.
Where are the text files stored ?
Downloaded UUE or BASE64 articles are stored in the BNR directory with names like ARTnnnnn.TMP and are deleted after the decoding process. Plain text articles remain there.
My decoder does not work (but it's configured correctly)
- BNR is stored in a 'long-filename-directory' but your decoder cannot process long path/filenames
- Your decoder needs its INI/DLL file but can't find it. You should put your decoder into the BNR directory
- BASE64 decoders can have problems if the original name of the binary file is not specified correctly in the downloaded article. There's nothing you can do about this (except a decoder which asks you for the original filename)
How does the automatic subpart detector work ?
This feature automatically finds and marks subparts (articles which are made of more than one part) after you have doubleclicked the first part. Usually, their headers contain some text, indicating the sequence of this part and the total number of all parts (eg 01/05 means part 1 of 5). BNR recognizes subject headers which contain the following strings as a first-part article: '(1/' or '(01/' or '[1/' or '[01/'. Of course, the number behind the slash must have a value other than 1 otherwise it would be a single-part article. BNR starts with its search with the article following the marked 1st part and automatically stops if all parts have been found. If it reaches the end of the list it restarts from the top down to the 1st part. If some subparts are missing, a message is displayed.
How can I unmark an article which I have marked to download ?
You can unmark an article with a simple doubleclick. If it's already in the receiver job queue, you can use the 'Delete entry' function on the menubar. However, you cannot delete the entry being received right now.
In that case, you have to stop the receiver job queue, delete the entry and restart the queue.
How does the BNR determine if we have a UUEncoded or a BASE64 article?
UUEncoded files do have a string like 'begin nnn' at the beginning of a new line. BASE64 articles must have the keyword 'base64'. However, if you have selected to use a 'general decoder', BNR doesn't determine the coding scheme.
Will there ever be a Windows 95 version of this software ?
No.
What the hell am I doing here?
You're reading the documentation
You have 50 trial usages. After this (if you like the software), you must register. The registration fee of this software is US$ 25.
There are many ways to register:
- Mail your order to BMT Micro, PO Box 15016, Wilmington, NC 28408, U.S.A
If you'd like to mail your order you should print out the order form using the push button on the 'Register' page of the configuration notebook or start PURCHASE.EXE.
- Call (800) 414-4268 (voice, orders only) or (910) 791-7052 (voice, order inquires) from 8:00 am - 7:00 pm EST (-5 GMT)
- Fax your order to (910) 350-2937 (24 hours, 7 days a week)
If you'd like to fax your order you should print out the order form using the push button on the 'Register' page of the configuration notebook or start PURCHASE.EXE.
- Connect to the BMT Micro BBS at (910) 350-8061 (10 lines, 14.4k) or (910) 799-0923 (28.8k, v.FC)
- Send an E-Mail to orders@bmtmicro.com
- NEW: Send your order using encrypted E-Mail!
If you'd like to use encrypted E-Mail to register, you should use the electronic order form using the push button on the 'Register' page of the configuration
notebook or start PURCHASE.EXE.
- Go to the BMT Micro Homepage at http://www.bmtmicro.com
- Fill out the online order form at https://wwws.wilmington.net/bmtmicro/secure_form.html on the BMT Micro Secure Server using a secure browser.
How to pay:
- Charge your creditcard (Visa, Mastercard, Discover, American Express, Diner's Club, Eurocard)
- Pay cash (US$, DM, £) via registred mail.
Please have this information ready:
- Your name (exactly how you entered it in the configuration notebook)
- Your address
- Your E-Mail address
- Which software you want to register (Binary News Reader)
- For credit card payment: card company, card number, expiration date
- Visit the Binary Newsreader product homepage at http://www.bmtmicro.com/catalog/bnr
- I have a technical support page at http://www.dataline.ch/~rch. That's the place where you can get the latest preversion (if there is one available) of an upcoming release. You can also see the current wishlist there or read the latest BNR documentation online.
- Official announcements of new BNR versions are sent to the newsgroup comp.os.os2.announce.
- Official BNR versions (no preversions) are first uploaded to the BMT Micro ftp site and then to hobbes.nmsu.edu and
ftp.cdrom.com. They can also be found on all mirror sites of those ftp sites.
- Do not hesitate to contact me through E-Mail. Send any comments, suggestions, error reports to ralf.christen@ibm.net
Don't change your newsserver after you have received the list of articles or BNR will try to get the selected articles from the wrong server. This produces errors like "412 not in a newsgroup", "423 no such article number in this group" or "430 no such article found".
The progress bars do not adjust when resizing the window
Version 1.00 (released May 8th, 1996)
Version 1.01
- Reference to the product home page
- There was a problem on some systems when receiving data
Version 1.05 (released May 28th, 1996)
- The receiver job queue has it's own TCP/IP connection. This means that you can switch to an other newsgroup (or even post to a newsgroup or reload the the list of all newsgroups) while you are still receiving data from the present newsgroup. That's why we have 2 red progression indicators: The upper
one for the main task, the lower one for the receiver job queue. Status messages of the receiver job queue have moved to the window title of the receiver thread.
- You can logon to password protected servers
- /S option for Warp Connect users (ENOTSOCK workaround)
- A new disconnect option is available.
- Change of newsserver configuration wasn't used immediately
- Corrected some minor problems
Version 1.10
- Unregistered users have 50 new trial usages for V1.10
- There is an 'automatic subpart detection' feature which automatically identifies and marks subparts of articles which are made of more than one part.
- The decoders can have their own thread. This means that downloading continues while your PC is still decoding the previous article.
- The newsgroup manager does have wider containers and a smaller default font. Please note that you can drop your favourite fonts to these windows!
- A 'Nothing read' option has been added to the 'Mark as read' window. This is the same like mark as read up to number 0 and can be used if you want to reload the entire newsgroup.
- You can delete single entries from the receiver job queue.
- There is a new counter when downloading the list of all newsgroups or updating the list of all newsgroups.
- A new blocklist allows to block (exclude) certain authors. Therefore, a new notebook page has been added to the configuration notebook. There is a new action on the menubar of the main window (Ctrl+B) which can be used to dynamically add the author of the currently selected article to the blocklist.
- BNR asks you to connect to the selected newsserver if you changed to your primary or alternate server using the option on the menubar.
- Because some newsservers don't support the XOVER NNTP command, there is a new option in the configuration notebook where you can disable the (fast) XOVER command and use (slower) XHDR commands instead.
- You can write your own BNR scripts! Use this to automate often used download procedures. You can even automatically start scripts which have been created by your own application
- The dropdown list of your newsgroups does indicate which newsgroups you have already visited.
- A new commandline option /CS connects to your newsserver (just like /C) and gets the newsgroup status.
- A new '?' option on the menubar guides newbies through the first steps.
- BNR removes an already received article list after changing the newsserver configuration in the notebook and issues a message. Not doing this, can cause a "412 not in a newsgroup" error if your article list was received from your secondary newsserver because the configuration change switches back to your primary server.
- Servers can be configured with their IP address as well.
- If you added an article to the receiver job queue when the receiver job was disconnecting from the newsserver (because the job queue was empty), the receiver job didn't restart. This has been corrected.
Version 1.11 (released June 20th, 1996)
- There was a problem using the 'Find' function: the record was found and selected correctly, but BNR didn't scroll to this position. This problem has been fixed.
- If the receiver thread breaks down for some reason (eg. TCP/IP problems) it will be restarted automatically after submitting an article to the job queue. The 'Stop' procedure has been modified to recognize cancelled threads.
Version 1.20 (released January 20th, 1997)
- BNR can mark a received article automatically 'as read'. Enable this feature on the 'Decoder' page of your configuration notebook. If you enabled the removal of received articles, those headers won't be reloaded next time, otherwise they have a 'REC' marker in the first column.
- BNR asks you if you really want to quit. Enable this function on the new 'Options' settings page in the configuration notebook.
- The new /I command line parameter allows to specify a different path for the BNR workfiles. See chapter 6.1
- There is a new timer feature (on the menubar of the receiver job queue window). From now on, you can get the article subjects online, disconnect from the newsserver, select the desired articles and program the timer to download them at the specified time. See chapter 5.1
- Fix: BNR shouldn't save the window size/position when ending minimized.
- The settings notebook saves changed values only.
- You have to confirm the update of the newsgroup list.
- A new option saves the contents of the receiver queue to disk. You can enable this feature on the 'Option' page of the configuration notebook. If you have this feature enabled, BNR always has a copy of the receiver job queue on your disk. You can end BNR anytime you want, it will reload the contents of the queue automaticaly after restarting and you can continue working right where you have been.
- If your newsserver doesn't listen at port 119, you can specify a different port using a server address like 'myserver.net:nnn' where nnn is your new port number.
- BNR drops unused data much earlier than before. This frees main memory resources and can cut down the amount of memory needed by 2/3. While receiving the articles headers, BNR has to keep 3 copies of the received headers (received original data, prepared data, container data). BNR now releases the memory immediately after putting a header into the container. Before, BNR released the entire memory after all headers have been put into the container. This caused memory problems when receiving 4000+ articles from a newsgroup.
- BNR starts the decoders minimized. That's why they don't pop up anymore and take you the focus away. I completely changed the way how BNR calls the decoders. I also removed the option wheter the decoders should have their own thread or not. Now, they always have their own thread. Be aware that I have changed the suggested UUE-Decoder. See Chapter 2.0
- There is a new watchdog timer on the 'Options' page of the configuration notebook witch restarts a failed receiver job queue after 'n' minutes.
- A new status line on the receiver job queue window displays the number of entries in the job queue.
- The newsgroups statistics allow you to see the following data for every subscribed newsgroup: Processed articles, dropped by filter, dropped by blocklist, dropped by crossposting, received headers, downloaded articles. You can call the newsgroup statistics from a new menu option within the newsgroups manager. You can also reset the statistics data.
- Fix: If the parts of a multipart article were out of sequence, the BNR marked them correctly, but downloaded them using the original (wrong) sequence.
- A new option "Use general decoder" allows the usage of a general decoder (UUE and BASE64) without analyzing the contents of the article data.
- It's also possible to use lowercase letters for commandline parameters.
- There are NEWSRC compatible import/export functions available to share the newsgroups files with other newsreaders. See chapter 3.1
- Fix: The multipart detection feature now ignores articles which do not have numerical 'made-of-nn-parts' indicators.
- The new commandline option /R restarts a reloaded receiver queue automatically when starting BNR.
- The /S commandline option has been removed. The BNR now automatically handles the ENOTOSCK problem of the lastest TCP/IP DLL.
- You can stop the execution of a script while being on the WAIT command.
- It's also possible to directly enter the name of a newsgroup in the drop-down-list. This receives the headers and automatically subscribes to this newsgroup.
- BNR supports SOCKS gateways. See chapter 5.2
- Fix: You don't have to restart the BNR after changing the XOVER-option on the 'Servers' page of the configuration notebook.
- BNR accepts different XOVER implementations of the newsserver. It should be possible to use the fast XOVER function in most cases.
- Added the new 'Help' pulldown menu
- A new option on the 'Configure' pulldown menu creates a BNR folder containing all necessary objects for OS/2 Warp V3 and V4 desktops.
Version 1.21 (released February 15th, 1997)
- Fix: The receiver thread always used uppercase letters to logon.
- Fix: The /R option didn't work on some systems.
Version 1.22 (released March 8th, 1997)
- Fix: Download ended when receiving a dot character with leading or trailing blanks which is not a correct EOF marker.
- Fix: The article container selector moved down one line when pressing the RECEIVE button and the currently selected article was not marked to download.
- Fix: The queue listbox selector moved to the top/end when removing an entry
- The 'Action' pulldown menu is available as a popup menu (right mouse button) from within the container. The function to mark an article as a subpart has been moved to the action menu.
- New function to mark a single article 'as read' without downloading it. This function is available on the action pulldown/popup menu.
- New function to go to a Web site referenced on an article subject. This function is available on the action pulldown/popup menu.
- New function to send an E-mail to the author of the currently selected article. This function is available on the action pulldown/popup menu.
- BNR didn't completely end when leaving after the STOP/RESTART buttons have been used.
Version 1.25 (release June 8th, 1997)
- BNR uses a separate TCP/IP connection for every newsserver request (get status, get article subjects, send NNTP command, post, get list of newsgroups, update list of newsgroups). BNR connects and disconnects automatically; therefore, the 'Connect' and 'Disconnect' option have been removed from the 'File' pulldown menu. The '/C' commandline option becomes obsolete. This also solves the problem that newsservers often disconnect clients after a period of time.
- Article headers are received using a separate thread (No busy cursor anymore). You can cancel this thread using the ESC key.
- The position and size of the configuration notebook is saved.
- Two new options have been added on a 2nd 'Filter' page of the configuration notebook: The first option allows to limit the number of article headers to be received. The second new option allows to specify the minimum number of lines an article must have. Articles headers with a line count less than the value specified are not being displayed. Be aware that you can suppress the last (too small) part of a multi-part file if you enable this feature. Both options are also available on the 'Override filters' window when overriding filters at runtime.
- There is a new button when overriding the filters at runtime to clear all filters
- Fix: The subscribtion date was not set when using the Cut/Paste function of the newsgroup manager editor.
- You can post with your real Mail-ID but without your name
- You can use the Web-Browser of your choice
- A new notebook page 'Logging' offers a set of loggings options when executing BNR scripts. There are 7 more script commands available (END, GOTO, ONERROR, LABEL, MESSAGE, TRACE and FILTER) to add user defined error processing to scripts.
- Warp V4 (Merlin) users have the new 'Merlin-style' notebooks
- You can move certain entries (and their subparts) to the top of the receiver job queue
- The additional script command EXECUTE provides a handy way to execute OS/2 commands while processing scripts
- Use the new %N variable in your decoder command to pass the name of the current newsgroup to the decoder. With this, you can decode the articles of different newsgroups to different subdirectories.
- You can add generic E-Mail IDs to the blocklist. They must have the format
*@myhost.net
. This would exclude all posts submitted by an E-Mail address at myhost.net.
©1996,1997 Ralf Christen, ralf.christen@ibm.net
Last modified June 8th, 1997