2 * Win16 built-in DLLs definitions
4 * Copyright 1999 Ulrich Weigand
7 #ifndef __WINE_BUILTIN16_H
8 #define __WINE_BUILTIN16_H
16 extern WORD
CallFrom16Word();
17 extern LONG
CallFrom16Long();
18 extern void CallFrom16Register();
19 extern void CallFrom16Thunk();
21 extern WORD CALLBACK
CallTo16Word( FARPROC16 target
, INT nArgs
);
22 extern LONG CALLBACK
CallTo16Long( FARPROC16 target
, INT nArgs
);
23 extern LONG CALLBACK
CallTo16RegisterShort( const struct _CONTEXT86
*context
, INT nArgs
);
24 extern LONG CALLBACK
CallTo16RegisterLong ( const struct _CONTEXT86
*context
, INT nArgs
);
30 WORD pushw_bp
; /* pushw %bp */
31 BYTE pushl
; /* pushl $target */
33 WORD call
; /* call CALLFROM16 */
39 BYTE pushl
; /* pushl $relay */
41 BYTE lcall
; /* lcall __FLATCS__:glue */
44 BYTE prefix
; /* lret $nArgs */
47 LPCSTR profile
; /* profile string */
54 const char *name
; /* DLL name */
55 void *module_start
; /* 32-bit address of the module data */
56 int module_size
; /* Size of the module data */
57 const BYTE
*code_start
; /* 32-bit address of DLL code */
58 const BYTE
*data_start
; /* 32-bit address of DLL data */
59 const char *owner
; /* 32-bit dll that contains this dll */
60 const void *rsrc
; /* resources data */
61 } BUILTIN16_DESCRIPTOR
;
63 extern HMODULE16
BUILTIN_LoadModule( LPCSTR name
);
64 extern LPCSTR
BUILTIN_GetEntryPoint16( struct _STACK16FRAME
*frame
, LPSTR name
, WORD
*pOrd
);
65 extern void BUILTIN_RegisterDLL( const BUILTIN16_DESCRIPTOR
*descr
);
67 #endif /* __WINE_BUILTIN16_H */