From BR Wiki
Jump to navigation Jump to search

3.90k Changes - 04/12/01

Errors Corrected

Certain internal enhancements were backed off, relating to writing to display files. As a result 3.90j was not released. However the listed enhancements to 3.90j are in this release.

The maximum dictionary size has been increased from 64k to 2MB.

3.90j Changes - 03/08/01


SORT and INDEX now take advantage of large memory availability.

Some of the 3.8 screen enhancements were brought forward.

The GRAPHIC_LINEDRAW configuration statement was dropped when 3.9 code was merged with 4.0 (CS) code. It has now been restored. However, both DRAWLINE.BMP and DRAWSUNK.BMP need to be placed in the same directory as BR. Using the CONFIG command for this purpose is not yet supported in 3.9. The statement must be placed in the configuration file to be effective.

CAUTION: The GRAPHICLINEDRAW form of the keyword (without the underscore) is no longer permitted.

Errors Corrected

Using the Q attribute to display a combo box character caused the field in question to have data superimposed over itself in a smaller raised font.

DIR is now looking for both the long and the short (DOS) versions of a specified filename.

STATUS LOCKS after a failed COPY was creating an abnormal termination of BR.

Ctrl-P on Unix was screening out line draw characters.

TYPE or LIST >LPT1: was failing.

The BTREE_VERIFY statement is now operational. Note that the keyword previously was BTREE2VERIFY.

3.90i Changes - 10/18/00

For wbconfig sys there is a new statement:

LOGGING loglevel, logfile

where loglevel is the maximim level of detail to be logged:

MAJOR_ERROR 0 // causes major problems during execution NOTABLE_ERROR 1 // unexpected error likely to cause problems MINOR_ERROR 2 // unexpected error that can be ignored MAJOR_EVENT 3 // starting program, exiting, shelling ... SECURITY_EVENT 4 // logons, logon attempts etc MINOR_EVENT 5 // individual commands ... DEBUGGING_EVENT 9 // added for debugging purposes

Any config messages that occur after this config statement will be sent only to the logfile, mostly with NOTABLE_ERROR. Is avoids displaying those REMmed out statements in front of operators.

Any config messages that occur before the config statement logging will be sent only to the screen. These will cause BR to pause a few seconds so that the messages can be viewed.

Installshield now permits retention of a pre-existing WBCONFIG.SYS file. During installation, the user will be asked if it should be overwritten.

Errors Corrected

Multiple Sessions on the last license was failing.

An unnecessary 3 second pause was occuring at startup.

Unix models were doing case insensitive compares only as long as the shortest argument. This caused protected files to be deleted when an attempt was made to delete a matching longer filename.

The Combo Box Graphic was dissappearing when the cursor ATTR field was also specified, or when the window was minimized and restored.

Shell calls to Windows applications are no longer maximized.

The maximum users were 127. Now they are 999.

Removed DRAWLINE.BMP from the Installshield deliverables, which causes a number of undesireable symptoms, including assertion failures. If you find this file left over from a previous install, REMOVE IT.

Known Problems:

DataHilite Off doesn't work.

INPUT FIELDS ... ATTR "R": ... doesn't reverse the current field.

3.90h Changes - 08/18/00

3.90h was used for field testing.

3.90g Changes - 06/26/00


DIR -C prints in columnar sorted order with a trailing / symbol for directories and a trailing * for executables.

DIR -W now sorts the output and uses the long filename format. -W works like -C, except the sequence of filenames is accross instead of down.

DIR -L shows permissions on the left and long filenames on the right.

Note- TYPE PRINT does not utilize printer substitutions, but Ctrl-P does.

Errors Corrected

Ctrl-P was not properly filtering control characters and displaying status information.

FILENAMES UPPER_CASE etc., was not being honored by DIR. See 3.9 features above for specifics of this feature.

Windows status line was not properly displaying procedure level.

PRINTER RESET strings were being applied prior to flushing any residue in the print buffer.

The WBCONFIG.SYS CURSOR statement was not being recognized.

3.90f Changes - 04/14/00


OPTION 24 suppresses recognition of the X attribute during INPUT SELECT operations. This is how versions prior to 3.8 worked, even though the documentation indicated that X applies to SELECT operations. Note- this is OPTION 25 in version 3.8.

Errors Corrected

Buttons were not working.

The COPIES= parameter had not been forwarded to the Unix/AIX lp and lpr commands.

PRINTDIR was failing under Unix.

WBCONFIG.SYS INCLUDE statements that referenced subdirectories were failing.

SPOOLCMD and SPOOLPATH had a case sensitivity conflict. BR now creates wbspool files with lower case names.

COPY ... -new_recl was padding with nulls instead of spaces

3.9 Documentation Revisions:

In 3.9 Ctrl-Y performs the same operation as Ctrl-X in 3.8. That is to repaint the screen.

New or revised error codes

0611 bad baud or other async initialization error 1038 illegal date or time 1070 undefined variable 4126 file abnormally truncated 4127 btree/isam conflict 4129 file name is too long 4139 could not re - reserve file after rename 4180 bad drive statement 4184 drive is already mapped 4194 null record encountered 4195 null record encountered 4196 null record encountered 4399 windows file not shareable 9201 internal - not a valid access for opening a file 9203 internal - not a valid create for opening a file

3.90e Changes - 03/03/00

Errors Corrected

PROC XXXX was not generating an error if the file XXXX did not exist.

On unix, copying a file over a file owned by another person completed the copy, but then a 4205 error was generated when unix unsucessfully attempted to change the file's creation time to that of the source file.

3.90d Changes - 01/09/00


To activate the new BTREE2 facility, specify OPTION 22 in the WBCONFIG.SYS file. For more details, see New Btree Facility under 3.90 Initial Changes below.

DIR now has two additional flags-

  • -L display long filenames in addition to the normal DOS style directory.
  • -B Display only the bare long filename, similar to DOS.

A NEW MODEL IS AVAILABLE CALLED WINDOS which is a native Windows 32 bit model WITH A NON-GRAPHICAL DOS CONSOLE. It uses the Windows print manager, Windows memory, and Windows file IO which are different from the DOS version. This model will be provided at no charge via the web site and will work with any BRSERIAL file licensed to either DOS or Windows. In other words you can substitute use of this executable wherever you would otherwise run either the Windows model, or the DOS model under Windows. This model does Not operate under pure DOS.

The command RUN STEP NORESTORE supresses the restoration of the screen after the initial restoration. This enables DOS and Windows models to work like Unix in this regard when stepping through a program.

The command RUN STEP RESTORE causes the application screen to be refreshed before processing each execution step, even in Unix. GO RUN does not reset the NORESTORE option.

Previously an OPTION 24 specified that a file should be freed and recreated when opened REPLACE, to avoid a Novell failure to truncate. This option has been eliminated and instead, BR checks opens with truncation. In the event the truncation failed (i.e. the file exceeds zero bytes), it removes the file and recreates it.

Leading blanks in baseyear sensitive fields are replaced with zeroes for sorting purposes, provided the remainder of the field contains only numeric data.

Note- the Y2K sorting and indexing features interpret year zero as zero (instead of 2000) *IF* the month and day are zero.

Errors Corrected

A FORM of N or G with a length greater than 127 caused unpredictable results. N and G lengths are now limited to 127.

          • Note- This change could cause existing programs to fail. *****

DIM A$*3 was compiling as though it it were A$*4 (rounded to an even length). This was also disrupting linputs of one byte during serial communications.

Shell calls under Unix were causing subsequent signal 11 failures.

Corrected the way BR locates the WBSERVER.DAT file in accordance with the manner noted in BR32.RTF and BR32.TXT.

BR was failing to Remove or Truncate the WBSERVER.DAT file when the file header was not recognizable.

Wildcard processing in commands was corrected. Several errors concerning RENAME and other file manipulation commands were occurring.

The command REN was not being recognized as RENAME if the file reference began with an asterisk.

LOAD G. SOURCE did not find the source file "g".

DIR dirname\myprog was not finding myprog.

DIR produced a response of zero bytes on NTFS file systems over 2 GB.

If PRINTDIR was activated by spooling a print file it corrupted the currently stored program name making subsequent LIST and SAVE operations fail.

An old problem relating to session and WSID assignment is corrected. If BR was at maximum user capacity it would not permit additional sessions.

IO errors pertaining to program loading were not being properly reported.

When the Windows autohide feature was off and the BR task was minimized, BR would generate an illegal operation when the window was maximized.

HELP strings were not supporting S/23 style filenames.

LIST 'xxx' REPLACE (with no replacement value) caused the process to hang.

RESET+ was appearing at the end of reports.

TYPE without a filename hung the process on Unix.

Debug data (see 3.9 extensions) can now be redirected to a file.

Debug commands will generate errors 1006 and 1070 instead of ignoring commands with errors.

Debug now displays up to 240 characters of scalar or array element data instead of just 80 characters.

The WBSERVER configuration statement no longer requires a drive letter.

STATUS FILES now shows all four parameters of the drive statement.

DIR :/dirname now works as DIR :/dirname/*, instead of failing to find files in dirname.

COPY on Unix was not resetting modification times to those of the original file.

COPY or FREE etc. with a -V flag was always performing the questioned action, even when N was specified by the operator.

Pressing the END key after entering a field with datahilite on, skipped to end of the window, instead of just turning datahilite off.

When using the FMT data type in INPUT FIELDS the tab key and back arrow generated a GPF.

Read file KEYONLY without having read a master record to allocate a buffer caused the task to hang. BR has always required a master record to be read before accessing a file KEYONLY. Now this error condition produces BR error 0718.

System calls -M -W -C -R now operate like their corresponding lower case flags. This case sensitivity had been suppressed to allow passing the flags to DOS, but that made the rules too obscure.

DOS error 4218 (no more files available) is now reported as error 4152.

RND was not accepting zero as a seed value.

3.90c Changes - 07/31/99


Fonts are displayed as bitmaps instead of characters. This enables us to accept nearly any font, and resize it and change aspect ratios. It also lays the ground work for subsequently displaying other Windows objects. NOTE THAT THE NEW DRAWLINE.BMP FILE MUST BE PRESENT WITH BR.

There must be at least one drive statement as it was in Unix which makes it clear where the initial working directory is. In version 3.8 drive statements were required only for file sharing.

Drive statements must now have four parameters. This avoids any confusion about whether or not a drive statement with three parameters was intended under 3.9 or whether it was left over from prior versions of BR. A backslash in the fourth parameter may be used to startup in the directory specified by the second parameter.

Programs are copied to a .BAK file before replacing them. This makes them recoverable from a failed Replace operation (out of space or corrupted file), provided another Replace command is NOT issued before attempting recovery.

Errors Corrected

A number of spooling errors happened under Unix that have been corrected.

The system honors Ctrl-A as it does on Windows models.

The was a problem in Unix loading programs saved under prior releases of BR. The system would occasionally lock up.

The status line is now being properly initialized. It previously displayed a variety of colors under Unix.

Exiting BR occasionally locked up the program under Unix.

FILE$(0) will now be displayed without a leading colon if OPTION 25 is specified. In 3.9, File$(0) displays with a leading colon to signify that it is not a normal data file.

3.90b Changes - 07/10/99


Opening files for input will now open them read only. THIS ALLOWS FILES WITH READ ONLY PERMISSIONS TO BE OPENED.

A consequence of this is the undetectability of multiple opens input noshr. However, this poses no jeopardy to data. Any open requesting write permissions will not be allowed while the file is opened input noshr, and no input noshr will be allowed while the file is opened for writing, but two opens input noshr MAY be allowed on the same file at the same time.

Under some circumstances, two attempts to open a file input noshr will fail and sometimes they won't. This is dependent on the operating system and what files are already opened. But, while restrictions have been loosened, they require no changes to your applications to assure data integrity.

Wildcards now work more like Unix. Wildcards , * and ?, can be used to match parts of file names in the following manner:

  * will match zero or more characters of any type in a file name.
  ? will match exactly one character of any type in a file name.

For compatibility with prior versions of BR, special processing has been made for files without a period in them which can best be described by example:

    Filename		Matching Arguments
    X			*.*     *     *.     --
    X.X                *.*     *     --     *.?* 
                       ( -- means no match )

Errors Corrected

Secondary help files were not always being searched for properly.

If BR is unable to remove the WBSERVER.DAT file when the first user logs in, it will now attempt to truncate the file to zero bytes before proceeding.

Menu$ was not returning the correct value.

Captions on windows were not displaying.

INPUT SELECT using numbers or letters to navigate. Wasn't honoring keys other than arrows.

Color in Linux was not working correctly. There are still color problems using the console under Linux, but remote telnets with ansi terminals will be able to display color.

10 EXECUTE "*PRINT NEWPAGE" was logging in the command history. Now any command that begins with an asterisk will not be logged, whether or not it is initiated by a program.

3.90a Changes - 03/21/99

The serialization technique was revised to handle multiple platforms with one BRSERIAL.DAT file.

Errors Corrected

Control-P now omits fields marked invisible.

The Linux model had a problem with function keys and the color console.

3.90 Initial Changes

The number of Authorized users is displayed, in addition to the number of current users.


Array sizes may now exceed 64k. Arrays may now occupy up to 512K of memory.


The maximum number of lines in a program has been expanded from 4100 to 32000.


The sort and index creation utilities now utilize significantly more memory than before, and yield significantly better performance.


An entirely new BTREE index facility is included. It is referred to as BTREE2. BTREE2 provides significantly faster (25 - 35%) performance in shared file processing. We have had a few reliability problems with the present BTREE in situations where many concurrent updates are performed. Additionally, our users have experienced other media, network, and disk controller weaknesses that have corrupted indexes. So we have added diagnostic capabilities to BTREE2.

A new WBCONFIG.SYS statement is supported:

BTREE_VERIFY {master-filename} [ OFF ]

This statement causes BR to separately audit the structure of the current index branch after each operation that alters an index relating to the named file. Obviously some performance penalties are in effect when processing files in diagnostic mode. However, it can pinpoint what update operations are failing when failures occur.

Also, the INDEX command has a new keyword, VERIFY, that can be used in place of REPLACE or REORG. If used with a BTREE2 file, the index will be audited instead of being rebuilt. Furthermore, REORG, in relation to BTREE2 INDEX commands, means "audit and if needed rebuild."

To activate this feature, set OPTION 22 in your WBCONFIG.SYS file. The system will automatically create new indexes in BTREE2 format and will keep track of which files utilize BTREE2 indexes. Note that BR does not permit mixing Btree index types within related files (multiple opens of the same master file with different indexes).


PRINT FIELDS "row, col, C 10, Q,X02": "Box Caption" will place a graphic combo box down arrow graphic to the right of the field. When the field is double clicked, a HEX 02 keyboard character is generated. The X02 could also be a four digit hex value (X5044) or a function key number (14).


Any FIELDS text may now generate a scancode when double clicked, similar to the way BUTTONS and the Combo Box graphic do.


The ability to enter and process more text than a window field can display at one time is included. This is a very powerful feature that lays the groundwork for support of proportional fonts. You will, for example, be able to enter and maintain fifty characters of data in a ten character window field on any platform.

The syntax for enabling this capability is:

INPUT FIELDS "xx,yy,C 8/12,UH": name$

Which enables up to 12 characters to be entered into an 8 character window field.


A new keyword, FONTS, has been added to the STATUS command that lists installed fonts that are suitable for use with BR.


The DAYS function can now be used to store and perform date arithmetic on dates beginning with year 1700. Negative numbers are used to denote such dates.


Version 3.9 enables NFS and NetBui network record and file locks.


Version 3.9 will support long filenames with a variety of alternatives with respect to case sensitivity. Unix defaults to case sensitive, and DOS/Windows defaults to case insensitive. Business Rules! defaults to lower case on all platforms, unless overridden by a FILENAMES configuration statement.

This new WBCONFIG.SYS statement controls the appearance of newly created files:


Mixed case uses the NAME= string unmodified, and permits searching only on Unix when no case sensitive match is found. Other platforms ignore the SEARCH keyword.


Data Display:

DISPLAY variable | ALL [ OFF | PRINT ] [ >filename ]

Shows the value of 'variable' or all variables, after any changes, plus the line number associated with the change(s), in the format:

line-number (that caused the change) variable-name new-value

Program Flow:

In STEP mode GO indicates GO RUN. Enter indicates GO STEP.

BREAK variable | line | label: [ OFF ]

Causes the program to go into step mode when the variable contents are changed, or the pecified line is encountered. Both "BREAK variable" and "DISPLAY variable" may be tive on the same variable concurrently.

Extended Function Key [Ctrl F1 - Ctrl F4] Stepping:

  • Step Into Clause- Processes only the next clause.
  • Step Over Clause - Processes the next clause plus all routines called by it.
  • Step Into Line- Processes up to the next line number encountered.
  • Step Over Line- Processes the next line plus all routines called by it.

Note Ctrl-F1 - F4 increases Fkey number as scope of step increases.

Release 3.9 is not supported under Windows 3.1 in native Windows mode. However, most applications can be run under DOS running under Windows 3.1. Version 3.8 is the last release that will be supported under Windows 3.1 using WIN32S. We currently have no plans to support any version beyond 3.9 under DOS. However the WINDOS model is available which is the Windows model with a DOS console.