en:docs:dos:api:int21:50

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=50H

Version

2 and higher

Brief

SET CURRENT PROCESS ID (SET PSP ADDRESS)

Family API

Input

AH = 50h
BX = segment of PSP for new process

Return

Notes

DOS uses the current PSP address to determine which processes own files
  and memory; it corresponds to process identifiers used by other OSs
under DOS 2.x, this function cannot be invoked inside an INT 28h
  handler without setting the Critical Error flag
under MS-DOS 3.0+ and DR DOS 3.41+, this function does not use any of
  the DOS-internal stacks and may thus be called at any time, even
  during another INT 21h call
some Microsoft applications such as Quick C 2.51 use segments of 0000h
  and FFFFh and direct access to the SDA (see #01687 at AX=5D06h) to
  test whether they are running under MS-DOS rather than a compatible
  OS; although one should only call this function with valid PSP
  addresses, any program hooking it should be prepared to handle
  invalid addresses
this function is supported by the OS/2 compatibility box
this call was undocumented prior to the release of DOS 5.0
        

See also

AH=26h,AH=51h,AH=62h

Note

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