Skip to content

416B SaveND500Segment

Validated   MON 416B (270 decimal) · Mnemonic WSEGN · Group: Segment Administration (manual section 2.12)

Available from: All programs (manual compatibility box)

Emulation source: src/handlers/mon_416B_SaveND500Segment.c

Description

Writes all modified pages of a segment back to the disk.

  • Not allowed when fixed in memory.

Parameters

Name Type Direction Description
LogSegmentNo INTEGER2 In Logical segment number in the domain. If 0, the segment number is retrieved from the parameter address.
FirstPage INTEGER2 In First logical page in the segment.
LastPage INTEGER2 In Last logical page in the segment.

Direction: In = the program supplies the value, Out = the call returns it, In/Out = both.

See also

SaveSegment

Compatibility

Machines Users Programs
ND-500 All users All programs

The manual's compatibility box for this call, word for word.

Yes/no fields from the YAML extraction (not in the manual's words):

ND-100 ND-500 User programs RT programs System programs
No Yes No No No

Examples

From the manual (OCR text, not corrected).

INTEGER : LogSegmentNo, FirstPage, LastPage
...
ON ROUTINEERROR DO
  IF ErrCode > 0 THEN ...
ENDON
Monitor_Call('SaveND500Segment', LogSegmentNo, FirstPage, LastPage)
INTEGER LogSegmentNo, FirstPage, LastPage
...
Monitor_Call('SaveND500Segment', LogSegmentNo, FirstPage, LastPage)
IF (ErrCode .NE. 0) THEN ...
LogSegmentNo, FirstPage, LastPage : LONGINT;
...
SaveND500Segment(LogicalSegmentNo, FirstPage, LastPage);
IF ErrCode <> 0 THEN ...
01 LogSegmentNo COMP.
01 FirstPage COMP.
01 LastPage COMP.
01 ErrCode COMP.
...
MONITOR-CALL "SaveND500Segment" USING LogSegmentNo, FirstPage, LastPage.
CALL "CbError" USING ErrCode.
IF ErrCode NOT = 0 GO ...
LogSegmentNo : W BLOCK 1
FirstPage : W BLOCK 1
LastPage : W BLOCK 1
ErrCode : W BLOCK 1
SaveND500Segment : EQU 37B9 + 416B
...
  CALLG SaveND500Segment, 3, LogSegmentNo, FirstPage, LastPage
  IF K GO ERROR
...
ERROR : W1 =: ErrCode                    %ErrorCode in W1 register.

ndmonlib implementation

Validated Registered MON_STATUS_VALIDATED in src/core/mon_registry.c: implemented, tested and working.

Handler mon_416B_SaveND500Segment
Code lines 30 (non-blank, non-comment lines in the file)

Notes from the handler source

src/handlers/mon_416B_SaveND500Segment.c line 45

Flush every open file connected as this segment (LogSegmentNo==0 -> all).
Writes are already write-through, so this makes the host file bytes durable
the same way 412B does before mapping.

Source

SINTRAN III Monitor Calls (ND-860228.2 EN), page 421.