Add NTOS compatibility driver

This commit is contained in:
2024-02-07 17:48:33 +01:00
parent ba0b4c339d
commit 86dcf317ab
5 changed files with 50 additions and 0 deletions

1
drivers/CMakeLists.txt Normal file
View File

@@ -0,0 +1 @@
add_subdirectory(ntosdrv)

View File

@@ -0,0 +1,29 @@
# NTOS compatibility driver
PROJECT(NTOSDRV)
# Specify include directories
include_directories(
${EXECTOS_SOURCE_DIR}/sdk/xtdk)
# Specify list of source code files
list(APPEND NTOSDRV_SOURCE
${NTOSDRV_SOURCE_DIR}/ntosdrv.c)
# Set module definition SPEC file
set_specfile(ntosdrv.spec ntosdrv.sys)
# Link bootloader executable
add_executable(ntosdrv ${NTOSDRV_SOURCE} ${CMAKE_CURRENT_BINARY_DIR}/ntosdrv.def)
# Add linker libraries
target_link_libraries(ntosdrv xtoskrnl)
# Set proper binary name and install target
set_target_properties(ntosdrv PROPERTIES SUFFIX .sys)
set_install_target(ntosdrv "exectos/drivers")
# Set loader entrypoint and subsystem
set_entrypoint(ntosdrv "XtDriverEntry")
set_linker_map(ntosdrv TRUE)
set_ordinals(ntosdrv TRUE)
set_subsystem(ntosdrv native xt_native_driver)

17
drivers/ntosdrv/ntosdrv.c Normal file
View File

@@ -0,0 +1,17 @@
/**
* PROJECT: ExectOS
* COPYRIGHT: See COPYING.md in the top level directory
* FILE: drivers/ntosdrv/ntosdrv.c
* DESCRIPTION: NTOS compatibility driver
* DEVELOPERS: Rafal Kupiec <belliash@codingworkshop.eu.org>
*/
#include <xtkmapi.h>
XTAPI
XTSTATUS
XtDriverEntry()
{
/* Return success */
return STATUS_SUCCESS;
}

View File

@@ -0,0 +1,2 @@
# NT compatibilty layer exports
@ fastcall ExRundownCompleted(ptr) ExCompleteRundownProtection