forked from TeamTofuShop/segatools
chuni/chusan: added LED output to DLLs (will break most DLLs)
Credits: somewhatlurker, skogaby https://dev.s-ul.net/skogaby/segatools/-/blob/ongeki-15093/
This commit is contained in:
@ -30,6 +30,12 @@ const struct dll_bind_sym chuni_dll_syms[] = {
|
||||
}, {
|
||||
.sym = "chuni_io_slider_set_leds",
|
||||
.off = offsetof(struct chuni_dll, slider_set_leds),
|
||||
}, {
|
||||
.sym = "chuni_io_led_init",
|
||||
.off = offsetof(struct chuni_dll, led_init),
|
||||
}, {
|
||||
.sym = "chuni_io_led_set_colors",
|
||||
.off = offsetof(struct chuni_dll, led_set_leds),
|
||||
}
|
||||
};
|
||||
|
||||
|
@ -13,6 +13,8 @@ struct chuni_dll {
|
||||
void (*slider_start)(chuni_io_slider_callback_t callback);
|
||||
void (*slider_stop)(void);
|
||||
void (*slider_set_leds)(const uint8_t *rgb);
|
||||
int (*led_init)();
|
||||
void (*led_set_leds)(uint8_t board, uint8_t *rgb);
|
||||
};
|
||||
|
||||
struct chuni_dll_config {
|
||||
|
@ -20,3 +20,5 @@ EXPORTS
|
||||
chuni_io_slider_set_leds
|
||||
chuni_io_slider_start
|
||||
chuni_io_slider_stop
|
||||
chuni_io_led_init
|
||||
chuni_io_led_set_colors
|
||||
|
@ -129,7 +129,8 @@ static DWORD CALLBACK chusan_pre_startup(void)
|
||||
}
|
||||
}
|
||||
|
||||
hr = led15093_hook_init(&chusan_hook_cfg.led15093, first_port, 2, 2, 1);
|
||||
hr = led15093_hook_init(&chusan_hook_cfg.led15093,
|
||||
chuni_dll.led_init, chuni_dll.led_set_leds, first_port, 2, 2, 1);
|
||||
|
||||
if (FAILED(hr)) {
|
||||
goto fail;
|
||||
|
@ -1,16 +0,0 @@
|
||||
#pragma once
|
||||
|
||||
#include <windows.h>
|
||||
|
||||
#include <stdbool.h>
|
||||
|
||||
struct led1509306_config {
|
||||
bool enable;
|
||||
bool cvt_port;
|
||||
char board_number[8];
|
||||
char chip_number[5];
|
||||
uint8_t fw_ver;
|
||||
uint16_t fw_sum;
|
||||
};
|
||||
|
||||
HRESULT led1509306_hook_init(const struct led1509306_config *cfg);
|
Reference in New Issue
Block a user