aboutsummaryrefslogtreecommitdiff
path: root/src/adlmidi_private.hpp
diff options
context:
space:
mode:
authorChristopher Snowhill <kode54@gmail.com>2018-07-29 20:52:26 -0700
committerChristopher Snowhill <kode54@gmail.com>2018-07-29 20:52:26 -0700
commit0f69d504792776967b61f8987ad458c48b4a322f (patch)
tree0884f6008b6433b3f25d454884d8c9f6b9f7fac1 /src/adlmidi_private.hpp
parentb5a38c540d5a2b5b6750a49eb25ca3c7388b099c (diff)
downloadlibADLMIDI-0f69d504792776967b61f8987ad458c48b4a322f.tar.gz
libADLMIDI-0f69d504792776967b61f8987ad458c48b4a322f.tar.bz2
libADLMIDI-0f69d504792776967b61f8987ad458c48b4a322f.zip
Implemented optional soft panning support for the included chip emulators, disabled by default.
Diffstat (limited to 'src/adlmidi_private.hpp')
-rw-r--r--src/adlmidi_private.hpp10
1 files changed, 10 insertions, 0 deletions
diff --git a/src/adlmidi_private.hpp b/src/adlmidi_private.hpp
index 4fb3e7f..b9228dc 100644
--- a/src/adlmidi_private.hpp
+++ b/src/adlmidi_private.hpp
@@ -277,6 +277,8 @@ public:
bool m_scaleModulators;
//! Run emulator at PCM rate if that possible. Reduces sounding accuracy, but decreases CPU usage on lower rates.
bool m_runAtPcmRate;
+ //! Enable soft panning
+ bool m_softPanning;
//! Just a padding. Reserved.
char _padding2[3];
@@ -381,6 +383,14 @@ public:
void writeRegI(size_t chip, uint32_t address, uint32_t value);
/**
+ * @brief Write to soft panning control of OPL3 chip emulator
+ * @param chip Index of emulated chip.
+ * @param address Register of channel to write
+ * @param value Value to write
+ */
+ void writePan(size_t chip, uint32_t address, uint32_t value);
+
+ /**
* @brief Off the note in specified chip channel
* @param c Channel of chip (Emulated chip choosing by next formula: [c = ch + (chipId * 23)])
*/