diff --git a/src/main/acio/acio.h b/src/main/acio/acio.h index effea99..b8608ef 100644 --- a/src/main/acio/acio.h +++ b/src/main/acio/acio.h @@ -66,6 +66,7 @@ struct ac_io_message { uint8_t raw[0xFF]; uint8_t count; uint8_t status; + uint8_t param; struct ac_io_version version; struct ac_io_icca_misc icca_misc; diff --git a/src/main/bio2drv/bi2a-iidx.c b/src/main/bio2drv/bi2a-iidx.c index fb7554e..0738921 100644 --- a/src/main/bio2drv/bi2a-iidx.c +++ b/src/main/bio2drv/bi2a-iidx.c @@ -9,6 +9,8 @@ #include "util/log.h" +static const uint8_t _BIO2DR_BI2A_IIDX_INIT_DATA = 0x3B; + static bool bio2drv_bi2a_iidx_init_io(uint8_t node_id) { struct ac_io_message msg; @@ -16,7 +18,7 @@ static bool bio2drv_bi2a_iidx_init_io(uint8_t node_id) msg.addr = node_id + 1; msg.cmd.code = ac_io_u16(BIO2_BI2A_CMD_INIT); msg.cmd.nbytes = 1; - msg.cmd.count = 0x3B; + msg.cmd.param = _BIO2DR_BI2A_IIDX_INIT_DATA; if (!aciodrv_send_and_recv( &msg, offsetof(struct ac_io_message, cmd.raw) + 1)) { diff --git a/src/main/bio2drv/bi2a-sdvx.c b/src/main/bio2drv/bi2a-sdvx.c index 4f56266..0d1fc6d 100644 --- a/src/main/bio2drv/bi2a-sdvx.c +++ b/src/main/bio2drv/bi2a-sdvx.c @@ -9,6 +9,8 @@ #include "util/log.h" +static const uint8_t _BIO2DR_BI2A_SDVX_INIT_DATA = 0x3B; + // this is probably InitIO static bool bio2drv_bi2a_sdvx_init_io(uint8_t node_id) { @@ -17,7 +19,7 @@ static bool bio2drv_bi2a_sdvx_init_io(uint8_t node_id) msg.addr = node_id + 1; msg.cmd.code = ac_io_u16(BIO2_BI2A_CMD_INIT); msg.cmd.nbytes = 1; - msg.cmd.count = 0x3B; + msg.cmd.param = _BIO2DR_BI2A_SDVX_INIT_DATA; if (!aciodrv_send_and_recv( &msg, offsetof(struct ac_io_message, cmd.raw) + 1)) { diff --git a/src/main/bio2emu-iidx/bi2a.c b/src/main/bio2emu-iidx/bi2a.c index d556d0c..f67fcf5 100644 --- a/src/main/bio2emu-iidx/bi2a.c +++ b/src/main/bio2emu-iidx/bi2a.c @@ -85,8 +85,8 @@ void bio2_emu_bi2a_dispatch_request( cmd_code = ac_io_u16(req->cmd.code); switch (cmd_code) { - case AC_IO_CMD_CLEAR: - log_misc("AC_IO_CMD_CLEAR(%d)", req->addr); + case BIO2_BI2A_CMD_INIT: + log_misc("BIO2_BI2A_CMD_INIT(%d)", req->addr); bio2_emu_bi2a_send_status(&bio2port->acio, req, 0x00); break;