AxibugEmuOnline/AxibugEmuOnline.Client/Assets/Plugins/Essgee.Unity/Emulation/Audio/IDMGAudioChannel.cs

34 lines
1.1 KiB
C#

namespace Essgee.Emulation.Audio
{
//public interface IDMGAudioChannel
// {
// int OutputVolume { get; }
// bool IsActive { get; }
// void Reset();
// void LengthCounterClock();
// void SweepClock();
// void VolumeEnvelopeClock();
// void Step();
// void WritePort(byte port, byte value);
// byte ReadPort(byte port);
// void WriteWaveRam(byte offset, byte value);
// byte ReadWaveRam(byte offset);
//}
public abstract class IDMGAudioChannel
{
public int OutputVolume;
public abstract bool IsActive { get; }
public abstract void Reset();
public abstract void LengthCounterClock();
public abstract void SweepClock();
public abstract void VolumeEnvelopeClock();
public abstract void Step();
public abstract void WritePort(byte port, byte value);
public abstract byte ReadPort(byte port);
public abstract void WriteWaveRam(byte offset, byte value);
public abstract byte ReadWaveRam(byte offset);
}
}