mirror of
https://github.com/djhackersdev/bemanitools.git
synced 2026-04-09 18:54:55 -05:00
181 lines
7.0 KiB
C
181 lines
7.0 KiB
C
#include "cconfig/cconfig-util.h"
|
|
|
|
#include "sdvxhook2/config-io.h"
|
|
|
|
#include "util/log.h"
|
|
|
|
#define SDVXHOOK2_CONFIG_IO_DISABLE_CARD_READER_EMU_KEY \
|
|
"io.disable_card_reader_emu"
|
|
#define SDVXHOOK2_CONFIG_IO_DISABLE_BIO2_EMU_KEY "io.disable_bio2_emu"
|
|
#define SDVXHOOK2_CONFIG_IO_DISABLE_POLL_LIMITER_KEY "io.disable_poll_limiter"
|
|
#define SDVXHOOK2_CONFIG_IO_FORCE_HEADPHONES_KEY "io.force_headphones"
|
|
#define SDVXHOOK2_CONFIG_IO_DISABLE_FILE_HOOKS_KEY "io.disable_file_hooks"
|
|
#define SDVXHOOK2_CONFIG_IO_DISABLE_POWER_HOOKS_KEY "io.disable_power_hooks"
|
|
#define SDVXHOOK2_CONFIG_IO_DISABLE_NVAPI_HOOKS_KEY "io.disable_nvapi_hooks"
|
|
#define SDVXHOOK2_CONFIG_IO_COM1_CARD_READER_KEY "io.com1_card_reader"
|
|
|
|
#define SDVXHOOK2_CONFIG_IO_DEFAULT_DISABLE_CARD_READER_EMU_VALUE false
|
|
#define SDVXHOOK2_CONFIG_IO_DEFAULT_DISABLE_BIO2_EMU_VALUE false
|
|
#define SDVXHOOK2_CONFIG_IO_DEFAULT_DISABLE_POLL_LIMITER_VALUE false
|
|
#define SDVXHOOK2_CONFIG_IO_DEFAULT_FORCE_HEADPHONES_VALUE false
|
|
#define SDVXHOOK2_CONFIG_IO_DEFAULT_DISABLE_FILE_HOOKS_VALUE false
|
|
#define SDVXHOOK2_CONFIG_IO_DEFAULT_DISABLE_POWER_HOOKS_VALUE false
|
|
#define SDVXHOOK2_CONFIG_IO_DEFAULT_DISABLE_NVAPI_HOOKS_VALUE false
|
|
#define SDVXHOOK2_CONFIG_IO_DEFAULT_DISABLE_NVAPI_HOOKS_VALUE false
|
|
#define SDVXHOOK2_CONFIG_IO_DEFAULT_COM1_CARD_READER_VALUE false
|
|
|
|
void sdvxhook2_config_io_init(struct cconfig *config)
|
|
{
|
|
cconfig_util_set_bool(
|
|
config,
|
|
SDVXHOOK2_CONFIG_IO_DISABLE_CARD_READER_EMU_KEY,
|
|
SDVXHOOK2_CONFIG_IO_DEFAULT_DISABLE_CARD_READER_EMU_VALUE,
|
|
"Disable card reader emulation and enable usage of real card reader "
|
|
"hardware on COM2");
|
|
|
|
cconfig_util_set_bool(
|
|
config,
|
|
SDVXHOOK2_CONFIG_IO_DISABLE_BIO2_EMU_KEY,
|
|
SDVXHOOK2_CONFIG_IO_DEFAULT_DISABLE_BIO2_EMU_VALUE,
|
|
"Disable BIO2 emulation and enable usage of real BIO2 hardware");
|
|
|
|
cconfig_util_set_bool(
|
|
config,
|
|
SDVXHOOK2_CONFIG_IO_DISABLE_POLL_LIMITER_KEY,
|
|
SDVXHOOK2_CONFIG_IO_DEFAULT_DISABLE_POLL_LIMITER_VALUE,
|
|
"Disables the poll limiter, warning very high CPU usage may arise");
|
|
|
|
cconfig_util_set_bool(
|
|
config,
|
|
SDVXHOOK2_CONFIG_IO_FORCE_HEADPHONES_KEY,
|
|
SDVXHOOK2_CONFIG_IO_DEFAULT_FORCE_HEADPHONES_VALUE,
|
|
"Forces game to think headphones are attached");
|
|
|
|
cconfig_util_set_bool(
|
|
config,
|
|
SDVXHOOK2_CONFIG_IO_DISABLE_FILE_HOOKS_KEY,
|
|
SDVXHOOK2_CONFIG_IO_DEFAULT_DISABLE_FILE_HOOKS_VALUE,
|
|
"Disables the built in file hooks, requiring manual file creation "
|
|
"(/dev/raw/j.dest)");
|
|
|
|
cconfig_util_set_bool(
|
|
config,
|
|
SDVXHOOK2_CONFIG_IO_DISABLE_POWER_HOOKS_KEY,
|
|
SDVXHOOK2_CONFIG_IO_DEFAULT_DISABLE_POWER_HOOKS_VALUE,
|
|
"Disables the built in power control hooks, allowing game to modify "
|
|
"system power settings");
|
|
|
|
cconfig_util_set_bool(
|
|
config,
|
|
SDVXHOOK2_CONFIG_IO_DISABLE_NVAPI_HOOKS_KEY,
|
|
SDVXHOOK2_CONFIG_IO_DEFAULT_DISABLE_NVAPI_HOOKS_VALUE,
|
|
"Disables the built in NVAPI control hooks, allowing game to modify "
|
|
"system monitor settings");
|
|
|
|
cconfig_util_set_bool(
|
|
config,
|
|
SDVXHOOK2_CONFIG_IO_COM1_CARD_READER_KEY,
|
|
SDVXHOOK2_CONFIG_IO_DEFAULT_COM1_CARD_READER_VALUE,
|
|
"Emulates the card reader on COM1 instead of COM2");
|
|
}
|
|
|
|
void sdvxhook2_config_io_get(
|
|
struct sdvxhook2_config_io *config_io, struct cconfig *config)
|
|
{
|
|
if (!cconfig_util_get_bool(
|
|
config,
|
|
SDVXHOOK2_CONFIG_IO_DISABLE_CARD_READER_EMU_KEY,
|
|
&config_io->disable_card_reader_emu,
|
|
SDVXHOOK2_CONFIG_IO_DEFAULT_DISABLE_CARD_READER_EMU_VALUE)) {
|
|
log_warning(
|
|
"Invalid value for key '%s' specified, fallback "
|
|
"to default '%d'",
|
|
SDVXHOOK2_CONFIG_IO_DISABLE_CARD_READER_EMU_KEY,
|
|
SDVXHOOK2_CONFIG_IO_DEFAULT_DISABLE_CARD_READER_EMU_VALUE);
|
|
}
|
|
|
|
if (!cconfig_util_get_bool(
|
|
config,
|
|
SDVXHOOK2_CONFIG_IO_DISABLE_BIO2_EMU_KEY,
|
|
&config_io->disable_bio2_emu,
|
|
SDVXHOOK2_CONFIG_IO_DEFAULT_DISABLE_BIO2_EMU_VALUE)) {
|
|
log_warning(
|
|
"Invalid value for key '%s' specified, fallback "
|
|
"to default '%d'",
|
|
SDVXHOOK2_CONFIG_IO_DISABLE_BIO2_EMU_KEY,
|
|
SDVXHOOK2_CONFIG_IO_DEFAULT_DISABLE_BIO2_EMU_VALUE);
|
|
}
|
|
|
|
if (!cconfig_util_get_bool(
|
|
config,
|
|
SDVXHOOK2_CONFIG_IO_DISABLE_POLL_LIMITER_KEY,
|
|
&config_io->disable_poll_limiter,
|
|
SDVXHOOK2_CONFIG_IO_DEFAULT_DISABLE_POLL_LIMITER_VALUE)) {
|
|
log_warning(
|
|
"Invalid value for key '%s' specified, fallback "
|
|
"to default '%d'",
|
|
SDVXHOOK2_CONFIG_IO_DISABLE_POLL_LIMITER_KEY,
|
|
SDVXHOOK2_CONFIG_IO_DEFAULT_DISABLE_POLL_LIMITER_VALUE);
|
|
}
|
|
|
|
if (!cconfig_util_get_bool(
|
|
config,
|
|
SDVXHOOK2_CONFIG_IO_FORCE_HEADPHONES_KEY,
|
|
&config_io->force_headphones,
|
|
SDVXHOOK2_CONFIG_IO_DEFAULT_FORCE_HEADPHONES_VALUE)) {
|
|
log_warning(
|
|
"Invalid value for key '%s' specified, fallback "
|
|
"to default '%d'",
|
|
SDVXHOOK2_CONFIG_IO_FORCE_HEADPHONES_KEY,
|
|
SDVXHOOK2_CONFIG_IO_DEFAULT_FORCE_HEADPHONES_VALUE);
|
|
}
|
|
|
|
if (!cconfig_util_get_bool(
|
|
config,
|
|
SDVXHOOK2_CONFIG_IO_DISABLE_FILE_HOOKS_KEY,
|
|
&config_io->disable_file_hooks,
|
|
SDVXHOOK2_CONFIG_IO_DEFAULT_DISABLE_FILE_HOOKS_VALUE)) {
|
|
log_warning(
|
|
"Invalid value for key '%s' specified, fallback "
|
|
"to default '%d'",
|
|
SDVXHOOK2_CONFIG_IO_DISABLE_FILE_HOOKS_KEY,
|
|
SDVXHOOK2_CONFIG_IO_DEFAULT_DISABLE_FILE_HOOKS_VALUE);
|
|
}
|
|
|
|
if (!cconfig_util_get_bool(
|
|
config,
|
|
SDVXHOOK2_CONFIG_IO_DISABLE_POWER_HOOKS_KEY,
|
|
&config_io->disable_power_hooks,
|
|
SDVXHOOK2_CONFIG_IO_DEFAULT_DISABLE_POWER_HOOKS_VALUE)) {
|
|
log_warning(
|
|
"Invalid value for key '%s' specified, fallback "
|
|
"to default '%d'",
|
|
SDVXHOOK2_CONFIG_IO_DISABLE_POWER_HOOKS_KEY,
|
|
SDVXHOOK2_CONFIG_IO_DEFAULT_DISABLE_POWER_HOOKS_VALUE);
|
|
}
|
|
|
|
if (!cconfig_util_get_bool(
|
|
config,
|
|
SDVXHOOK2_CONFIG_IO_DISABLE_NVAPI_HOOKS_KEY,
|
|
&config_io->disable_nvapi_hooks,
|
|
SDVXHOOK2_CONFIG_IO_DEFAULT_DISABLE_NVAPI_HOOKS_VALUE)) {
|
|
log_warning(
|
|
"Invalid value for key '%s' specified, fallback "
|
|
"to default '%d'",
|
|
SDVXHOOK2_CONFIG_IO_DISABLE_NVAPI_HOOKS_KEY,
|
|
SDVXHOOK2_CONFIG_IO_DEFAULT_DISABLE_NVAPI_HOOKS_VALUE);
|
|
}
|
|
|
|
if (!cconfig_util_get_bool(
|
|
config,
|
|
SDVXHOOK2_CONFIG_IO_COM1_CARD_READER_KEY,
|
|
&config_io->com1_card_reader,
|
|
SDVXHOOK2_CONFIG_IO_DEFAULT_COM1_CARD_READER_VALUE)) {
|
|
log_warning(
|
|
"Invalid value for key '%s' specified, fallback "
|
|
"to default '%d'",
|
|
SDVXHOOK2_CONFIG_IO_COM1_CARD_READER_KEY,
|
|
SDVXHOOK2_CONFIG_IO_DEFAULT_COM1_CARD_READER_VALUE);
|
|
}
|
|
}
|