2013-12-19 17:10:14 +00:00
|
|
|
#pragma once
|
|
|
|
#include "types.h"
|
|
|
|
|
2021-03-01 09:13:40 +00:00
|
|
|
enum MapleDeviceType
|
|
|
|
{
|
|
|
|
MDT_SegaController,
|
|
|
|
|
|
|
|
MDT_SegaVMU,
|
|
|
|
MDT_Microphone,
|
|
|
|
MDT_PurupuruPack,
|
|
|
|
MDT_AsciiStick,
|
|
|
|
MDT_Keyboard,
|
|
|
|
MDT_Mouse,
|
|
|
|
MDT_LightGun,
|
|
|
|
MDT_TwinStick,
|
|
|
|
|
|
|
|
MDT_NaomiJamma,
|
|
|
|
|
|
|
|
MDT_None,
|
|
|
|
MDT_Count
|
|
|
|
};
|
|
|
|
|
2013-12-19 17:10:14 +00:00
|
|
|
enum PlainJoystickAxisId
|
|
|
|
{
|
|
|
|
PJAI_X1 = 0,
|
|
|
|
PJAI_Y1 = 1,
|
|
|
|
PJAI_X2 = 2,
|
|
|
|
PJAI_Y2 = 3,
|
2013-12-24 00:56:44 +00:00
|
|
|
|
2013-12-19 17:10:14 +00:00
|
|
|
PJAI_Count = 4
|
|
|
|
};
|
|
|
|
|
|
|
|
enum PlainJoystickTriggerId
|
|
|
|
{
|
|
|
|
PJTI_L = 0,
|
|
|
|
PJTI_R = 1,
|
|
|
|
|
|
|
|
PJTI_Count = 2
|
|
|
|
};
|
|
|
|
|
|
|
|
struct PlainJoystickState
|
|
|
|
{
|
|
|
|
PlainJoystickState()
|
|
|
|
{
|
|
|
|
joy[0]=joy[1]=joy[2]=joy[3]=0x80;
|
|
|
|
trigger[0]=trigger[1]=0;
|
|
|
|
}
|
|
|
|
|
2020-12-02 13:40:50 +00:00
|
|
|
u32 kcode = ~0;
|
2013-12-19 17:10:14 +00:00
|
|
|
|
|
|
|
u8 joy[PJAI_Count];
|
|
|
|
u8 trigger[PJTI_Count];
|
|
|
|
};
|
|
|
|
|
2021-01-21 20:00:46 +00:00
|
|
|
struct maple_device;
|
|
|
|
|
|
|
|
class MapleConfigMap
|
2013-12-19 17:10:14 +00:00
|
|
|
{
|
2021-01-21 20:00:46 +00:00
|
|
|
public:
|
2021-01-22 14:11:04 +00:00
|
|
|
MapleConfigMap(maple_device* dev) : dev(dev) {}
|
2021-01-21 20:00:46 +00:00
|
|
|
void SetVibration(float power, float inclination, u32 duration_ms);
|
|
|
|
void GetInput(PlainJoystickState* pjs);
|
|
|
|
void GetAbsCoordinates(int& x, int& y);
|
2021-05-19 09:32:38 +00:00
|
|
|
void GetMouseInput(u8& buttons, int& x, int& y, int& wheel);
|
2021-01-21 20:00:46 +00:00
|
|
|
void SetImage(u8 *img);
|
|
|
|
|
|
|
|
private:
|
|
|
|
u32 playerNum();
|
|
|
|
|
|
|
|
maple_device* dev;
|
2013-12-19 17:10:14 +00:00
|
|
|
};
|
|
|
|
|
2019-02-12 10:30:24 +00:00
|
|
|
void mcfg_CreateDevices();
|
2018-08-20 11:36:34 +00:00
|
|
|
void mcfg_CreateNAOMIJamma();
|
2018-11-07 22:27:32 +00:00
|
|
|
void mcfg_CreateAtomisWaveControllers();
|
2018-08-20 11:36:34 +00:00
|
|
|
|
2018-08-13 11:00:24 +00:00
|
|
|
void mcfg_DestroyDevices();
|
2018-09-29 14:13:07 +00:00
|
|
|
void mcfg_SerializeDevices(void **data, unsigned int *total_size);
|
2021-01-22 14:11:04 +00:00
|
|
|
void mcfg_UnserializeDevices(void **data, unsigned int *total_size, serialize_version_enum version);
|
2019-04-06 17:36:57 +00:00
|
|
|
|
|
|
|
bool maple_atomiswave_coin_chute(int slot);
|
2021-01-21 20:00:46 +00:00
|
|
|
void push_vmu_screen(int bus_id, int bus_port, u8* buffer);
|