segatools/mercuryhook/mercury-dll.h

26 lines
614 B
C
Raw Permalink Normal View History

2021-12-21 05:02:17 +00:00
#pragma once
#include <windows.h>
#include "mercuryio/mercuryio.h"
2022-07-31 18:11:24 +00:00
#include "mercuryhook/elisabeth.h"
2021-12-21 05:02:17 +00:00
struct mercury_dll {
uint16_t api_version;
HRESULT (*init)(void);
HRESULT (*poll)(void);
void (*get_opbtns)(uint8_t *opbtn);
void (*get_gamebtns)(uint8_t *gamebtn);
2022-01-04 05:10:46 +00:00
HRESULT (*touch_init)(void);
void (*touch_start)(mercury_io_touch_callback_t callback);
2022-07-31 18:11:24 +00:00
void (*set_leds)(struct led_data data);
2021-12-21 05:02:17 +00:00
};
struct mercury_dll_config {
wchar_t path[MAX_PATH];
};
extern struct mercury_dll mercury_dll;
HRESULT mercury_dll_init(const struct mercury_dll_config *cfg, HINSTANCE self);