INF: C Run-Time Routines Cannot Be Placed in an Overlay

ID Number: Q50524

5.10 6.00 6.00a 6.00ax 7.00

MS-DOS

Summary:

The run-time routines for medium and large models (the only ones that

overlays deal with) are compiled with /NT _TEXT. This puts all the

routines in the same named segment. The linker cannot split a segment

between the root and an overlay. Segmentation takes precedence over

overlays. The linker constructs overlays from segments, not individual

functions.

The first request for the segment (in an .OBJ that goes in the root or

in an overlay) determines where the linker will place the entire

segment (root or overlay). If your extracted .OBJ is in the overlay,

all the run time gets put into the overlay.

Consequently, the entry point of the overlay manager is put into the

overlay and not in the root, so the overlay manager code (also in

_TEXT) is not present in memory at startup. This causes the machine to

hang.

Additional reference words: 5.10 6.00 6.00a 6.00ax 7.00 S_QuickC S_QuickASM