DosSizeSeg: Difference between revisions
Appearance
No edit summary |
mNo edit summary |
||
Line 1: | Line 1: | ||
This call returns the size of a segment. | This call returns the size of a segment. | ||
Line 13: | Line 9: | ||
==Return Code== | ==Return Code== | ||
;rc (USHORT) - return:Return code description is: | |||
Return code description is: | * 0 NO_ERROR | ||
* 0 | |||
==Remarks== | ==Remarks== | ||
This function provides compatibility for family applications that must run in DOS or OS/2 mode. DosSizeSeg returns the actual size of memory allocated by a DosAllocSeg or DosAllocHuge request and is intended for use when the application is running in DOS mode, where allocations are rounded up to the next paragraph. | This function provides compatibility for family applications that must run in DOS or OS/2 mode. DosSizeSeg returns the actual size of memory allocated by a DosAllocSeg or DosAllocHuge request and is intended for use when the application is running in DOS mode, where allocations are rounded up to the next paragraph. | ||
== | ==Bindings== | ||
=== C | === C === | ||
<PRE> | <PRE> | ||
#define INCL_DOSMEMMGR | #define INCL_DOSMEMMGR | ||
Line 27: | Line 22: | ||
USHORT rc = DosSizeSeg(Selector, Size); | USHORT rc = DosSizeSeg(Selector, Size); | ||
SEL | SEL Selector; /* Selector/Segment */ | ||
PULONG | PULONG Size; /* Size of segment (returned) */ | ||
USHORT | USHORT rc; /* return code */ | ||
</PRE> | </PRE> | ||
===MASM | ===MASM=== | ||
<PRE> | <PRE> | ||
EXTRN DosSizeSeg:FAR | EXTRN DosSizeSeg:FAR | ||
Line 44: | Line 39: | ||
Returns WORD | Returns WORD | ||
</PRE> | </PRE> | ||
[[Category:Dos]] | [[Category:Dos]] |
Revision as of 14:38, 24 November 2019
This call returns the size of a segment.
Syntax
DosSizeSeg (Selector, Size)
Parameters
- Selector (SEL) - input
- Selector/segment of the segment for which size is to be determined. This must be the base selector in the case of a huge segment.
- Size (PULONG) - output
- Address of the returned segment size. For non-huge segments, size is in the range 0 through 64KB. For huge segments, size equals (NUMSEG << 16) + ASIZE where NUMSEG and ASIZE are the last values passed successfully to DosAllocHuge or DosReallocHuge for this huge segment.
Return Code
- rc (USHORT) - return
- Return code description is:
- 0 NO_ERROR
Remarks
This function provides compatibility for family applications that must run in DOS or OS/2 mode. DosSizeSeg returns the actual size of memory allocated by a DosAllocSeg or DosAllocHuge request and is intended for use when the application is running in DOS mode, where allocations are rounded up to the next paragraph.
Bindings
C
#define INCL_DOSMEMMGR USHORT rc = DosSizeSeg(Selector, Size); SEL Selector; /* Selector/Segment */ PULONG Size; /* Size of segment (returned) */ USHORT rc; /* return code */
MASM
EXTRN DosSizeSeg:FAR INCL_DOSMEMMGR EQU 1 PUSH WORD Selector ;Selector/Segment PUSH@ DWORD Size ;Size of segment (returned) CALL DosSizeSeg Returns WORD