Jump to content

DosFlatToSel: Difference between revisions

From EDM2
No edit summary
Ak120 (talk | contribs)
mNo edit summary
Line 1: Line 1:
{{Legacy
|RepFunc=
|Remarks=This page list the older version of the function for reference.
}}
This converts a 32 bit flat address to a 16:16 far pointer to be usable by 16 bit code. This routine is callable from 16 bit code. The result is returned in eax (selector=high word, offset=low word).
This converts a 32 bit flat address to a 16:16 far pointer to be usable by 16 bit code. This routine is callable from 16 bit code. The result is returned in eax (selector=high word, offset=low word).


Line 9: Line 5:


==Parameters==
==Parameters==
; eax (register) : The flat address to be converted. This argument is not passed on the stack.  
;eax (register) : The flat address to be converted. This argument is not passed on the stack.


==Timur Tabi Comments==
==Timur Tabi Comments==

Revision as of 14:32, 24 May 2019

This converts a 32 bit flat address to a 16:16 far pointer to be usable by 16 bit code. This routine is callable from 16 bit code. The result is returned in eax (selector=high word, offset=low word).

Syntax

void far* DOSFLATTOSEL(ULONG eax)

Parameters

eax (register)
The flat address to be converted. This argument is not passed on the stack.

Timur Tabi Comments

These are 16-bit and 32-bit conversion functions. They convert pointers in one memory model to another.[1]

I don't think they're part of the OS/2 API; rather, they are part of the compiler's runtime library. C Set++ has them also.

Links