diff --git a/src/main/acio/kfca.h b/src/main/acio/kfca.h index 7106c4c..1132603 100644 --- a/src/main/acio/kfca.h +++ b/src/main/acio/kfca.h @@ -2,8 +2,8 @@ #define AC_IO_KFCA_H #define AC_IO_CMD_KFCA_POLL 0x0113 -#define AC_IO_CMD_KFCA_UNK_0120 0x0120 -#define AC_IO_CMD_KFCA_UNK_0128 0x0128 +#define AC_IO_CMD_KFCA_WATCHDOG 0x0120 +#define AC_IO_CMD_KFCA_AMP_CONTROL 0x0128 #define AC_IO_KFCA_IN_GPIO_SYS_COIN 0x04 /* ... AC_IO_KFCA_IN_GPIO_SYS_COIN2 0x08 (maybe?) */ @@ -14,6 +14,7 @@ #define AC_IO_KFCA_IN_GPIO_0_B 0x0002 #define AC_IO_KFCA_IN_GPIO_0_A 0x0004 #define AC_IO_KFCA_IN_GPIO_0_START 0x0008 +#define AC_IO_KFCA_IN_GPIO_0_RECORDER 0x0010 #define AC_IO_KFCA_IN_GPIO_0_HEADPHONE 0x0020 #define AC_IO_KFCA_IN_GPIO_1_FX_R 0x0008 @@ -39,6 +40,7 @@ struct ac_io_kfca_poll_in { struct ac_io_kfca_poll_out { uint32_t gpio; uint8_t pwm[18]; + uint8_t unk[2]; }; #pragma pack(pop) diff --git a/src/main/bemanitools/sdvxio.h b/src/main/bemanitools/sdvxio.h index 3e85f3b..7518a2d 100644 --- a/src/main/bemanitools/sdvxio.h +++ b/src/main/bemanitools/sdvxio.h @@ -10,8 +10,8 @@ enum sdvx_io_in_gpio_sys_bit { SDVX_IO_IN_GPIO_SYS_COIN = 2, - SDVX_IO_IN_GPIO_SYS_TEST = 4, - SDVX_IO_IN_GPIO_SYS_SERVICE = 5, + SDVX_IO_IN_GPIO_SYS_SERVICE = 4, + SDVX_IO_IN_GPIO_SYS_TEST = 5, }; enum sdvx_io_in_gpio_0_bit { @@ -19,7 +19,8 @@ enum sdvx_io_in_gpio_0_bit { SDVX_IO_IN_GPIO_0_B = 1, SDVX_IO_IN_GPIO_0_A = 2, SDVX_IO_IN_GPIO_0_START = 3, - SDVX_IO_IN_GPIO_0_HEADPHONE = 4, + SDVX_IO_IN_GPIO_0_RECORDER = 4, + SDVX_IO_IN_GPIO_0_HEADPHONE = 5, }; enum sdvx_io_in_gpio_1_bit { diff --git a/src/main/bsthook/kfca.c b/src/main/bsthook/kfca.c index 0b37b50..f6ce753 100644 --- a/src/main/bsthook/kfca.c +++ b/src/main/bsthook/kfca.c @@ -47,14 +47,14 @@ void kfca_dispatch_request(const struct ac_io_message *req) break; - case AC_IO_CMD_KFCA_UNK_0120: - log_misc("AC_IO_CMD_KFCA_UNK_%04X(%d)", cmd_code, req->addr); + case AC_IO_CMD_KFCA_WATCHDOG: + log_misc("AC_IO_CMD_KFCA_WATCHDOG(%d)", req->addr); kfca_report_status(req, 0x00); break; - case AC_IO_CMD_KFCA_UNK_0128: - log_misc("AC_IO_CMD_KFCA_UNK_%04X(%d)", cmd_code, req->addr); + case AC_IO_CMD_KFCA_AMP_CONTROL: + log_misc("AC_IO_CMD_KFCA_AMP_CONTROL(%d)", req->addr); kfca_report_nil(req); break; diff --git a/src/main/sdvxhook/kfca.c b/src/main/sdvxhook/kfca.c index eec5582..ea3ca53 100644 --- a/src/main/sdvxhook/kfca.c +++ b/src/main/sdvxhook/kfca.c @@ -52,14 +52,14 @@ void kfca_dispatch_request(const struct ac_io_message *req) break; - case AC_IO_CMD_KFCA_UNK_0120: - log_misc("AC_IO_CMD_KFCA_UNK_%04X(%d)", cmd_code, req->addr); + case AC_IO_CMD_KFCA_WATCHDOG: + log_misc("AC_IO_CMD_KFCA_WATCHDOG(%d)", req->addr); kfca_report_status(req, 0x00); break; - case AC_IO_CMD_KFCA_UNK_0128: - log_misc("AC_IO_CMD_KFCA_UNK_0128(%d)", req->addr); + case AC_IO_CMD_KFCA_AMP_CONTROL: + log_misc("AC_IO_CMD_KFCA_AMP_CONTROL(%d)", req->addr); kfca_report_0128(req); break;