Simplified segmentation segment description
The following tables show the default segment attributes for memory
models defined with the MODEL directive:
Models TINY, SMALL, MEDIUM, COMPACT, LARGE, HUGE
Directive Segment name Align Combine Class Group
─────────────────────────────────────────────────────────────────
CODESEG _TEXT 1) Word PUBLIC 'CODE' 2)
FARDATA FAR_DATA Para private 'FAR_DATA'
UFARDATA FAR_BSS Para private 'FAR_BSS'
DATASEG _DATA Word PUBLIC 'DATA' DGROUP
CONST CONST Word PUBLIC 'CONST' DGROUP
UDATASEG _BSS Word PUBLIC 'BSS' DGROUP
STACK 3) STACK Para Stack 'STACK' DGROUP
Notes: 1) segment name = <module>_TEXT for MEDIUM, LARGE, HUGE
2) code segment included in DGROUP for TINY model
3) STACK not assumed to be in DGROUP if FARSTACK specified in
the MODEL statement
Model TCHUGE (Borland C++)
Directive Segment name Align Combine Class Group
─────────────────────────────────────────────────────────────────
CODESEG <module>_TEXT Word PUBLIC 'CODE'
FARDATA FAR_DATA Para private 'FAR_DATA'
UFARDATA FAR_BSS Para private 'FAR_BSS'
DATASEG <module>_DATA Para PUBLIC 'DATA'
STACK 1) STACK Para Stack 'STACK'
Note: 1) STACK is automatically FAR