1
0
mirror of https://github.com/djhackersdev/bemanitools.git synced 2025-01-31 12:13:42 +01:00

acio: add MDXF node definition

This commit is contained in:
Will Xyen 2021-09-12 19:04:15 -07:00 committed by 6fe20d9b80a9661a09ef66dfd58832d49592386b
parent c929141e71
commit 839903ab48
2 changed files with 55 additions and 1 deletions

View File

@ -9,6 +9,7 @@
#include "acio/hdxs.h" #include "acio/hdxs.h"
#include "acio/icca.h" #include "acio/icca.h"
#include "acio/kfca.h" #include "acio/kfca.h"
#include "acio/mdxf.h"
#include "acio/panb.h" #include "acio/panb.h"
#define AC_IO_SOF 0xAA #define AC_IO_SOF 0xAA
@ -37,9 +38,11 @@ enum ac_io_node_type {
AC_IO_NODE_TYPE_LED_STRIP = 0x04020000, AC_IO_NODE_TYPE_LED_STRIP = 0x04020000,
AC_IO_NODE_TYPE_LED_SPIKE = 0x05010000, AC_IO_NODE_TYPE_LED_SPIKE = 0x05010000,
AC_IO_NODE_TYPE_KFCA = 0x09060000, AC_IO_NODE_TYPE_KFCA = 0x09060000,
AC_IO_NODE_TYPE_BI2A = 0x0d060000,
AC_IO_NODE_TYPE_RVOL = 0x09060001, AC_IO_NODE_TYPE_RVOL = 0x09060001,
AC_IO_NODE_TYPE_MDXF = 0x09070000,
AC_IO_NODE_TYPE_PANB = 0x090E0000, AC_IO_NODE_TYPE_PANB = 0x090E0000,
AC_IO_NODE_TYPE_BMPU = 0x0B000000,
AC_IO_NODE_TYPE_BI2A = 0x0D060000,
}; };
#pragma pack(push, 1) #pragma pack(push, 1)
@ -84,6 +87,9 @@ struct ac_io_message {
struct ac_io_panb_poll_out panb_poll_out; struct ac_io_panb_poll_out panb_poll_out;
struct ac_io_hdxs_output hdxs_output; struct ac_io_hdxs_output hdxs_output;
struct ac_io_mdxf_poll_in mdxf_poll_in;
struct ac_io_mdxf_light_out mdxf_light_out;
}; };
} cmd; } cmd;

48
src/main/acio/mdxf.h Normal file
View File

@ -0,0 +1,48 @@
#ifndef AC_IO_MDXF_H
#define AC_IO_MDXF_H
#include <stdint.h>
#define AC_IO_CMD_MDXF_POLL 0x0110
#define AC_IO_CMD_MDXF_AUTO_GET_START 0x0116
#define AC_IO_CMD_MDXF_LIGHT 0x0113
#pragma pack(push, 1)
union mdxf_panel_sensors_individual {
struct {
uint8_t right : 1;
uint8_t left : 1;
uint8_t down : 1;
uint8_t up : 1;
};
uint8_t raw;
};
struct mdxf_panel_sensors {
uint8_t down : 4;
uint8_t up : 4;
uint8_t right : 4;
uint8_t left : 4;
};
struct ac_io_mdxf_poll_in {
struct mdxf_panel_sensors panel;
uint8_t unk;
};
struct mdxf_lights {
uint8_t up_right;
uint8_t down_left;
uint8_t up_left;
uint8_t down_right;
uint8_t unk;
};
struct ac_io_mdxf_light_out {
struct mdxf_lights side[2];
};
#pragma pack(pop)
#endif