aboutsummaryrefslogtreecommitdiff
path: root/src/adlmidi_opl3.cpp
AgeCommit message (Collapse)Author
2018-06-25Using bigger integers for math in some placesVitaly Novichkov
2018-06-24Fix MSVC warningsVitaly Novichkov
2018-06-24Also small refactoringVitaly Novichkov
2018-06-24OPL3: Rename `m_pit` into `m_keyBlockFNumCache`Vitaly Novichkov
2018-06-24OPL3: Rename "touchReal" into "touchNote"Vitaly Novichkov
2018-06-24[Experimental] Big re-factoring of internals and clean-upVitaly Novichkov
- Renamed functions - Renamed variables - Documenting of most library internal stuff - Disabling of embedded banks no more conflicts with accidental linking of adldata.cpp
2018-06-20Fix tiny MSVC 2017 Win64 warningVitaly Novichkov
2018-06-19Apply same DJGPP build fixVitaly Novichkov
as here https://github.com/Wohlstand/libADLMIDI/commit/96f407668feb79b883e294d1ce3f7fc5bbf823ed [ :warning: A conflict with "poly-portamento2" is possible!!! :warning:. Need to me resolve it on receiving the push ]
2018-06-19Merge branch 'master' into update-chip-baseVitaly Novichkov
2018-06-19get chip base on level with OPNMIDIJP Cimalando
2018-06-16Small warning fix on DJGPPVitaly Novichkov
2018-06-02Remove duplicated "Poke" function callVitaly Novichkov
It's no sense to have uint32-argument poke function as all emulators are using uint16 and uint8 data only
2018-06-02Warning fixesVitaly Novichkov
2018-06-01bank storage inside dynamic mapJP Cimalando
2018-05-31Small polishing of volume model and CMF/RSXX tempoVitaly Novichkov
- Removed "Logarithmic volumes" flag as volume models concept successfuly serves this task. "Logarithmic volumes" flag is useless when we have volume models. - Fixed "too fast" tempo while playing CMF and EA-MUS (aka RSXX) files
2018-05-19Works and fixesVitaly Novichkov
- Fixed an incorrect calculation of 4-op channels and choosing 4-op channels for 2-op only banks - Resolved trouble with automatically chosen flags because of internal confusion
2018-05-16storing adldata and adlinsdata in unified structuresJP Cimalando
2018-04-11Merge branch 'master' of git@github.com:Wohlstand/libADLMIDI.gitVitaly Novichkov
2018-04-11Put Nuked OPL3 1.8 be default and fix the DJGPP buildVitaly Novichkov
2018-04-10fix memory management issuesJP Cimalando
2018-04-10[Experimental] Added support for emulation core switching in real time!Vitaly Novichkov
Due to clunky playback on updated Nuked OPL3 emulator v 1.8, I kept the Nuked OPL3 1.7.4 work in parallel and be a separated switchable emulator.
2018-01-21Copyright year update 2018Vitaly Novichkov
2017-12-16Added realtime API, Experimental, not testedVitaly Novichkov
- Added Real-time public API, needed a test! (try to implement dummy VLC plugin with it) - Added abillity to change deep flags without song restart or a chip reset
2017-11-26AgainWohlstand
2017-11-26Attempt to fix compatibility with C++98Wohlstand
2017-11-25Experimental: Added Brightness CC74 controller supportWohlstand
2017-11-16Another tiny fixWohlstand
2017-11-12libADLMIDI now is buildable under OpenWatcom except of some workaroundsWohlstand
- Need a different way to create a static library, otherwise it don't wanna be built. - Needed a different custom STL containers (std::vector and std::set) implementation that will work and will don't glitch with a crashes
2017-11-07Custom WOPL now supports multiple banksWohlstand
Feel free to create something like GS or XG bank :wink:
2017-11-07New API, classic ADLMIDI, and CMakeWohlstand
- Attempt to support hardware OPL and add build of classic ADLMIDI into CMake - Added new API functions - Added C++ Extras are needed for classic ADLMIDI player - Error string is no more static. Static variant is kept for initialization errors only.
2017-11-05Don't apply a too-short percussion note fix on IMF/CMF and RSXX musics.Wohlstand
2017-11-04Added default states for deep tremolo/vibrato and volume moduelsWohlstand
TODO: Implement support for tri-states per deep-tremolo, deep-vibrato flags
2017-11-04Fix pseudo-4op double-voice instrument playing with two equal voicesWohlstand
2017-11-04Added support for playing of Electronic Arts's MUS filesWohlstand
2017-10-25Clean-upWohlstand
- Move all private variables into MIDIplay class away from public ADL_MIDIPlayer structure - Comment out most of legacy code - Implement new-style ReadVarLenEx for error-checked var-len value reading process TODO: Stabilize this and implement missing fields and API calls (meta-data retreiving)
2017-10-20Small fix of GCC warning in adlmidi_op3.cpp built without embedded banksWohlstand
``` warning: extended initializer lists only available with -std=c++11 or -std=gnu++11 ```
2017-10-18Smooth finalizing, rewinding, and a bit more crash safetyWohlstand
* Smooth finalizing of song when loop is disabled (old ugly hack has been removed :wink:) * Added an ability to reset song position to begin (very helpful when song reaches the end) * Avoided possible crashes on attempt to fetch sample data without opening of MIDI file
2017-10-17Custom banks 4-operator voices playback fixWohlstand
2017-02-15Fixed logarithmic volumes flag and added support for XMI and MUS formatsWohlstand
MUS playing was totally invalid: the MUS data are completely different from regular MIDI data. Now is added a right converter which results a MIDI data which can be played correctly.
2017-01-16Split adlmidi.cpp now keeps API functions onlyWohlstand
other code has been moved into separated files