315B LAMUFunction¶
Stub MON 315B (205 decimal) · Mnemonic MLAMU · Group: Segment Administration (manual section 2.12)
Available from: All programs (manual compatibility box)
Emulation source: src/handlers/mon_315B_LAMUFunction.c
Description¶
Performs various functions on the LAMU system. A LAMU is a logically addressed memory unit. The LAMU system is an extension to the ND-100 segment structure. Programs may address more space than provided by the 3 available segments.
Notes¶
- Version history: functions 7 and 8 were added in the J-version (SINTRAN-III-Release-History.md:452). L-version added function 13B: set the cache- or temporary status of a LAMU - LMOD sub-value 1 = turn cache on, 2 = turn cache off, 3 = set LAMU as temporary, 4 = reset temporary LAMU (ND-860230-6-EN Sintran III - Release Information - L-Version.md:1049-1064).
- Several CPUs may share the same LAMU address space.
- The monitor call is implemented in Pascal as 10 separate routines, each corresponding to one function code. In all other languages, it is presently implemented as one routine, to which you pass the function code as the first parameter. This may change in the future, i.e. separate routines may be added.
Parameters¶
| Name | Type | Direction | Description |
|---|---|---|---|
Func |
INTEGER | In | Function code: 1=create LAMU, 2=delete, 3=connect, 4=disconnect, 7=protect, 8=get info, 9=create system-LAMU, 10=create temp system LAMU. |
Para2 |
INTEGER | In/Out | Function-dependent parameter 2. |
Para3 |
INTEGER | In/Out | Function-dependent parameter 3. |
Para4 |
INTEGER | In/Out | Function-dependent parameter 4. |
Direction: In = the program supplies the value, Out = the call returns it, In/Out = both.
Compatibility¶
| Machines | Users | Programs |
|---|---|---|
| ND-100 | 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 |
|---|---|---|---|---|
| Yes | No | No | No | No |
Examples¶
From the manual (OCR text, not corrected).
INTEGER . Func. Para2, Para3, Para4
ON ROUTINEERROR DO
[IF ErrCode >< 0 THEN ...
ENDON
Monitor_Call('LAMUfunction', Func. Para2, Para3, Para4
INTEGER Func, Para2, Para3, Para4
...
Monitor_Call('LAMUfunction', Func, Para2, Para3, Para4)
IF (ErrCode .NE. 0) THEN ...
Func, Para2, Para3, Para4 : INTEGER2;
...
LAMUfunction(Func, Para2, Para3, Para4);
IF ErrCode <> 0 THEN ...
01 Func COMP.
01 Para2 COMP.
01 Para3 COMP.
01 Para4 COMP.
...
MONITOR-CALL "LAMUfunction" USING Func, Para2, Para3, Para4.
CALL "CbError" USING ErrCode.
IF ErrCode NOT = 0 GO ...
LDA {PAR % Load register A with address of parameter list.
MON 315 % Monitor call LAMUfunction.
JMP ERROR % Error return from monitor call.
% Normal return.
ERROR % Error number in register A.
PAR, FUNC % Function.
PARA2
PARA3
PARA4
FUNC,
PARA2,
PARA3,
PARA4,
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_315B_LAMUFunction |
| Code lines | 9 (non-blank, non-comment lines in the file) |
Source¶
SINTRAN III Monitor Calls (ND-860228.2 EN), page 331.