Move the tool-list call into the start-of-tape calculation so it executes immediately after the program header. Keep the OUTPUT_TOOL_LIST section as the formatter for each tool entry.
Required Call Order
Locate the start-of-tape calculation section containing CALL(START_OF_TAPE). Place the existing GETTOOLS command directly after that call:
:C: CALL(START_OF_TAPE)
:C: GETTOOLS(2,OUTPUT_TOOL_LIST)
This ordering lets START_OF_TAPE emit the tape-start marker and program number before GETTOOLS generates the tool list.
Tool-List Output Section
Retain the existing output section unless its formatting also needs correction:
:SECTION=OUTPUT_TOOL_LIST
:T: TOOL_COMMENT><EOL>
| Element | Function | Required location |
|---|---|---|
CALL(START_OF_TAPE) |
Produces the start-of-program content | Before the tool-list call |
GETTOOLS(2,OUTPUT_TOOL_LIST) |
Requests tool-list output through the named section | Immediately after the start-of-tape call |
OUTPUT_TOOL_LIST |
Formats each tool comment and line ending | Remain as a named library section |
Apply and Verify the Change
- Copy the section being modified into the post-specific library rather than editing
MILL.libdirectly. The post-specific section overrides the corresponding base-library section. - In the start-of-tape calculation section, remove the earlier
GETTOOLS(2,OUTPUT_TOOL_LIST)placement and insert it immediately afterCALL(START_OF_TAPE). - Recompile the library and post a test program.
- Confirm that
%andO0001precede the generated tool entries, and that the initial tool-change output follows the list.
The evidence refers to FANCMD.lib, but it also reports that one such file was a renamed copy of MILL.lib and that an older library ultimately worked. If the edited library is rejected or the sequence remains unchanged, verify that the selected post actually loads that file and that its section structure matches the working library; the available evidence does not identify a compatible software version.
FAQ
Where should GETTOOLS go to print tools after O0001?
Place :C: GETTOOLS(2,OUTPUT_TOOL_LIST) immediately after :C: CALL(START_OF_TAPE) in the start-of-tape calculation section.
Do I need to change the OUTPUT_TOOL_LIST section?
No formatting change is required for the requested move. Keep :T: TOOL_COMMENT><EOL> when that line already produces the required tool comments.
Why does the tool list still appear near the initial tool change?
The active library may still call GETTOOLS from another location, or the post may not be loading the edited library. Remove the earlier call, confirm the active post-specific override, recompile, and verify that the posted order starts with %, O0001, and then the tool list.