Index: CMakeLists.txt =================================================================== --- win32ss/drivers/videoprt/CMakeLists.txt (revision 74264) +++ win32ss/drivers/videoprt/CMakeLists.txt (working copy) @@ -29,6 +29,7 @@ ${CMAKE_CURRENT_BINARY_DIR}/videoprt.def) set_module_type(videoprt kernelmodedriver) +target_link_libraries(videoprt ${PSEH_LIB}) add_importlibs(videoprt ntoskrnl hal) add_pch(videoprt videoprt.h SOURCE) add_cd_file(TARGET videoprt DESTINATION reactos/system32/drivers FOR all) Index: int10.c =================================================================== --- win32ss/drivers/videoprt/int10.c (revision 74264) +++ win32ss/drivers/videoprt/int10.c (working copy) @@ -296,7 +296,15 @@ BiosContext.SegEs = BiosArguments->SegEs; /* Do the ROM BIOS call */ - Status = Ke386CallBios(0x10, &BiosContext); + _SEH2_TRY + { + Status = Ke386CallBios(0x10, &BiosContext); + } + _SEH2_EXCEPT(EXCEPTION_EXECUTE_HANDLER) + { + Status = _SEH2_GetExceptionCode(); + } + _SEH2_END; /* Return the arguments */ BiosArguments->Eax = BiosContext.Eax; @@ -354,7 +362,15 @@ BiosContext.Ebp = BiosArguments->Ebp; /* Do the ROM BIOS call */ - Status = Ke386CallBios(0x10, &BiosContext); + _SEH2_TRY + { + Status = Ke386CallBios(0x10, &BiosContext); + } + _SEH2_EXCEPT(EXCEPTION_EXECUTE_HANDLER) + { + Status = _SEH2_GetExceptionCode(); + } + _SEH2_END; /* Return the arguments */ BiosArguments->Eax = BiosContext.Eax; Index: videoprt.h =================================================================== --- win32ss/drivers/videoprt/videoprt.h (revision 74264) +++ win32ss/drivers/videoprt/videoprt.h (working copy) @@ -31,6 +31,7 @@ #include #include #include +#include #define TAG_VIDEO_PORT 'PDIV' #define TAG_VIDEO_PORT_BUFFER '\0mpV'