Sharing Dictionaries between Advanced Revelation 1.x and 2.0
Published By | Date | Version | Knowledge Level | Keywords |
---|---|---|---|---|
Revelation Technologies | 15 JAN 1990 | 2.X | INTERMEDIATE | DICTIONARIES, DICT.MFS, FIELDS, PROTECT.SPEC |
The new version of Advanced Revelation features a new dictionary structure. Many more fields have been added to dictionary records, the %FIELDS% control record has been expanded, and a new control record %PROTECT.SPEC% has been added.
Advanced Revelation 2.0 automatically upgrades all dictionaries at OPEN time as required. The message Rebuilding control records… will be displayed while this process is going on. Rebuilding of control records is triggered by one of three conditions:
- the %FIELDS% record is missing
- the %FIELDS% record is in the 1.1x format (new fields are null)
- the new control record %PROTECT.SPEC% is missing.
Three operations are performed during the rebuild of a control record:
- %FIELDS% is rebuilt from scratch.
- %PROTECT.SPEC% is rebuilt from scratch.
- Any object code found in field 31 of an S or F type dictionary record is moved to field 51.
No other fields of the dictionary will be modified as a result of this process.
The building or enhancement of the two control records is of no consequence to Advanced Revelation 1.1x. However, the fact that the object code has been moved will cause loading errors on dictionary extract accesses or symbolic executions.
Converting Dictionaries Back to 1.1
If the dictionary files are to be returned to use by 1.1x after access from 2.0, then the dictionary records may be re-compiled by copying all of the records to themselves using this syntax:
COPY DICT.dfile * TO:(DICT.dfile (O
This will cause the object code to be moved back up to field 31 where it is expected to be for 1.1x.
Sharing Dictionaries between 1.1 2.0
Because of the change in dictionary structure, dictionaries cannot normally be shared by the two versions of Advanced Revelation. As soon as version 2.0 opens the dictionary, it will be updated to the new format.
New DICT.MFS
To overcome this incompatibility, a new version of DICT.MFS for version 1.1 of Advanced Revelation is provided with the upgrade process. This replacement MFS will allow Advanced Revelation 1.1x to access both 1.1x and 2.0 dictionaries by moving object code found at field 51 up to field 31 on reads and moving object code down to field 51 on writes if the object code already is located at field 51 or if the record is a new dictionary record. No other fields are affected by the MFS.
If the dictionaries are to be concurrently accessed by both 1.1x and 2.0 then the alternate DICT.MFS for 1.1x must be used.
The new DICT.MFS is provided in a DOS file called $DICT11X.MFS on the first install disk. To install the new DICT.MFS, follow these steps:
- Save the existing $DICT.MFS just in case:
COPY SYSOBJ $DICT.MFS TO: $DICT.MFS.BK
- Copy in the new $DICT.MFS to the SYSOBJ file:
COPY DOS A:\$DICT11X.MFS TO: ï (SYSOBJ $DICT.MFS (O
- Log out of Advanced Revelation and back in. The new version of DICT.MFS will not be functional until you do so.