RegisterModule

RegisterModule( )

This BIOS operation call is made from the 16-bit module to register a third party DLL with the BIOS operation manager. This call returns a handle to the 16-bit caller which is used later to dispatch a call to the DLL.

Parameters

Client DS:SI
ASCIIZ string of DLL name
Client DS:DI
ASCIIZ string of Initialization Routine in the DLL. (Optional if DS = 0 and DI = 0).
Client DS:BX
ASCIIZ string to Dispatch routine in the DLL.

Return Value

If successful the client’s carry is cleared and the client’s handle in AX will equal (non Zero). Otherwise, the client carry will be set, and an error code will be returned in AX.

Client AX

Error Code

AX = 1

DLL not found.

AX = 2

Dispatch routine not found.

AX = 3

Initialization routine not found.

AX = 4

Insufficient memory available.

Comments

RegisterModule will load the DLL specified in DS:SI. The DLL initialization routine is called and the DLL dispatch routine is stored. All calls made from the DispatchCall are sent to this routine.

See Also

UnRegisterModule, DispatchCall