QTIPS - DOSTime
VERBatim - V11
@ATTACK - @Backgrnd.Time
@ATTACK - @Index.Time
QTIPS - Time-outs in Windows
SecureUser
VERBatim - V25
@ATTACK - @Files.System
Advanced Revelation Initialisation Sequence (Overview) by Mike Pope
REVMEDIA Revisted
Version 3 Technical Highlights - Customising NewApplication Creation
RTP Series - RTP42
RTP Series - RTP51
Reader's Clinic - AREV Runtime
@ATTACK - @PDisk.On
Advanced Revelation Initialisation Sequence (Overview) by Mike Pope
AREV Comes to Czechoslovakia Les Palenik, Cosmotron Systems
Form.List.S
Make.Index
Index Sub Revisited
QTIPS - Make.Index 2.11+
QUERY.SUB
Version 3 Technical Highlights - Creating New Accounts Programmatically
Version 3 TCL Subroutines - Creating New Accounts
Version 3 TCL Subroutines - Creating Tables
RTP Series - Introduction and Notes
RTP Series - RTP27
QTIPS - Printing Large Variables from the Debugger
VERBatim - V87
@ATTACK - @Modal
RTP Series - RTP5
RTP Series - RTP21
@ATTACK - @Null.Eval
Reader's Clinic - EVAL
What's New (and un(der)documented!) In 2.12
File Variables
Argument passing - Subroutines and Functions - Mike Pope
RevTech Replies - Mike Pope (RevTech UK Ltd)
Symbol Table Structure
Reader's Clinic - Naming Routines
Reader's Clinic - Prompting for Passwords
Reader's Clinic - Removing "Searching Cross References" Message
Message
Trapping Message Calls
A RevTechie Replies - And Miscellaneous Jottings - Mike Pope - Revelation Technologies (UK) Ltd
QTIPS - Standardising Error Message Display
QTIPS - Interrupt Proof Error Messages
QTIPS - Improving the Message Window
Version 3 Technical Highlights - New Message Types
Utility Diskette # 3 - Part I
QTIPS - Finding/Replacing Spaces With The Editor
Utility Diskette # 4
RTP Series - RTP42
VERBatim - V65
Argument passing - Subroutines and Functions - Mike Pope
V119 - Part I
V119 - Part II
VERBatim - V121
Utility Diskette # 3 - Part I
@ATTACK - @Break
QTIPS - Break-On Date Fields
A RevTechie Replies - And Miscellaneous Jottings - Mike Pope - Revelation Technologies (UK) Ltd
Reader's Clinic - Suppressing Break-On Columns (Again!)
A RevTechie Replies - Mike Pope - Revelation Technologies (UK) Ltd
QTIPS - BREAK-ON Headings
The End of the Line - Mike Pope and Hal Wyman
QTIPS - RLIST Average / Total Results
What's New (and un(der)documented!) In 2.12
Version 2
Directory Exists on Novell
Gas Bar
Prompt Help
DOS Interfacing (Part II)
@ATTACK - @Help.Level
@ATTACK - @StatList
QTIPS - Standardising Error Message Display
Video Control
Customising the Status Line
Merge Processor
QTIPS - Using INIT.VIEW with Printers
@ATTACK - @PDisk.On
VERBatim - V25
@ATTACK - @Files
@ATTACK - @Files.System
@ATTACK - @Volumes
RTP Series - RTP9
RTP Series - RTP50
VERBatim - V25
@ATTACK - @Files
Utility Diskette # 3 - Part I
RTP Series - RTP25
QTIPS - Printing Large Variables from the Debugger
QTIPS - Assorted Oddments
Reader's Clinic - ReEnable TCL from Debugger
The End of the Line - Mike Pope and Hal Wyman
What's New (and un(der)documented!) In 2.12
A RevTI Techie Replies - Mike Pope - Revelation Technologies (UK) Ltd
VERBatim - V25
@ATTACK - @Files
@ATTACK - @Files.System
@ATTACK - @Volumes
Argument passing - Subroutines and Functions - Mike Pope
Caching in on the Frames Array - Mike Pope
QTIPS - Fast Dynamic Array Building
SecureUser
VERBatim - V86
Advanced Revelation Initialisation Sequence (Overview) by Mike Pope
RTP Series - RTP5
VERBatim - V22
QTIPS - Handy Compiler Options
2.1 Highlights
REVMEDIA Revisited
RTP Series - RTP7
QTIPS - DOS File Names
DOS Interfacing (Part II)
VERBatim - V116
@ATTACK - @Pri.File
@ATTACK - @Rollout.File
File Variables
How Indexes Are Updated
Index Record Layouts
QTIPS - File Variable of File In SELECT Statement
QTIPS - Amending non-Attached Files
LINEAR HASH FILE STRUCTURES - Part 1
Index Flush
QTIPS - File Handle Structure
RTP Series - RTP25
RTP Series - RTP27
QTIPS - Printing Large Variables from the Debugger
VERBatim - V87
@ATTACK - @TCL.Stack
RTP Series - RTP1
Advanced Revelation Initialisation Sequence (Overview) by Mike Pope
QTIPS - AREV Logon
What Happens At Logon
QTIPS - Undocumented Logon Options
QTIPS - Video Characteristics for Logon Messages

RevMedia FKB

DocumentV1I1A3
TitleRTP Series - Introduction and Notes
KeywordsRTP
SYSCOM
$RTP1
TextRTPs (Run Time Programs) are those programs used within the system to do the
legwork They are to our application what DOS is to AREV The routines for
the most part make use of the SYSCOM area and thus cannot be called FROM our
own program The only way around this is to call the RTPs via an EVAL
statement (for an explanation of SYSCOM and why EVAL works see notes
following) This is frequently too much of an overhead to be of any use

A working knowledge of the RTPs can be incredibly useful when we get an "RTP
xxx Variable Not Assigned a Value" message If we know what individual RTPs
do we will find it that much easier to correct any errors

Notes: SYSCOM (Short for SYSTEM COMMON) is that group of common variables
set aside for use by the system As an EXAMPLE of the sort of information
that is stored in SYSCOM we have the Break Key Status the Printer Status
etc One interesting area to consider is the @FILES variable which contains
the files attached This is in fact a dimensioned System Common variable
with five elements To check this out simply drop into the debugger and
type /@FILES Note that the debugger shows you each array element one at a
time Those of you have who programmed AFSs and MFSs will realise that you
have had to duplicate elements of the @FILES variable yourself (Annoying
eh?) but most of them are not available to the end user programmer The
only way to gain access to these VARIABLES is WITH a System Compiler
something that understandably Revelation Technologies do not release

The EVAL STATEMENT has to contain the SYSCOM area to be able to call RTP5
directly Thus by EVALing your CALLS to RTPs you can include the SYSCOM area
and thus explore the use of RTPs This will not work WITH all RTPs
especially those that return an implicit "True" or "False" (eg READV rec
FROM file var id THEN true ELSE false) as we cannot intercept this THEN or
ELSE and consequently get a stack OVERFLOW Note that if you try this no
responsibility is accepted for the results and if backing up is not yet a
habit WITH you I suggest you change NOW!

If you do wish to amend RTP1 to change the logon PROCESSING MESSAGES do the
following

Firstly back up your system

Just in CASE things do go wrong make an extra COPY of REVBOOT at dos
(call it REVBOOT BAK or somesuch) that way if AFTER making the changes
you find that you cannot log in you just copy your backup copy onto
REVBOOT and try again (NB do not call it REVBOOT OLD as the system uses
this NAME when we REBUILD REVBOOT later)

Log into SYSPROG

EDIT VERBS $RTP1 (Ensure the status LINE displays Ed Ovr)

Ctrl F to find the processing message you want

Overwrite the message WITH your own (NB Ensure that you own message is
of IDENTICAL length to that it replaces)

Save the record and return to TCL

At TCL TYPE BUMP

In the BUMP WINDOW change your NETWORK DRIVER to something else and
press return Confirm that you wish to do the change and the system will
then DISPLAY the "Rebuilding REVBOOT" message

Change your network driver back to what it was (same steps as above) and
log out

This should have changed the message


NB: To remove AREV 1 1 BANNER invoke AREV (S


(Volume 1 Issue 1 Pages 5 7 8)


GENERAL NOTES
At logon all routines found in SYSOBJ are loaded onto the Program Stack and
remain there for the duration of the AREV SESSION Thus if we want our
routines to stay MEMORY RESIDENT we can put the compiled CODE into SYSOBJ

If however we do not wish to clutter up SYSOBJ WITH our OBJECT code we can
put the name of our routine into a record called SECONDARY LOAD in the
SYSOBJ file and put the OBJECT code for the routine into the VERBS file
Once SYSOBJ has been loaded onto the stack the bootstrap PROCESSOR checks
SECONDARY LOAD and puts the OBJECT code pointed to by the SOURCE NAMES onto
the Program Stack

One point to note WITH this is that the name of the routine must be the name
as it is found in the VERBS file without the $ sign It is not enough that
it be a catalogued routine Putting the name of a catalogued routine into
SECONDARY LOAD will (if the OBJECT code is not in VERBS) prevent you form
logging back onto the system AREV will display a W175 message and then
return you to DOS The only way around this problem is to either restore
your REV00001 * (SYSOBJ unless you've recreated it ) files FROM a backup
or to use a Q POINTER FROM another AREV system to reinstall the
SECONDARY LOAD record So if you are going to PLAY WITH SECONDARY LOAD
ensure that you have backed up your SYSOBJ file first! (OK I admit it I
didn't )

Again it is worth pointing out that OBJECT code in SYSOBJ or VERBS does not
need a CATALOG pointer but there is no guarantee that subsequent AREV
upgrades will not overwrite our code If you use this method be aware of the
potential PROBLEMS and call your routines by NAMES unlikely to be
overwritten (E G MY OWN POPUP not POP UP!)


(Volume 1 Issue 4 PAGE 8)
[revmedia/copyrigh.htm]

Page last modified: 30/01/03