311B WriteDirEntry¶
Stub MON 311B (201 decimal) · Mnemonic WDIEN · Group: File System Operations (manual section 2.9)
Available from: All programs (manual compatibility box)
Emulation source: src/handlers/mon_311B_WriteDirEntry.c
Description¶
Changes the information about a directory. The complete contents of the directory entry is set. The SINTRAN III System Supervisor (ND-830003) describes the file system in more detail.
- The directory must be entered.
- The directory must be reserved.
Parameters¶
| Name | Type | Direction | Description |
|---|---|---|---|
DirIndex |
INTEGER | In | The directory index. See GetDirUserIndexes. |
DirEntry |
ARRAY | In | The 48 byte directory entry. See Appendix C. |
Direction: In = the program supplies the value, Out = the call returns it, In/Out = both.
See also¶
GetDirUserIndexes, and GetDirEntry
Compatibility¶
| Machines | Users | Programs |
|---|---|---|
| ND-100 and ND-500 | User SYSTEM | 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 | Yes | No | No | No |
Examples¶
From the manual (OCR text, not corrected).
INTEGER : DirIndex
BYTES : DirEntry(0:47)
...
ON ROUTINEERROR DO
IF ErrCode > 0 THEN ...
ENDON
Monitor_Call('WriteDirEntry', DirIndex, DirEntry(0))
INTEGER DirIndex
INTEGER DirEntry(24)
...
Monitor_Call('WriteDirEntry', DirIndex, DirEntry(1))
IF (ErrCode .NE. 0) THEN ...
DirIndex : INTEGER2;
DirEntry : ARRAY [0..1] OF RECORD...END;
...
SetDirEntry(DirIndex, DirEntry); [Note routine name.]
IF ErrCode <> 0 THEN ...
01 DirIndex COMP.
01 DirEntry.
02 array COMP OCCURS 24 TIMES.
01 ErrCode COMP.
...
MONITOR-CALL "WriteDirEntry" USING DirIndex, DirEntry.
CALL "CbError" USING ErrCode.
IF ErrCode NOT = 0 GO ...
DirIndex : W BLOCK 1
DirEntry : W ARRAY 24
ErrCode : W BLOCK 1
WriteDirEntry : EQU 37B9 + 311B
...
CALLG WriteDirEntry, 2, DirIndex, DirEntry
IF K GO ERROR
...
ERROR : W1 =: ErrCode %ErrorCode in W1 register.
LDT DIRIX %Directory index.
LDX (ENTRY) %Address of buffer containing directory entry.
MON 311 %Monitor call WriteDirEntry.
JMP ERROR %Error return from monitor call.
... %Normal return.
ERROR, ... %Error number in register A.
...
DIRIX, ...
ENTRY, ... %
... %A buffer of 24 words.
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_311B_WriteDirEntry |
| Code lines | 7 (non-blank, non-comment lines in the file) |
Source¶
SINTRAN III Monitor Calls (ND-860228.2 EN), page 563.