Skip to content

405B SwitchUserBreak

In progress   MON 405B (261 decimal) · Mnemonic USTRK · Group: Monitor Calls for Terminal Handling (manual section 2.6)

Available from: All programs (manual compatibility box)

Emulation source: src/handlers/mon_405B_SwitchUserBreak.c

Description

Switches user-defined escape handling on and off. The user-defined escape handling transfers control to a routine when you press the ESCAPE key.

Parameters

Name Type Direction Description
OnOffFlag INTEGER2 In On/off flag. Use 1 for on and 0 for off.
Address INTEGER2 In Program address to start at when you press the ESCAPE key.

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

See also

GetUserRegisters

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 : Func, Address
...
Monitor_Call('SwitchUserBreak', Func, Address)
INTEGER Func, Address
...
Monitor_Call('SwitchUserBreak', Func, Address)
Func, Address : LONGINT;
...
SwitchUserBreak(Func, Address);
01 Func COMP.
01 Address COMP.
...
MONITOR-CALL "SwitchUserBreak" USING Func, Address.
Func : W BLOCK 1
Address : W BLOCK 1
SwitchUserBreak : EQU 37B9 + 405B
...
    CALLG SwitchUserBreak, 2, Func, Address

ndmonlib implementation

In progress Registered MON_STATUS_IN_PROGRESS: partly implemented. The dispatcher calls the handler.

Handler mon_405B_SwitchUserBreak
Code lines 14 (non-blank, non-comment lines in the file)

Notes from the handler source

src/handlers/mon_405B_SwitchUserBreak.c line 32

USTRK carries no device number - it applies to the calling program own
terminal. Device 1 == "own terminal", as MON 71B/72B DESCF/EESCF use.
Record the handler; the async ESCAPE->transfer is not delivered.

Source

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