Sign up on the Revelation Software website to have access to the most current content, and to be able to ask questions and get answers from the Revelation community

At 16 JAN 1999 05:31:00AM Adrian Newman wrote:

Anyone know what version of Rev TRIMF & TRIMB shipped with? The manuals I have give descriptions of these two, but I can only find TRIM.ALL in the verbs file. Anyone know the parameter(s) when calling TRIM.ALL? Tried passing it a test string (in the hopes that the leading & trailing spaces would be removed), but it was returned untouched.


At 16 JAN 1999 11:03AM Richard Wilson wrote:

TRIM, TRIMB, TRIMF were all basic functions dating back

to release g2b (probably goes back to rev F but I dont have the

floppies anymore). I dont ever remember seeing a TRIM.ALL

item, maybe it was a custom routine on your system


At 17 JAN 1999 01:34PM Michael Slack wrote:

My Arev 3.12 R/Basic manual gives

TRIM(expression) for trimming all spaces

TRIMF(expression) for trimming spaces from the front of the string

TRIMB(expression) for trimming spaces from the back of the sting

You would use it like

Var2=TRIM(Var1)

I assume that your original string that you tested on did have extra blank spaces in it for the TRIM function to work on.

Michael Slack


At 19 JAN 1999 02:30PM Warren wrote:

These functions were there in Rev D.


At 19 JAN 1999 04:57PM Karl Malden wrote:

Hey, maybe thay were there in 'A' since they came from Pick


At 19 JAN 1999 05:05PM Dom Delouise wrote:

I seem to remember a 'SLIM' command. The syntax was 'SLIM ALL'.

You may be confusing this with TRIM. TRIM removes extra spaces. SLIM removes the excess fat that many consultants build into their programs to jack up the price. You can select all programs (ie. SELECT BP SOURCE) and follow it with SLIM ALL. You'ld be amazed at how many programs shrink in size.


At 21 JAN 1999 11:03AM Warren wrote:

FWIW: TRIMF, TRIMB are from Prime Info/Basic. Pick Basic R83 and earlier only had TRIM.

RBasic is much more like Info/Basic and Ultimate's Basic than pure Pick.

$TRIM.ALL is the object code of the routine that these functions call.


At 23 JAN 1999 03:01PM [email protected] - [url=http://www.sprezzatura.com]Sprezzatura, Inc.[/url] wrote:

Without meaning to be overtly geeky or anything, TRIM, TRIMB and TRIMF are opcodes, embedded into the engine whilst TRIM.ALL is an R/BASIC program which may or may not call any of the trim opcodes.

I do not believe the opcodes make a call back to TRIM.ALL, though I could be mistaken.

[email protected]

Sprezzatura, Inc.

www.sprezzatura.com_zz.jpg


At 24 JAN 1999 02:26PM Karl Malden wrote:

I'll give $5 to the guy who can prove what release TRIM was introduced. We have some who says 'A', Some with 'D', and a few with G or G2B (does anyone really know the difference between these 2).

I can't believe there is so much discussion about this command


At 24 JAN 1999 02:27PM Karl Malden wrote:

I'll give $5 to the guy who can prove what release TRIM was introduced. We have some who says 'A', Some with 'D', and a few with G or G2B (does anyone really know the difference between these 2).

I can't believe there is so much discussion about this command


At 25 JAN 1999 08:10PM Warren wrote:

Well…most of us aren't privvy to the internals of ARev without breaking the license agreement :-)


At 26 JAN 1999 11:39AM [email protected] - [url=http://www.sprezzatura.com]Sprezzatura, Inc.[/url] wrote:

For your trvial pleasures, your good friends at Sprezzatura present another in our series of archane Revelation information and trivia.

This is from the Revelation G to Revelation G2 update disk.

This section describes the changes to Revelation incorporated in Update G.2. The changes are arranged under the headings: R/BASIC, R/DESIGN, R/LIST, R/TEXT, SYSTEM, TCL, and UTILITIES.

R/BASIC

$INSERT

Symbolic fields support the $INSERT syntax.

@FILES

@FILES variable applies in R/BASIC. Returns a dynamic array of the files that are currently attached.

@TCL.STACK

This command returns a dynamic array of the last twenty commands typed at TCL.

ATAN

Engineering functions ATAN and TAN have been fixed.

DEBUGGER

The DEBUGGER accesses correct labelled common variables.

DEBUGGER

The DEBUGGER allows access to @ANS, @DICT, @RECORD, and @ID.

FORMAT

R##-## formats work in R/DESIGN.

FORMULA

MULTIVALUED operations such as +++ have been fixed to return the answer with 4-decimal precision. For example:

Before: (11 — 33)/33=-1 Now: (11 — 33)/33=-.6667

GOSUB

ON GOSUB statement in R/BASIC has been fixed to branch to the last label, even though index is greater. For example:

X=5

ON X GOSUB L1, L2, L3, L4

(Branch will go to L4)

INMAT

INMAT() function when used after, OPEN, contains the modulo of the file opened (data portion).

MULTIVALUED

MULTIVALUE operators such as +++ have been fixed to positionally match values before doing the operation. This removes the undocumented function of doing a one to many operation.

PRINTER ON

NETWORK command, PC SPOOL (for NETWARE networks), works in R/BASIC when next to PRINTER ON statement.

XLATE

Translate (XLATE) function has been fixed to not buffer last record translated if any file modifications have been made.

Programs and symbolic dictionary records that use the translate (XLATE) function must be recompiled to enable this fix.

FORM

LABELS

FORM has been fixed to handle printing of multiple labels with a varied number of lines are printed on each label. Resolves the problem of the first label printed controlling the other labels.

MARGIN

FORM has three new commands available:


ALIGN=YES - Allows alignment of printer after each page.


SELECT=xxxx - Where xxxx is any RLIST select/sort criteria for that form. Do not specify the file name as it is already known from the command line.


MARGIN=5 - Allows the left margin to be set (in this case to 5).

MV

FORM accepts a list generated by sorting on a multivalued field.

SPACEOUT

FORM compensates for the space used by the back slash (\) at the beginning of a line.

R/DESIGN

BUD

BUD no longer erases the master default record when 'END' is typed at the auxiliary screen prompt.

BUD no longer goes to DEF when a return is entered at the FIELD NAME field. It is now a required field.

BUD can be run when no RDES file is attached.

BUD has an 'MD2,$' default for money.

BUD prevents dictionaries from duplicating object code after field 21.

DISPLAY

A symbolic field on a screen can have a text format and a depth value.

More than 100 multivalues can be centered into a field (early release G problem).

DOCUMENTATION

The DOC processor lists PARAMETER 1, PARAMETER 2, and NULL DEFAULT information.

ENTER

In linked screens, the QUOTE null default function defaults the correct value.

Symbolic fields between parts of the key work when feeding a select list into an entry screen.

Occasional "ENTER PROGRAM NAME" message when using interpreted screens was fixed.

The word "GOOD" in an entry screen can be used as data. It is no longer treated specially by the interpreter.

Both 'ADD' and 'add' are valid options at the CHANGE prompt.

The "CHANGE" variable in a wrapup routine (parameter 22) can be set to the following values:

0=Enter normal entry mode immediately.

1=Enter change mode immediately.

"STOP"=At a prompt, enter change mode immediately.

"STOP"=At the CHANGE prompt, do normal file maintenance, and then terminate the program. Screen linkages also are stopped.

Special operators associated with wrapup routines (+ or :) can be a prefix or suffix. So :TEST is the same as TEST:. Note that the plus (+) operation (call wrapup even if record has not changed) only works at CHANGE. The colon (:) is used to call the wrapup routine during the initial display of an existing record as well as during update.

Linked screens allow cross references to exist on any screen. The record key may be changed or the record deleted from any screen.

Last screen of a linked set gives the option to look at earlier screens or file record only when looking at an existing record.

Recalculation of all symbolic fields can be suppressed by placing a '1' in Field 8 of the screen template in the RDES file. You must use the line editor to do this. Only the symbolics following immediately after the prompt changed are recalculated.

You can suppress the locking logic of a NETWORK interpreted screen by placing a comma (,) in Field 18 of the screen template in the RDES file. This allows an entry screen to be used in the inquiry mode. Use the line editor to make this modification.

Setting the CHANGE variable in the wrapup routine of a multivalued field to 'ERROR' reprompts for that multivalue.

Type the word 'FILE' at any CHANGE prompt of a linked screen to immediately do a file update and return to the first screen.

The ENTER processor allows a plus (+) sign to follow a number at the CHANGE prompt. This allows you to start at a prompt and continue prompting without returning to the CHANGE prompt.

ENTER can be forced to print the screen linkage options message during the entry of a new record. This is done by setting RDES field 19 to a '1'. Make sure to first expand the top of the R/DESIGN template (before the Char(247)) to accommodate 19 fields first.

Typing ?F at any prompt immediately brings up the CHANGE prompt.

GEN

When generating multiple screens, GEN no longer duplicates program labels.

GEN now verifies that a screen has gone through the SEL and SCR.GEN process before it attempts to generate code.

The CN template (BP.CHANGE) now contains the UNLOCK ALL statement when generating code used in the network environment.

LOOKDICT

LOOKDICT can display a large dictionary when it has a number of symbolics.

LOOKDICT can be directed to the printer using the (P) option.

PGMR

PGMR requires a key entry.

PROMPTER

Using a TEXT window in R/DESIGN allows the duplication function (F2) to work. When adding a new record ,use this function to duplicate the text field from the previous record. Before you type any information into the TEXT field, press .

Additional patterns work when specified in with 'NOTEXT'.

PROMPTER allows spaces in cross reference specifications:

\CITY = KIRKLAND

Prompting width problem when using expanded format definitions such as R(###) ###-#### has been fixed.

Multivalued fields with %U% pattern can be viewed without changing.

Edit patterns are checked when special null defaults ( or {} ) are used.

Prompter suppresses printing of "DEFAULT= when doing bottom screen prompting and when default is null.

Setting a field sequence counter can be done by typing an equal (=) sign followed by the desired number. Used during data entry on fields with null default of %S%.

A required field no longer accepts a NULL.

SCR

SCR locks the screen being customized for network users.

SCR clears the dictionary builder screen after aborting BUD.

SCR updates all fields with most current dictionary field and key part numbers whenever a screen is filed.

SCR calculates the correct mask length on extended formats such as R##-##-###.

SCR.GEN

SCR.GEN no longer forces a mask character if one is not specified.

The R/DESIGN record no longer contains the dictionary formula. This saves considerable space. All formula references on a screen come from the dictionary (this has always been so).

VERIFLE

It has been mentioned on concatenations with VERIFILE operations using symbolic references (e.g., CODEÿ{REGION}) that the asterisk (*), is not being placed between the parts of the key. This is not done to add user flexibility. If you wish to put in the asterisk (*), then it must be accounted for in the symbolic definition.

XREF

Cross reference display has been fixed to look at the Length and Conversion of the source file @ID instead of the XREF file.

INVERT.ALL has been modified so that it processes all cross references updates to the record at the same time, instead of passing the file for each cross-reference.

INVERT.ALL works with multipart keys.

REFINE capability in displaying CROSS REFERENCES has been fixed to look at specified word delimiter instead of a space.

Cross Reference display has been fixed to correctly display references over 99.

R/LIST

BREAK

R/LIST prints external conversion when breaking on fields with conversions (e.g., dates).

R/LIST prints correct label on break line when breaking multiple levels deep and using the 'V' OPTION.

BREAK-ON

R/LIST can BREAK-ON a text field or a multivalued text field.

R/LIST can BREAK-ON a multivalued field. The field must be the result of a multivalued sort.

R/LIST has been fixed to only print one page-up break when multiple page-up breaks have been specified.

HEADING

R/LIST allows blank lines in a multiple column heading.

R/LIST handles heading statements up to 1000 characters long.

LIST

R/LIST allows searching of text fields using 'CONTAINING', etc.

SORT

SORT and SELECT allow the use of the break key during processing.

NUMERIC sorts with a Right Justification and a field width less than 10 have been fixed.

R/TEXT

TEXT

R/TEXT saves the TAB settings in the TEXT record (VERBS file).

TEXT behaves correctly when calling LOOKDICT using the ESC key.

R/TEXT correctly highlights blocks when used with R/DESIGN.

REFORMAT

TEXT reformat no longer has the problem of reformatting a line longer than 10K.

TEXT.WINDOW

R/TEXT when used with R/DESIGN now cleans up trailing lines when field becomes shorter or two lines are merged.

SYSTEM

IBM

NETWORK IBM runs in a standalone mode as well as network mode.

LINK

The end of groups in link files are packed with Char(0)s so it is easy to see where the end of a group is.

TCL

ATTACH

ATTACH ….(S) suppresses system messages. You must manually change your respective VOC entry for ATTACH so that field 1 is VERB3 instead of VERB1.

BLIST

BLIST delimits blocks of multilined syntaxes for ease of reading printouts.

COPY

COPY command allows routing a hex listing to a record. For example:

:COPY TEST ABC (X) TO: ABC.HEX

COUNT

COUNT loads the @RECCOUNT variable.

COUNT considers selection criteria in the TCL command line. For example:

:COUNT INVOICES WITH STATUS "UNPAID"

CREATE-FILE

CREATE-FILE and RECREATE-FILE allow suppression of system messages by using the (S) option.

DUMP

The DUMP verb allows byte editing of frames in LINK files.

MV

SELECT lists created by sorting a multivalued field can be fed into other select lists and FORM.

RECREATE-FILE

RECREATE-FILE uses the volume where the original file is located as the default volume.

RTP22

On-line HELP at TCL is more context sensitive. For example, typing "COPY FILE.A ONE" and then pressing displays the on-line help and feeds the sentence typed so far into the prompt.

"INS" is printed when in the character insert mode at TCL.

You can set the acceptable ASCII character set range used by RTP22 in TCL and R/DESIGN prompting. Parameters are in the TEXT record in the VERBS file fields 50 (the lowest) and 51 (the highest).

RTP22 suppresses the printing of TOP, END, ?F, and insert mark (^) when they are loaded into a data statement by a wrapup subroutine, etc.

SELECT

TCL does not lose a select list if the next command typed is invalid. To clear a select list at TCL, type CLEAR.

TCL

SET-COLOR allows partial settings before SET-COLOR has been formally initialized.

UTILITIES

LINKHASH

UTILITY disk has a subroutine in the PROG file called 'LINKHASH' which returns the frame number for a link file.

PORTER

The IMPORT/EXPORT routine handles multipart keys.

PORTER puts CRLF after each record exported to DOS. Will also strip them off when returning to REV.

RTP22.GEN

UTILITY disk contains RTP22.GEN which changes the cursor and function key control input of Release G back to the way Release F handled input.

NETWORK VERSION

The LOCK / UNLOCK logic allows you to lock multiple records but not the same record more than once. That is, you cannot lock a record that is already locked.

You can check the status of a record with the STATUS() variable. The STATUS() values and their meanings are

0=Successful lock on network

0=Unsuccessful lock on a network; not the station's own lock

1=Unsuccessful lock; current station's previous lock

An example of STATUS() variable use

follows:

LOCK CM, 101 ELSE

PRINT STATUS()
PRINT 'ALREADY LOCKED ON NETWORK'

END

LOCK CM, 101 ELSE

IF STATUS()=1 THEN
  PRINT 'ALREADY LOCKED BY YOU'
END ELSE
  PRINT 'ALREADY LOCKED ON NETWORK'
END

END

Entering UNLOCK ALL clears all locks at every level for a specific station.


At 26 JAN 1999 12:01PM Al Greene wrote:

TRIM.ALL converts all special characters (*&/!~ etc) to spaces and then does a trimf, trimb, trim. Where is it used? EXPAND.INVERTS calls it…


At 26 JAN 1999 02:21PM Warren wrote:

Worked with D, never had disks or manual. I think I still have my E disks, but my distributor wanted the manuals back when I upgraded to F. Still have my F disks and manuals though.

If I recall any versions before D weren't really sold commercially (more by word of mouth) so copies would be very rare.

Where's Betty Erickson? She could probably clear this up. Or maybe contact the Otsby's at www.visualworld.com?

View this thread on the forum...

  • third_party_content/community/commentary/forums_nonworks/9be11ab42d79a60c852566fb0039c52e.txt
  • Last modified: 2023/12/28 07:40
  • by 127.0.0.1