en:docs:dos:api:int21:58:00

Note: This API call is for DOS and Win16 personality only. Use Family API for portability.

2018/09/07 05:04 · prokushev · 0 Comments

Int 21H, AH=58H, AL=00H

Version

2.11 and higher

Brief

GET MEMORY ALLOCATION STRATEGY

Family API

Input

AH = 58h
AL = 00h

Return

   CF clear if successful
     AX = current strategy (see #01679)
CF set on error
    AX = error code (01h) (see #01680)

Notes

the Set subfunction accepts any value in BL for DOS 3.x and 4.x; 2 or greater means last fit

the Get subfunction returns the last value set

setting an allocation strategy involving high memory does not automatically link in the UMB memory chain; this must be done explicitly with AX=5803h in order to actually allocate high memory

a program which changes the allocation strategy should restore it before terminating

Toshiba MS-DOS v2.11 supports subfunctions 00h and 01h, as does the TI Professional MS-DOS v2.13

DR DOS 3.41 reportedly reverses subfunctions 00h and 01h

Values for DOS memory allocation strategy:

00h low memory first fit
01h low memory best fit
02h low memory last fit
—DOS 5+ —
40h high memory first fit
41h high memory best fit
42h high memory last fit
80h first fit, try high then low memory
81h best fit, try high then low memory
82h last fit, try high then low memory

AH=48h,AH=49h,AH=4Ah,INT 2F/AX=4310h“XMS”,INT 67/AH=3Fh

Note

2018/09/04 17:23 · prokushev · 0 Comments