[Kernel] Stub HidReadKeys.
This commit is contained in:
40
src/xenia/kernel/xboxkrnl/xboxkrnl_hid.cc
Normal file
40
src/xenia/kernel/xboxkrnl/xboxkrnl_hid.cc
Normal file
@@ -0,0 +1,40 @@
|
|||||||
|
/**
|
||||||
|
******************************************************************************
|
||||||
|
* 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/base/logging.h"
|
||||||
|
#include "xenia/kernel/kernel_state.h"
|
||||||
|
#include "xenia/kernel/util/shim_utils.h"
|
||||||
|
#include "xenia/kernel/xboxkrnl/xboxkrnl_private.h"
|
||||||
|
#include "xenia/xbox.h"
|
||||||
|
|
||||||
|
namespace xe {
|
||||||
|
namespace kernel {
|
||||||
|
namespace xboxkrnl {
|
||||||
|
|
||||||
|
dword_result_t HidReadKeys(dword_t unk1, unknown_t unk2, unknown_t unk3) {
|
||||||
|
/* TODO(gibbed):
|
||||||
|
* Games check for the following errors:
|
||||||
|
* 0xC000009D - translated to 0x48F - ERROR_DEVICE_NOT_CONNECTED
|
||||||
|
* 0x103 - translated to 0x10D2 - ERROR_EMPTY
|
||||||
|
* Other errors appear to be ignored?
|
||||||
|
*
|
||||||
|
* unk1 is 0
|
||||||
|
* unk2 is a pointer to &unk3[2], possibly a 6-byte vuffer
|
||||||
|
* unk3 is a pointer to a 20-byte buffer
|
||||||
|
*/
|
||||||
|
return 0xC000009D;
|
||||||
|
}
|
||||||
|
DECLARE_XBOXKRNL_EXPORT(HidReadKeys, ExportTag::kStub);
|
||||||
|
|
||||||
|
void RegisterHidExports(xe::cpu::ExportResolver* export_resolver,
|
||||||
|
KernelState* kernel_state) {}
|
||||||
|
|
||||||
|
} // namespace xboxkrnl
|
||||||
|
} // namespace kernel
|
||||||
|
} // namespace xe
|
||||||
@@ -86,6 +86,7 @@ XboxkrnlModule::XboxkrnlModule(Emulator* emulator, KernelState* kernel_state)
|
|||||||
RegisterDebugExports(export_resolver_, kernel_state_);
|
RegisterDebugExports(export_resolver_, kernel_state_);
|
||||||
RegisterErrorExports(export_resolver_, kernel_state_);
|
RegisterErrorExports(export_resolver_, kernel_state_);
|
||||||
RegisterHalExports(export_resolver_, kernel_state_);
|
RegisterHalExports(export_resolver_, kernel_state_);
|
||||||
|
RegisterHidExports(export_resolver_, kernel_state_);
|
||||||
RegisterIoExports(export_resolver_, kernel_state_);
|
RegisterIoExports(export_resolver_, kernel_state_);
|
||||||
RegisterMemoryExports(export_resolver_, kernel_state_);
|
RegisterMemoryExports(export_resolver_, kernel_state_);
|
||||||
RegisterMiscExports(export_resolver_, kernel_state_);
|
RegisterMiscExports(export_resolver_, kernel_state_);
|
||||||
|
|||||||
@@ -33,6 +33,8 @@ void RegisterErrorExports(xe::cpu::ExportResolver* export_resolver,
|
|||||||
KernelState* kernel_state);
|
KernelState* kernel_state);
|
||||||
void RegisterHalExports(xe::cpu::ExportResolver* export_resolver,
|
void RegisterHalExports(xe::cpu::ExportResolver* export_resolver,
|
||||||
KernelState* kernel_state);
|
KernelState* kernel_state);
|
||||||
|
void RegisterHidExports(xe::cpu::ExportResolver* export_resolver,
|
||||||
|
KernelState* kernel_state);
|
||||||
void RegisterIoExports(xe::cpu::ExportResolver* export_resolver,
|
void RegisterIoExports(xe::cpu::ExportResolver* export_resolver,
|
||||||
KernelState* kernel_state);
|
KernelState* kernel_state);
|
||||||
void RegisterMemoryExports(xe::cpu::ExportResolver* export_resolver,
|
void RegisterMemoryExports(xe::cpu::ExportResolver* export_resolver,
|
||||||
|
|||||||
Reference in New Issue
Block a user