The VTDAPI provides services for ring 3 components. To obtain the VTDAPI entry point, an application must first call Get Device Entry Point Address (Interrupt 2Fh Function 1684h). For example:
include vtdapi.inc mov ax, 1684h ; Get Device Entry Point mov bx, VTDAPI_DEVICE_ID ; device identifier xor di, di ; initialize di mov es, di ; initialize es int 2Fh ; multiplex interrupt mov [VTDAPI_Addr], di mov [VTDAPI_Addr+2], es ; es:di contains entry point address cmp VTDAPI_Addr, 0 jz NotInstalled