OR / ORR - Overlay Replace Lines
Syntax
OR[n] ORR / ORR |
ORR is the block form of this command. |
Operands
n |
The number of lines to be overlay-replaced. If you do not type a number, or if the number you type is 1, only one line is overlay-replaced. |
Description
The Overlay-Replace line command operates similar to the standard Overlay line command, with a slight difference. Overlay-Replace is used to unconditionally overlay data from the ‘sending' lines to the ‘receiving' lines.
The standard Overlay line command takes a set of one or more ‘sending' lines and overlays them on top of a set of one or more ‘receiving' lines. Sending lines are marked by C/CC or M/MM line commands, and receiving lines are marked by O/OO or O&/OO& line commands. (The & versions are persistent variants of the standard O and OO commands).
In the standard Overlay, non-blank characters in the sending lines overlay blank characters in the receiving lines, on a character by character basis. A ‘benign overlay' occurs if a non-blank sending character position is matched to a non-blank receiving character when the two character values are identical. When the two relative positions are not blank and are not identical, an overlay mismatch occurs. For sending lines marked with C/CC, the mismatch is ignored for that character in that column, and the receiving column is unchanged. For sending lines marked with M//MM, the mismatch is ignored for the character in that column, an error message is displayed, and the mismatch prevents the lines marked with M/MM from being deleted afterwards.
For Overlay-Replace command, these semantics are modified as follows.
The receiving lines for an Overlay-Replace are marked with the line command OR, or with a block command of ORR or OROR. For an Overlay-Replace command, the overlay mismatch condition that can occur for a standard Overlay command does not take place. There is no such thing as a mismatch in this command, and no mismatch error messages are displayed.
Instead, all non-blank characters from the sending lines are superimposed on the receiving lines, without regard to the prior contents of the receiving lines. Where a sending line has blank character positions, the corresponding character positions in the receiving lines are left unchanged. Because mismatch conditions can never occur, sending lines marked with M/MM are always deleted afterwards for the OR command.
O/OO Examples
Before:
O 0001 A CD
C 0002 ABX
After: (no message issued)
000001 ABCD
000002 ABX
Before:
O 0001 A CD
M 0002 ABX
After: (message: MOVE data not deleted – all data not overlaid, line 2 not deleted)
000001 ABCD
000002 ABX
OR/ORR Examples
Before:
OR 001 A CD
C 0002 ABX
After: (no message issued)
000001 ABXD
000002 ABX
Before:
OR 001 A CD
M 0002 ABX
After: (no message issued, line 2 is gone)
000001 ABXD because line 2 is moved over line 1
See O / OO - Overlay Lines for an Application Note regarding use of excluded lines when performing an overlay.
Created with the Personal Edition of HelpNDoc: Easily create Qt Help files