320B UELogin¶
Validated MON 320B (208 decimal) · Mnemonic UELOG · Group: Monitor Calls for Internal Use (manual section 2.14)
Available from: not known - no compatibility box captured from the manual
Emulation source: src/handlers/mon_320B_UELogin.c
Description¶
User Environment login (manual section 2.14) - logs a user into a User Environment (UE). Part of the UE monitor-call cluster alongside UECOM (317B, execute command) and UEADM (321B, administration). Per the K-version release notes, UE-LOGIN is what populates the UE session identifier (UESID): after a UE connect the logical device number is available immediately, but UESID stays zero until UE-LOGIN is performed.
Notes¶
- Internal-use monitor call (manual section 2.14, name-only); part of the User Environment subsystem (product ND-210518), a sibling of [[317B]] UECOM and [[321B]] UEADM.
- Worker location (L-VSX-500 / L07 carve): the real ND-100 UELOG body is at 050726B in resident commoncode, inside the contiguous UE-* cluster (UECHE=050544B, UECOM=050701B, UELOG=050726B). The ND-500 companion UELOG is at 126036B. GOTAB[320]=112616B byte-resolves to DSI6 (device/interrupt code) - that is a MISATTRIBUTED index target, NOT the login body; the true MON 320 -> UELOG transfer runs through the uncarved resident CALLPROC/segment switch and is UNVERIFIED. See tools/sintran-segment-carver/versions/L-VSX-500/re/ mon-analysis/320B-UELogin/.
- ND-500 calling convention (BYTE-PROVEN from the FraTor ND-500 tools - an IDENTICAL wrapper in convert-dom-a03 @0802CB59 and linker-b01 @B004F42E): CALLG UELOG,1,<word> - exactly ONE CALLG argument. In both callers that word is set to 0x24 (36 decimal) immediately before the call, and the caller first builds a string (smove) and takes the address of an adjacent frame slot, suggesting UELOG reads a small parameter block laid out in the caller frame.
- LOAD-BEARING: NO (in these tools). Both callers execute
clrk(clear the K / error flag) immediately after the call and return, DISCARDING the result. So a benign success stub satisfies convert-dom and linker; correct UE-login behaviour is only needed if a tool actually depends on the UE session. - Argument MEANING is UNVERIFIED. The single word (observed 0x24) is not confirmed to be a length, a user/session index, a subfunction, or a block pointer; the manual is name-only and the ND-100 worker's arg contract was not byte-provable (uncarved CALLPROC). Do not implement login semantics from a guess - a success-returning stub is the safe emulator behaviour until a live trace pins the contract.
Parameters¶
| Name | Type | Direction | Description |
|---|---|---|---|
Param |
INTEGER | In | UNVERIFIED meaning. The single CALLG word; observed value 0x24 (36) in both ND-500 callers. Possibly a length / session or user index / subfunction, or the head of a caller-frame parameter block (a string + adjacent slot are set up just before the call). Not confirmed. |
Direction: In = the program supplies the value, Out = the call returns it, In/Out = both.
See also¶
UECommand, UEAdministration
Compatibility¶
| ND-100 | ND-500 | User programs | RT programs | System programs |
|---|---|---|---|---|
| Yes | Yes | No | Yes | Yes |
From the YAML extraction; this call's page in the manual had no compatibility box that was captured.
Examples¶
From the manual (OCR text, not corrected).
% ND-500 CALLG form, byte-proven from convert-dom-a03 / linker-b01.
% (arg meaning UNVERIFIED - value 0x24 observed; result is discarded via clrk)
PARM : W BLOCK 1 % single word, set to 44B (0x24) by both callers
UELOG : EQU 37000000320B % UELOG = MON 320
...
CALLG UELOG,1,PARM
% callers do: clrk ; ret (result discarded)
ndmonlib implementation¶
Validated Registered MON_STATUS_VALIDATED in src/core/mon_registry.c: implemented, tested and working.
| Handler | mon_320B_UELogin |
| Code lines | 9 (non-blank, non-comment lines in the file) |
Source¶
Name: ND-860228-2-EN SINTRAN III Monitor Calls line 2614 (name-only) + L-VSX-500 carve. UE session/UESID context: ND-60230-5-EN K-version line 12857. ND-500 calling convention: FraTor disassemblies convert-dom-a03.asm:54158 and linker-b01.asm:71019..