NDS: acquireDirect()

it took a while

master volume may not work
This commit is contained in:
tildearrow 2025-03-08 18:42:19 -05:00
parent ce59a015e9
commit c9695caf35
4 changed files with 204 additions and 56 deletions

View file

@ -49,6 +49,7 @@ class DivPlatformNDS: public DivDispatch, public nds_sound_intf {
bool isMuted[16];
bool isDSi;
int globalVolume;
int lastOut[2];
unsigned int sampleOff[256];
bool sampleLoaded[256];
@ -65,7 +66,7 @@ class DivPlatformNDS: public DivDispatch, public nds_sound_intf {
virtual u8 read_byte(u32 addr) override;
virtual void write_byte(u32 addr, u8 data) override;
virtual void acquire(short** buf, size_t len) override;
virtual void acquireDirect(blip_buffer_t** bb, size_t len) override;
virtual int dispatch(DivCommand c) override;
virtual void* getChanState(int chan) override;
virtual DivMacroInt* getChanMacroInt(int ch) override;
@ -79,6 +80,7 @@ class DivPlatformNDS: public DivDispatch, public nds_sound_intf {
virtual void muteChannel(int ch, bool mute) override;
virtual float getPostAmp() override;
virtual int getOutputCount() override;
virtual bool hasAcquireDirect() override;
virtual void notifyInsChange(int ins) override;
virtual void notifyWaveChange(int wave) override;
virtual void notifyInsDeletion(void* ins) override;