2015-05-18 02:20:15 +00:00
|
|
|
#include "stdafx.h"
|
2015-12-06 09:59:58 +00:00
|
|
|
#include "Rumblepak.h"
|
2016-01-13 15:20:05 +00:00
|
|
|
|
2015-12-06 09:59:58 +00:00
|
|
|
#include <Project64-core/N64System/SystemGlobals.h>
|
2021-04-14 05:34:15 +00:00
|
|
|
#include <Project64-core/Plugins/Plugin.h>
|
2015-12-06 09:59:58 +00:00
|
|
|
#include <Project64-core/Plugins/ControllerPlugin.h>
|
2015-05-18 02:20:15 +00:00
|
|
|
|
2016-01-28 10:58:14 +00:00
|
|
|
void Rumblepak::ReadFrom(uint32_t address, uint8_t * data)
|
2015-05-18 02:20:15 +00:00
|
|
|
{
|
|
|
|
if ((address >= 0x8000) && (address < 0x9000))
|
|
|
|
{
|
2016-01-28 11:51:48 +00:00
|
|
|
memset(data, 0x80, 0x20);
|
2015-05-18 02:20:15 +00:00
|
|
|
}
|
|
|
|
else
|
|
|
|
{
|
2016-01-28 11:51:48 +00:00
|
|
|
memset(data, 0x00, 0x20);
|
2015-05-18 02:20:15 +00:00
|
|
|
}
|
|
|
|
}
|
|
|
|
|
2016-01-28 10:58:14 +00:00
|
|
|
void Rumblepak::WriteTo(int32_t Control, uint32_t address, uint8_t * data)
|
2015-05-18 02:20:15 +00:00
|
|
|
{
|
|
|
|
if ((address) == 0xC000)
|
|
|
|
{
|
2021-04-12 11:35:39 +00:00
|
|
|
if (g_Plugins->Control()->RumbleCommand != nullptr)
|
2015-05-18 02:20:15 +00:00
|
|
|
{
|
2016-01-28 11:51:48 +00:00
|
|
|
g_Plugins->Control()->RumbleCommand(Control, *(int *)data);
|
2015-05-18 02:20:15 +00:00
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|