245B GetNameEntry¶
Stub MON 245B (165 decimal) · Mnemonic GNAEN · Group: Device Handling (manual section 2.11)
Available from: All programs (manual compatibility box)
Emulation source: src/handlers/mon_245B_GetNameEntry.c
Description¶
Gets information about devices, e.g. disks and floppy disks. The monitor call returns the name entry of a device. You specify the name index.
- GetDirNameIndex provides the name index.
Parameters¶
| Name | Type | Direction | Description |
|---|---|---|---|
NameIndex |
INTEGER | In | The name index of the device. |
NameTableEntry |
ARRAY | Out | A 28 byte buffer receiving name entry: bytes 0-15=device name, 16-19=storage capacity (pages), 20-21=sector size, 22-23=flags (bit15=cartridge, bit13=single user, bit11=tape, bit10=EEC, bit8=floppy, bit7=Phoenix, bit6=Winchester, bit5=SCSI streamer, bit4=SCSI disk, bit3=WORM, bits0-2=max subunits), 24-25=transfer routine address, 26-27=semaphore LDN. |
Direction: In = the program supplies the value, Out = the call returns it, In/Out = both.
See also¶
Compatibility¶
| Machines | Users | Programs |
|---|---|---|
| ND-100 and 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 |
|---|---|---|---|---|
| Yes | Yes | No | No | No |
Examples¶
From the manual (OCR text, not corrected).
INTEGER : NameIndex
BYTES : NameTableEntry(0:27)
...
ON ROUTINEERROR DO
IF ErrCode > 0 THEN ...
ENDON
Monitor_Call('GetNameEntry', NameIndex, NameTableEntry(0))
INTEGER NameIndex
INTEGER NameTableEntry(14)
...
NameIndex : INTEGER2;
NameTableEntry : RECORD...END;
...
GetNameEntry(NameIndex, NameTableEntry);
IF ErrCode <> 0 THEN ...
01 NameIndex COMP.
01 NameTableEntry.
02 array COMP OCCURS 14 TIMES.
01 ErrCode COMP.
...
MONITOR-CALL "GetNameEntry" USING NameIndex, NameTableEntry.
CALL "CbError" USING ErrCode.
IF ErrCode NOT = 0 GO ...
NameIndex : W BLOCK 1
NameTableEntry : BY BLOCK 34B
ErrCode : W BLOCK 1
GetNameEntry : EQU 37B9 + 245B
...
CALLG GetNameEntry, 2, NameIndex, NameTableEntry
IF K GO ERROR
...
ERROR : W1 =: ErrCode %ErrorCode in W1 register.
LDT NAMIX %Name index.
LDX (BUFF %Address of buffer to receive name table entry.
MON 245 %Monitor call GetNameEntry.
JMP ERROR %Error return from monitor call.
... %Normal return.
ERROR, ... %Error number in register A.
...
NAMIX, ...
BUFF, 0
+*16/ %Make a buffer of 14 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_245B_GetNameEntry |
| Code lines | 6 (non-blank, non-comment lines in the file) |
Source¶
SINTRAN III Monitor Calls (ND-860228.2 EN), page 257.