Initial Commands and Automatic Startup in SINTRAN III¶
Scope: SINTRAN III VSX / VSX-500, ND-100/ND-110, versions K03 / L07 / M06 Purpose: Explain what SINTRAN runs automatically at start-up, where those commands live (MEMORY vs DISK), and exactly how to read/find them.
Notation: memory sizes in WORDS (1 word = 2 bytes). Octal written NNNNN₈.
Every claim is tagged VERIFIED (from a manual, the symbol tables, the NPL
source, or the actual system disk) or UNCERTAIN.
Cross-references (relative links): - 22-READING-RT-AND-SEGMENT-TABLES-FROM-MEMORY.md — live memory-read conventions - 19-MEMORY-MAP-REFERENCE.md — memory map - ../../Reference-Manuals/SINTRAN-COMMANDS-REFERENCE.md — command reference
0. Executive summary¶
There are two distinct startup mechanisms, and they work together:
| Mechanism | Lives in | Set/edited by | Read by | Confidence |
|---|---|---|---|---|
Initial-command buffer (a small list of commands, first must be @ENTER-DIRECTORY) |
MEMORY — resident/segment-mapped buffer INICO; persisted inside the SINTRAN memory image on SEGFIL0 |
@INITIAL-COMMAND, @NEXT-INITIAL-COMMAND |
@LIST-INITIAL-COMMANDS |
VERIFIED |
Mode / batch start-up files HENT-MODE:MODE (cold start) and LOAD-MODE:MODE / LOAD-MODE:BATC (warm start) |
DISK — ordinary 7-bit command files on user SYSTEM |
any editor (PED etc.) | @LIST-FILES, extract & read the file |
VERIFIED |
The in-memory initial-command buffer is tiny and runs first at restart. Its job is to enter the main directory and then hand off to the disk mode/batch files, which do the real work (start XMSG/COSMOS, TAD, spooling, set the system available, etc.).
The practical recipe: to see what runs automatically, look in both places —
@LIST-INITIAL-COMMANDS (the memory buffer) and the HENT-MODE/LOAD-MODE files
on disk (§4).
1. Terminology — what SINTRAN calls it¶
VERIFIED. SINTRAN III uses the term initial commands for the in-memory buffer, and mode files / batch files for the disk scripts.
Commands (all restricted to user SYSTEM):
| Command | Function | Source |
|---|---|---|
@INITIAL-COMMAND <command string> |
Define the first initial command (must be @ENTER-DIRECTORY). Stored as the first entry of the initial-command buffer. |
ND-60.128.5 Reference Manual, "@INITIAL-COMMAND" |
@NEXT-INITIAL-COMMAND <command string> |
Append a further command to the buffer. | ND-60.128.5, "@NEXT-INITIAL-COMMAND" |
@LIST-INITIAL-COMMANDS <output file> |
List the buffer contents (default output = terminal). | ND-60.128.5, "@LIST-INITIAL-COMMANDS" |
"Specify the first command to be executed at next restart from memory image, @RESTART-SYSTEM, or pressing MASTER CLEAR and LOAD buttons. The command must be @ENTER-DIRECTORY. It is stored as the first command in the initial command buffer." —
Reference-Manuals/ND-60.128.5 EN SINTRAN III Reference Manual.md:5340"When @INITIAL-COMMAND has been issued, @RTENTER is automatically executed at subsequent restarts." —
Reference-Manuals/ND-60.128.5 EN SINTRAN III Reference Manual.md:5355
So after @INITIAL-COMMAND is set once, @RTENTER no longer has to be issued
by hand at every restart (also stated in
Reference-Manuals/ND-60.050.06 SINTRAN III Users Guide.md:4799).
HENT is the Norwegian for "fetch/retrieve" — HENT-MODE is the "fetch/cold-start"
mode file, LOAD-MODE the warm-start (load-from-image) file. VERIFIED by the
consistent §1.6 "CHANGES TO THE HENT-MODE AND LOAD-MODE FILES" sections in the
K/L/N release notes (e.g.
SINTRAN/Release-Documentation/ND-860230-6-EN Sintran III - Release Information - L-Version.md:499).
2. The MEMORY structure — the initial-command buffer (INICO)¶
VERIFIED. The initial-command buffer is a named location in the SINTRAN
file-system symbol space (FILSYS-SYMBOLS), symbol INICO:
| Version | INICO address |
Source |
|---|---|---|
| L07 | 134620₈ |
SINTRAN/NPL-SOURCE/SYMBOLS/L07/FILSYS-SYMBOLS.SYMB.TXT:3525 |
| M06 | 137255₈ |
SINTRAN/NPL-SOURCE/SYMBOLS/M06/FILSYS-SYMBOLS.SYMB.TXT:3634 |
Neighboring symbols confirm this is command-line / command-buffer machinery:
- L07:
RCPOO=134516,INICO=134620,CLCOM=134657,ECLCO=134670,WNKER=134721 - M06:
CLHOM=137200,CLSND=137227,INICO=137255(CL*= command-line handling)
(FILSYS-SYMBOLS.SYMB.TXT, sorted by address.)
2.1 Is it resident or segment-mapped?¶
VERIFIED (address range) / UNCERTAIN (exact segment): INICO sits at
134620₈/137255₈, i.e. inside the 26000₈–177777₈ segment-mapped region,
not resident low core. In the VSX system-segment table this range is covered by
the file-system and command segments:
| Seg | Name | Range | Description |
|---|---|---|---|
| 6 | S3FS |
26000–177777 |
File system segment (running) |
| 3 | S3COM |
30000–177777 |
Command segment (running) |
| 12 | S3FSV |
26000–177777 |
Initial file system segment (save image) |
| 13 | S3OPCSV |
26000–177777 |
Initial command segment (save image) |
— SINTRAN/Release-Documentation/ND-60230-5-EN SINTRAN III - Release Information - K-version.md:7882-7887
Because INICO is a FILSYS symbol, the live buffer is mapped in the
file-system / command segment (S3FS/S3COM); its restart-surviving copy is
held in the initial save segments (S3FSV / S3OPCSV, "Initial command
segment"), which are written into the SINTRAN memory image on SEGFIL0 at
@RESTART-SYSTEM / cold start. That is why the initial commands survive a
restart even though they are a memory structure: the memory image is checkpointed
to disk. This matches the manual: the commands run "at next restart from memory
image". VERIFIED (mechanism), UNCERTAIN (whether INICO's home is
segment 6 vs 3 precisely — both span the address).
2.2 CORRECTION (2026-07-10): the command text is at INIBU, not INICO¶
INICO is not the command-text buffer. It is a file-system symbol; the assumption
that it held the buffer was an inference, now disproved. The initial-command text
lives at the kernel symbol INIBU ("initial buffer") in the command segment:
| Version | INIBU |
|---|---|
| K03 | 0671728 |
| L07 | 0741238 |
| M06 | 1023278 |
Verified byte-exact against a live L07 system and two real SMD packs. The buffer can be
read (and written) offline from a disk image, with no boot required: it sits inside
the command segment's image in (SYSTEM)SEGFIL0:DATA, and its exact byte offset is derived
from INIBU plus the segment table read off the same image.
Full specification, encoding, algorithm and golden test vectors: 26-INITIAL-COMMAND-BUFFER-ON-DISK.md
On a running system, @LIST-INITIAL-COMMANDS (§4.1) remains the easiest way to see them.
The NPL command handler that fills INICO is not present in the NPL source
subset in this repo (searching SINTRAN/NPL-SOURCE/NPL/ for INICO /
INITIAL finds only unrelated matches); the symbol is known only from
FILSYS-SYMBOLS. VERIFIED (absence in repo).
3. The DISK files — mode / batch start-up scripts¶
VERIFIED. The bulk of automatic startup is ordinary SINTRAN command files on
user SYSTEM:
HENT-MODE:MODE— run after a cold start ()HENT, MACL+LOAD). Does one-time setup:@RTENTER,DUMP-REENTRANT, load ND-500 monitor, initialise XMSG, define memory config, etc. Referenced throughout the release notes' §1.6 and installation sections, e.g.SINTRAN/Release-Documentation/ND-860230-6-EN ... L-Version.md:503,781.LOAD-MODE:MODE/LOAD-MODE:BATC— run after a warm start (restart from image). Re-applies things that do not survive a warm start (start batch processors, XMSG/COSMOS spooling, TAD administrator, set the system available). See §1.6 of the same release notes.
3.1 Actual LOAD-MODE:MODE from the system disk¶
VERIFIED by extraction from the live SINTRAN III VSX/500-L disk image
(~/repos/nd100x/SMD0.IMG), file (SYSTEM)LOAD-MODE:MODE (entry [0037],
410 bytes, dated 1996-04-01). Extracted with
ndtool -x -F 'SYSTEM/LOAD-MODE:MODE' and decoded from SINTRAN 7-bit
(high-bit-set) text:
@ENTER SYSTEM,xxxxxx,,3200,,,
@CC Start all batch processors
@BATCH
@BATCH
@CC Start XMSG and COSMOS Spooling
@MODE XMSG-START:MODE,,,
@CC Start the TAD ADMinistrator
@START-TADADM
@CC Set the system available
@SET-AVAILABLE
@MAIL
@DIRECT-BROADCAST
SYSTEM IS AVAILABLE
@EXIT
@CC List routing to initialize all systems:
@(UTIL)XMSG-COMMAND
LIST-ROUTING,,,,,,
EXIT
@CC END OF FILE
This is the concrete "automatic startup command list" for this machine: it
starts two batch processors, runs the XMSG-START:MODE sub-mode file (which
brings up XMSG and COSMOS spooling), starts the TAD administrator, marks the
system available, and broadcasts availability.
Note there is no plain-text file that stores the initial-command buffer; the
buffer's persisted form lives inside the binary (SYSTEM)SEGFIL0:DATA memory
image (entry [0002] on the same disk), not as a readable file. The readable
startup scripts are the HENT-MODE / LOAD-MODE mode files above.
4. HOW-TO — see what is set up to run automatically¶
4.1 On a running system (the buffer)¶
From user SYSTEM:
@LIST-INITIAL-COMMANDS,,
ENTER-DIRECTORY,,DISC-2-75MB,0
CONN SYS-OUT-1 105 R
CLOSE 105
BATCH
APPEND-BATCH 1 LOAD-MODE SYS-OUT-1
LOAD-MODE
file via APPEND-BATCH — showing the memory→disk hand-off directly.
4.2 On a running system (the mode files)¶
@LIST-FILES HENT-MODE:MODE,
@LIST-FILES LOAD-MODE,
@PLACE-BINARY ... (or just open in PED / TYPE the file)
4.3 Offline, from the disk image (no boot required)¶
List and extract with the NDFS tool:
# list SYSTEM user files
~/repos/norskdata-ndfs/ndfs-c/build/ndtool -t -u SYSTEM ~/repos/nd100x/SMD0.IMG
# extract the warm-start mode file
~/repos/norskdata-ndfs/ndfs-c/build/ndtool -x -F 'SYSTEM/LOAD-MODE:MODE' -o /tmp/out ~/repos/nd100x/SMD0.IMG
# (also try HENT-MODE:MODE if present on the pack)
0x7F to read it as ASCII (see §3.1).
4.4 The initial-command buffer from raw memory (rarely needed)¶
INICO = 134620₈ (L07) / 137255₈ (M06), in the file-system/command segment.
Prefer §4.1; only decode INICO directly if @LIST-INITIAL-COMMANDS is
unavailable and the file-system segment is mapped.
5. Sources¶
Reference-Manuals/ND-60.128.5 EN SINTRAN III Reference Manual.md—@INITIAL-COMMAND(5337-5360),@LIST-INITIAL-COMMANDS(5794-5823),@NEXT-INITIAL-COMMAND(6837+), "initial command buffer"Reference-Manuals/ND-60.050.06 SINTRAN III Users Guide.md:4799,5436,5448-5454—@INITIAL-COMMANDand@RTENTERbehaviorReference-Manuals/SINTRAN-COMMANDS-REFERENCE.md:3212,3568— INITIAL-COMMAND / LIST-INITIAL-COMMANDSSINTRAN/NPL-SOURCE/SYMBOLS/L07/FILSYS-SYMBOLS.SYMB.TXT:3525—INICO=134620SINTRAN/NPL-SOURCE/SYMBOLS/M06/FILSYS-SYMBOLS.SYMB.TXT:3634—INICO=137255SINTRAN/Release-Documentation/ND-60230-5-EN ... K-version.md:7882-7887— system-segment table incl.S3OPCSV"Initial command segment"SINTRAN/Release-Documentation/ND-860230-6-EN ... L-Version.md:499-513,781— §1.6 HENT-MODE / LOAD-MODE, cold vs warm- System disk
~/repos/nd100x/SMD0.IMG,(SYSTEM)LOAD-MODE:MODEextracted viandtool(§3.1)
Last updated: 2026-07-09
Status: VERIFIED where tagged; two UNCERTAIN points noted (exact home segment of INICO; NPL handler not in repo subset)