mirror of
https://github.com/devinacker/bsnes-plus.git
synced 2025-04-02 10:52:46 -04:00
39 lines
794 B
C++
39 lines
794 B
C++
#include "SPC_DSP.h"
|
|
|
|
class DSP : public Processor {
|
|
public:
|
|
enum : bool { Threaded = false };
|
|
enum : bool { SupportsChannelEnable = true };
|
|
|
|
alwaysinline void step(unsigned clocks);
|
|
alwaysinline void synchronize_smp();
|
|
|
|
bool mute();
|
|
uint8 read(uint8 addr);
|
|
void write(uint8 addr, uint8 data);
|
|
void load(uint8 const regs [SPC_DSP::register_count]);
|
|
|
|
void enter();
|
|
void power();
|
|
void reset();
|
|
|
|
void channel_enable(unsigned channel, bool enable);
|
|
bool is_channel_enabled(unsigned channel);
|
|
|
|
void serialize(serializer&);
|
|
DSP();
|
|
|
|
private:
|
|
void update_channels();
|
|
|
|
SPC_DSP spc_dsp;
|
|
int16 samplebuffer[8192];
|
|
bool channel_enabled[8];
|
|
};
|
|
|
|
#if defined(DEBUGGER)
|
|
#include "../../dsp/debugger/debugger.hpp"
|
|
extern DSPDebugger dsp;
|
|
#else
|
|
extern DSP dsp;
|
|
#endif
|