Renamed xboxkrnl_file* to xboxkrnl_nt*, added xboxkrnl_io*.
This commit is contained in:
parent
f59ff2e44a
commit
d79bd8cfa7
|
@ -52,11 +52,12 @@ XboxkrnlModule::XboxkrnlModule(Runtime* runtime) :
|
||||||
|
|
||||||
// Register all exported functions.
|
// Register all exported functions.
|
||||||
RegisterDebugExports(resolver, kernel_state_.get());
|
RegisterDebugExports(resolver, kernel_state_.get());
|
||||||
RegisterFileExports(resolver, kernel_state_.get());
|
|
||||||
RegisterHalExports(resolver, kernel_state_.get());
|
RegisterHalExports(resolver, kernel_state_.get());
|
||||||
|
RegisterIoExports(resolver, kernel_state_.get());
|
||||||
RegisterMemoryExports(resolver, kernel_state_.get());
|
RegisterMemoryExports(resolver, kernel_state_.get());
|
||||||
RegisterMiscExports(resolver, kernel_state_.get());
|
RegisterMiscExports(resolver, kernel_state_.get());
|
||||||
RegisterModuleExports(resolver, kernel_state_.get());
|
RegisterModuleExports(resolver, kernel_state_.get());
|
||||||
|
RegisterNtExports(resolver, kernel_state_.get());
|
||||||
RegisterRtlExports(resolver, kernel_state_.get());
|
RegisterRtlExports(resolver, kernel_state_.get());
|
||||||
RegisterThreadingExports(resolver, kernel_state_.get());
|
RegisterThreadingExports(resolver, kernel_state_.get());
|
||||||
RegisterVideoExports(resolver, kernel_state_.get());
|
RegisterVideoExports(resolver, kernel_state_.get());
|
||||||
|
|
|
@ -9,16 +9,18 @@
|
||||||
'object_table.h',
|
'object_table.h',
|
||||||
'xboxkrnl_debug.cc',
|
'xboxkrnl_debug.cc',
|
||||||
'xboxkrnl_debug.h',
|
'xboxkrnl_debug.h',
|
||||||
'xboxkrnl_file.cc',
|
|
||||||
'xboxkrnl_file.h',
|
|
||||||
'xboxkrnl_hal.cc',
|
'xboxkrnl_hal.cc',
|
||||||
'xboxkrnl_hal.h',
|
'xboxkrnl_hal.h',
|
||||||
|
'xboxkrnl_io.cc',
|
||||||
|
'xboxkrnl_io.h',
|
||||||
'xboxkrnl_memory.cc',
|
'xboxkrnl_memory.cc',
|
||||||
'xboxkrnl_memory.h',
|
'xboxkrnl_memory.h',
|
||||||
'xboxkrnl_misc.cc',
|
'xboxkrnl_misc.cc',
|
||||||
'xboxkrnl_misc.h',
|
'xboxkrnl_misc.h',
|
||||||
'xboxkrnl_module.cc',
|
'xboxkrnl_module.cc',
|
||||||
'xboxkrnl_module.h',
|
'xboxkrnl_module.h',
|
||||||
|
'xboxkrnl_nt.cc',
|
||||||
|
'xboxkrnl_nt.h',
|
||||||
'xboxkrnl_ordinals.h',
|
'xboxkrnl_ordinals.h',
|
||||||
'xboxkrnl_private.h',
|
'xboxkrnl_private.h',
|
||||||
'xboxkrnl_rtl.cc',
|
'xboxkrnl_rtl.cc',
|
||||||
|
|
|
@ -0,0 +1,37 @@
|
||||||
|
/**
|
||||||
|
******************************************************************************
|
||||||
|
* Xenia : Xbox 360 Emulator Research Project *
|
||||||
|
******************************************************************************
|
||||||
|
* Copyright 2013 Ben Vanik. All rights reserved. *
|
||||||
|
* Released under the BSD license - see LICENSE in the root for more details. *
|
||||||
|
******************************************************************************
|
||||||
|
*/
|
||||||
|
|
||||||
|
#include <xenia/kernel/modules/xboxkrnl/xboxkrnl_io.h>
|
||||||
|
|
||||||
|
#include <xenia/kernel/shim_utils.h>
|
||||||
|
#include <xenia/kernel/modules/xboxkrnl/kernel_state.h>
|
||||||
|
#include <xenia/kernel/modules/xboxkrnl/xboxkrnl_private.h>
|
||||||
|
#include <xenia/kernel/modules/xboxkrnl/objects/xthread.h>
|
||||||
|
|
||||||
|
|
||||||
|
using namespace xe;
|
||||||
|
using namespace xe::kernel;
|
||||||
|
using namespace xe::kernel::xboxkrnl;
|
||||||
|
|
||||||
|
|
||||||
|
namespace xe {
|
||||||
|
namespace kernel {
|
||||||
|
namespace xboxkrnl {
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
} // namespace xboxkrnl
|
||||||
|
} // namespace kernel
|
||||||
|
} // namespace xe
|
||||||
|
|
||||||
|
|
||||||
|
void xe::kernel::xboxkrnl::RegisterIoExports(
|
||||||
|
ExportResolver* export_resolver, KernelState* state) {
|
||||||
|
}
|
|
@ -7,8 +7,8 @@
|
||||||
******************************************************************************
|
******************************************************************************
|
||||||
*/
|
*/
|
||||||
|
|
||||||
#ifndef XENIA_KERNEL_MODULES_XBOXKRNL_FILE_H_
|
#ifndef XENIA_KERNEL_MODULES_XBOXKRNL_IO_H_
|
||||||
#define XENIA_KERNEL_MODULES_XBOXKRNL_FILE_H_
|
#define XENIA_KERNEL_MODULES_XBOXKRNL_IO_H_
|
||||||
|
|
||||||
#include <xenia/common.h>
|
#include <xenia/common.h>
|
||||||
#include <xenia/core.h>
|
#include <xenia/core.h>
|
||||||
|
@ -26,4 +26,4 @@ namespace xboxkrnl {
|
||||||
} // namespace xe
|
} // namespace xe
|
||||||
|
|
||||||
|
|
||||||
#endif // XENIA_KERNEL_MODULES_XBOXKRNL_FILE_H_
|
#endif // XENIA_KERNEL_MODULES_XBOXKRNL_IO_H_
|
|
@ -7,7 +7,7 @@
|
||||||
******************************************************************************
|
******************************************************************************
|
||||||
*/
|
*/
|
||||||
|
|
||||||
#include <xenia/kernel/modules/xboxkrnl/xboxkrnl_file.h>
|
#include <xenia/kernel/modules/xboxkrnl/xboxkrnl_nt.h>
|
||||||
|
|
||||||
#include <xenia/kernel/shim_utils.h>
|
#include <xenia/kernel/shim_utils.h>
|
||||||
#include <xenia/kernel/modules/xboxkrnl/kernel_state.h>
|
#include <xenia/kernel/modules/xboxkrnl/kernel_state.h>
|
||||||
|
@ -54,7 +54,7 @@ SHIM_CALL NtCreateFile_shim(
|
||||||
allocation_size_ptr,
|
allocation_size_ptr,
|
||||||
file_attributes,
|
file_attributes,
|
||||||
share_access,
|
share_access,
|
||||||
creation_disposition);
|
creation_disposition);
|
||||||
|
|
||||||
// object_attributes is:
|
// object_attributes is:
|
||||||
// void *root_directory
|
// void *root_directory
|
||||||
|
@ -104,11 +104,11 @@ SHIM_CALL NtClose_shim(
|
||||||
} // namespace xe
|
} // namespace xe
|
||||||
|
|
||||||
|
|
||||||
void xe::kernel::xboxkrnl::RegisterFileExports(
|
void xe::kernel::xboxkrnl::RegisterNtExports(
|
||||||
ExportResolver* export_resolver, KernelState* state) {
|
ExportResolver* export_resolver, KernelState* state) {
|
||||||
|
SHIM_SET_MAPPING("xboxkrnl.exe", NtClose, state);
|
||||||
SHIM_SET_MAPPING("xboxkrnl.exe", NtCreateFile, state);
|
SHIM_SET_MAPPING("xboxkrnl.exe", NtCreateFile, state);
|
||||||
|
SHIM_SET_MAPPING("xboxkrnl.exe", NtQueryFullAttributesFile, state);
|
||||||
SHIM_SET_MAPPING("xboxkrnl.exe", NtQueryInformationFile, state);
|
SHIM_SET_MAPPING("xboxkrnl.exe", NtQueryInformationFile, state);
|
||||||
SHIM_SET_MAPPING("xboxkrnl.exe", NtReadFile, state);
|
SHIM_SET_MAPPING("xboxkrnl.exe", NtReadFile, state);
|
||||||
SHIM_SET_MAPPING("xboxkrnl.exe", NtQueryFullAttributesFile, state);
|
|
||||||
SHIM_SET_MAPPING("xboxkrnl.exe", NtClose, state);
|
|
||||||
}
|
}
|
|
@ -0,0 +1,29 @@
|
||||||
|
/**
|
||||||
|
******************************************************************************
|
||||||
|
* Xenia : Xbox 360 Emulator Research Project *
|
||||||
|
******************************************************************************
|
||||||
|
* Copyright 2013 Ben Vanik. All rights reserved. *
|
||||||
|
* Released under the BSD license - see LICENSE in the root for more details. *
|
||||||
|
******************************************************************************
|
||||||
|
*/
|
||||||
|
|
||||||
|
#ifndef XENIA_KERNEL_MODULES_XBOXKRNL_NT_H_
|
||||||
|
#define XENIA_KERNEL_MODULES_XBOXKRNL_NT_H_
|
||||||
|
|
||||||
|
#include <xenia/common.h>
|
||||||
|
#include <xenia/core.h>
|
||||||
|
|
||||||
|
#include <xenia/kernel/xbox.h>
|
||||||
|
|
||||||
|
|
||||||
|
namespace xe {
|
||||||
|
namespace kernel {
|
||||||
|
namespace xboxkrnl {
|
||||||
|
|
||||||
|
|
||||||
|
} // namespace xboxkrnl
|
||||||
|
} // namespace kernel
|
||||||
|
} // namespace xe
|
||||||
|
|
||||||
|
|
||||||
|
#endif // XENIA_KERNEL_MODULES_XBOXKRNL_NT_H_
|
|
@ -30,11 +30,12 @@ extern KernelState* shared_kernel_state_;
|
||||||
|
|
||||||
// Registration functions, one per file.
|
// Registration functions, one per file.
|
||||||
void RegisterDebugExports(ExportResolver* export_resolver, KernelState* state);
|
void RegisterDebugExports(ExportResolver* export_resolver, KernelState* state);
|
||||||
void RegisterFileExports(ExportResolver* export_resolver, KernelState* state);
|
|
||||||
void RegisterHalExports(ExportResolver* export_resolver, KernelState* state);
|
void RegisterHalExports(ExportResolver* export_resolver, KernelState* state);
|
||||||
|
void RegisterIoExports(ExportResolver* export_resolver, KernelState* state);
|
||||||
void RegisterMemoryExports(ExportResolver* export_resolver, KernelState* state);
|
void RegisterMemoryExports(ExportResolver* export_resolver, KernelState* state);
|
||||||
void RegisterMiscExports(ExportResolver* export_resolver, KernelState* state);
|
void RegisterMiscExports(ExportResolver* export_resolver, KernelState* state);
|
||||||
void RegisterModuleExports(ExportResolver* export_resolver, KernelState* state);
|
void RegisterModuleExports(ExportResolver* export_resolver, KernelState* state);
|
||||||
|
void RegisterNtExports(ExportResolver* export_resolver, KernelState* state);
|
||||||
void RegisterRtlExports(ExportResolver* export_resolver, KernelState* state);
|
void RegisterRtlExports(ExportResolver* export_resolver, KernelState* state);
|
||||||
void RegisterThreadingExports(ExportResolver* export_resolver,
|
void RegisterThreadingExports(ExportResolver* export_resolver,
|
||||||
KernelState* state);
|
KernelState* state);
|
||||||
|
|
Loading…
Reference in New Issue