[Kernel] Stub HidReadKeys.

This commit is contained in:
gibbed 2018-10-23 16:43:31 -05:00
parent 76c14f7e58
commit 3a64cf64e0
3 changed files with 43 additions and 0 deletions

View 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

View File

@ -86,6 +86,7 @@ XboxkrnlModule::XboxkrnlModule(Emulator* emulator, KernelState* kernel_state)
RegisterDebugExports(export_resolver_, kernel_state_);
RegisterErrorExports(export_resolver_, kernel_state_);
RegisterHalExports(export_resolver_, kernel_state_);
RegisterHidExports(export_resolver_, kernel_state_);
RegisterIoExports(export_resolver_, kernel_state_);
RegisterMemoryExports(export_resolver_, kernel_state_);
RegisterMiscExports(export_resolver_, kernel_state_);

View File

@ -33,6 +33,8 @@ void RegisterErrorExports(xe::cpu::ExportResolver* export_resolver,
KernelState* kernel_state);
void RegisterHalExports(xe::cpu::ExportResolver* export_resolver,
KernelState* kernel_state);
void RegisterHidExports(xe::cpu::ExportResolver* export_resolver,
KernelState* kernel_state);
void RegisterIoExports(xe::cpu::ExportResolver* export_resolver,
KernelState* kernel_state);
void RegisterMemoryExports(xe::cpu::ExportResolver* export_resolver,