34 lines
1.1 KiB
C#
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);
|
|
}
|
|
}
|