diff options
Diffstat (limited to 'src/chips')
| -rw-r--r-- | src/chips/dosbox/dbopl.h | 2 | ||||
| -rw-r--r-- | src/chips/dosbox_opl3.cpp | 5 | ||||
| -rw-r--r-- | src/chips/dosbox_opl3.h | 2 | 
3 files changed, 9 insertions, 0 deletions
| diff --git a/src/chips/dosbox/dbopl.h b/src/chips/dosbox/dbopl.h index 89d2019..b113734 100644 --- a/src/chips/dosbox/dbopl.h +++ b/src/chips/dosbox/dbopl.h @@ -286,5 +286,7 @@ struct Handler {  	void Init( Bitu rate );  }; +// Pre-Initialize internal tables +void InitTables(void);  }		//Namespace diff --git a/src/chips/dosbox_opl3.cpp b/src/chips/dosbox_opl3.cpp index cd119d1..a3d5351 100644 --- a/src/chips/dosbox_opl3.cpp +++ b/src/chips/dosbox_opl3.cpp @@ -37,6 +37,11 @@ DosBoxOPL3::~DosBoxOPL3()      delete chip_r;  } +void DosBoxOPL3::globalPreInit() +{ +    DBOPL::InitTables(); +} +  void DosBoxOPL3::setRate(uint32_t rate)  {      OPLChipBaseBufferedT::setRate(rate); diff --git a/src/chips/dosbox_opl3.h b/src/chips/dosbox_opl3.h index 622b8f0..ca3269c 100644 --- a/src/chips/dosbox_opl3.h +++ b/src/chips/dosbox_opl3.h @@ -30,6 +30,8 @@ public:      DosBoxOPL3();      ~DosBoxOPL3() override; +    static void globalPreInit(); +      bool canRunAtPcmRate() const override { return true; }      void setRate(uint32_t rate) override;      void reset() override; |