flycast/core/hw/aica/sgc_if.h

50 lines
573 B
C++

#pragma once
#include "types.h"
namespace aica::sgc
{
void AICA_Sample();
void WriteChannelReg(u32 channel, u32 reg, int size);
void init();
void term();
union fp_22_10
{
struct
{
u32 fp:10;
u32 ip:22;
};
u32 full;
};
union fp_s_22_10
{
struct
{
u32 fp:10;
s32 ip:22;
};
s32 full;
};
union fp_20_12
{
struct
{
u32 fp:12;
u32 ip:20;
};
u32 full;
};
typedef s32 SampleType;
void ReadCommonReg(u32 reg, bool byte);
void serialize(Serializer& ctx);
void deserialize(Deserializer& ctx);
void vmuBeep(int on, int period);
} // namespace aica::sgc