Skip to content

341B SegmentFunction

Stub   MON 341B (225 decimal) · Mnemonic SGMTY · Group: Not grouped in manual

Available from: RT programs (manual compatibility box)

Emulation source: src/handlers/mon_341B_SegmentFunction.c

Description

This is a multifunction monitor call used to change the active segments of a program, or the page index tables used by a program.

Notes

  • This monitor call is meant to replace the older calls ChangeSegment (SPCHG, 337), and JumpToSegment (MCALL, 132) and ExitFromSegment (MEXIT, 133) on the VSX version.
  • In ChangeSegment, JumpToSegment and ExitFromSegment, the segment numbers are limited to 8 bits (values 0-255). With the monitor call SegmentFunction, the segment numbers are 16 bits (values 0-65535).
  • The functionality of the calls MCALL and MEXIT is expanded so as to allow you to change (or not) the page index table to be used with the new segment.
  • A new function has been introduced in this call, that of removing a routine from being a direct task or a device driver, which has been entered as such by the monitor call SegmentToPageTable (ENTSEG).

Parameters

Name Type Direction Description
FunctionCode INTEGER2 In Function code: 0=JumpToSegment without PIT change, 1=ExitFromSegment without PIT change, 2=JumpToSegment with PIT change, 3=ExitFromSegment with PIT change, 4=REMSG (remove segment from ENTSEG).
StartAddress INTEGER2 In Start/return address.
NewSegment1 INTEGER2 In New segment 1 (16-bit value 0-65535).
NewSegment2 INTEGER2 In New segment 2 (16-bit value 0-65535).
NewPageIndexTables INTEGER2 In New page index tables.

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

See also

ChangeSegment, JumpToSegment, ExitFromSegment

Compatibility

Machines Users Programs
ND-100 User RT and user SYSTEM RT 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
Yes No No Yes No

Examples

From the manual (OCR text, not corrected).

| Command | Description |
|---------|-------------|
| LDT (PARLI | %Load T register with address of parameter list. |
| MON 341 | %Monitor call SegmentFunction. |
| JMP ERROR | %Error return. |
| ... | %Normal return. |

ndmonlib implementation

Stub Registered MON_STATUS_NOT_IMPLEMENTED: the handler is a stub. mon_dispatch() in src/core/mon_dispatch.c reports the call as unimplemented without calling it.

Handler mon_341B_SegmentFunction
Code lines 10 (non-blank, non-comment lines in the file)

Source

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