1This is a brief overview of user-visible changes in AdPlug. 2 3Changes for version 2.3.3: 4-------------------------- 5- New RAD player replacing the old one 6- Bug fixes: (huge thanks to Alexander Miller for these) 7 - CVE-2019-14690 - buffer overflow in .bmf 8 - CVE-2019-14691 - buffer overflow in .dtm 9 - CVE-2019-14692 - buffer overflow in .mkj 10 - CVE-2019-14732 - buffer overflow in .a2m 11 - CVE-2019-14733 - buffer overflow in .rad 12 - CVE-2019-14734 - buffer overflow in .mtk 13 - CVE-2019-15151 - double free and OOB reads in .u6m 14 - OOB reads in .xad 15 - OOB reads in .rix 16 17Changes for version 2.3.2: 18-------------------------- 19- Bug fixes: 20 - FMOPL: Fix global variable pointer double-free (CVE-2018-17825) 21 - HERAD: Fix compilation on GCC 4.2.1 22 - ADL: Calling rewind() before update() causes access violation 23 - Move OPL reset/init code to rewind() for some players 24 25Changes for version 2.3.1: 26-------------------------- 27- Fixed unconditional inclusion of "sys/io.h" on Linux 28- Autotools improvement 29 - Non-recursive Automake, improved parallelizability 30 - Compatibility fixes for FreeBSD's pmake and OpenBSD's make 31 - Out-of-source building 32 33Changes for version 2.3: 34------------------------- 35- Bug fixes: 36 - CMF: Fix uninitialised variable use (thanks binarymaster) 37 - CMF: Handle invalid offsets without crashing 38 - ROL: Prevent access beyond end of vector 39 - MSC: Fix use of uninitialised variable 40 - HSC: Handle out of range patterns more gracefully 41 - MID: Fix for issue #2 - out of range array read 42 - LDS: Use the tempo stored inside the Loudness-File instead of simply returning 70Hz 43 - RIX: Fix several replay bugs (thanks to Palxex) 44 - RIX: Big-endian fix by Wei Mingzhi 45 - XAD: Tempo fix 46 - Various other out of bounds array fixes, timing fixes, etc. 47- New formats: 48 - BMF: Easy AdLib 1.0 49 - CMF: SoundFX Macs Opera 50 - GOT: God of Thunder 51 - HSQ/SQX/SDB/AGD/HA2: Herbulot AdLib System (HERAD) 52 - MUS/IMS/MDI: AdLib Visual Composer ROL derivatives 53 - SOP: sopepos' Note Player 54 - VGM: Video Game Music 55- Allow compilation on platforms that don't support real OPL hardware access 56- Add support for compiling on Appveyor and publishing a NuGet package 57- Add Visual Studio 2015 projects 58- Add support for Travis CI builds 59- Add new CRC16 and CRC32 tests 60- Addition of WoodyOPL from DOSBox SVN (thanks to NY00123) 61- Addition of NukedOPL (thanks to loki666 and nukeykt) 62- Move from SourceForge to GitHub 63- DRO player refactored (thanks to Laurence Myers and William Yates) 64- Add (mono) OPL3 support to the surround/harmonic-effect OPL 65- Fix occasional random noise in right channel when using surround OPL and Satoh synth 66- Add display for ROL comment and instrument names 67- Improve support for different Westwood ADL format versions 68- Improve CMF transpose support (per-channel now) 69- Autotools build environment updated 70 71Changes for version 2.2.1: 72-------------------------- 73- Bug fixes: 74 - CMF: Fix crash on v1.0 files 75 - DRO: Correct playback of early v0.1 files 76 77Changes for version 2.2: 78------------------------ 79- New format support: 80 - JBM: JBM Adlib Music Format 81 - CMF: New player (more accurate) for Creative Music Format 82 - DRO: DOSBox Raw OPL v2.0 support 83- Fixed current subsong rewind in D00 player. 84- Added test case for ADL file format. 85- Fixed replay bug in DRO player (thanks to Adam Nielsen). 86- New surround/harmonic synth effect (sounds really nice!) 87 88Changes for version 2.1: 89------------------------ 90- New format support: 91 - ADL: Westwood ADL File Format 92- Added OPL3 support: 93 - A2M: AdLib Tracker 2 versions 5-8 94- All players are endian-clean now. 95- Lots of security fixes (thanks to Luigi Auriemma). 96- Fixed volume handling in AMD player. 97- Fixed a buffer overflow in ROL player (thanks to HIGUCHI Daisuke). 98- Fixed vibrato & volume slides in D00 player (thanks to Dennis 99 Lindroos). 100- Removed superfluous exit() call in RIX player (thanks to Martin 101 Michlmayr). 102- Enhanced generic Protracker player features: 103 - Supports up to 32 channels 104 - OPL3 output support 105 - New behavior flags and commands 106 107Changes for version 2.0: 108------------------------ 109- New format support: 110 - MSC: AdLib MSCplay 111 - RIX: Softstar RIX OPL Music Format 112- Added OPL3 support: 113 - RAW: RdosPlay RAW 114- Dual OPL2 and OPL3 support (OPL3 only in non-free version). 115- This version is not binary-compatible with older versions! 116 All linked applications need to be recompiled. 117- License change: Ken Silverman permitted to relicense his 118 emulator under the LGPL. It is included in the free distribution 119 now. 120- Changes to IMF player: 121 - Supporting Adam Nielsen's tag format now. 122 - Files ending in .IMF now have a default timer refresh rate of 123 560Hz. All other files have a rate of 700Hz. Please rename your 124 files accordingly or use the AdPlug database. 125- CMF player supports rhythm mode now. 126- S3M player handles repeating commands correctly now. 127- MS Visual C++ and OpenWatcom build systems not actively supported 128 anymore. They are still available in the contrib directory though. 129 130Changes for version 1.5: 131------------------------ 132- New format support: 133 - XSM: eXtra Simple Music 134 - DRO: DOSBox Raw OPL 135 - LDS: LOUDNESS Sound System 136- Added support for .adlib files to IMF player. 137- Reverted fmopl OPL2 emulator to old LGPL'd version, so 138 AdPlug is now completely free (LGPL) again. Please read the 139 README file for details. 140- Added Ken Silverman's YM3812 emulator again. The portability 141 issues have been fixed. 142- Added a test-suite. 143 144Changes for version 1.4: 145------------------------ 146- Documentation changed into Texinfo format. 147- New, modularized file loading framework. 148- Now using 'libbinio' for platform-independant binary I/O. 149- Added database framework for storing music file information. 150- Uses newest fmopl OPL2 emulator version 0.60 from MAME 0.66. 151 152Changes for version 1.3: 153------------------------ 154- Completely new build system for DOS and Windows. 155- Centralized debug management. 156- Added a whole bunch of new developer documentation. 157- Developer documentation is now using troff formatting language. 158- Much more flexible Protracker player. 159- New or corrected IMF timer rates for the following games: 160 - Duke Nukem 2 161- New format support: 162 - SNG: Adlib Tracker 1.0 163 - CFF: BoomTracker 4.0 164 - DTM: Defy Adlib Tracker 165 - DMO: Twin TrackPlayer 166 167Changes for version 1.2: 168------------------------ 169- Added a whole bunch of new players: 170 - SAT, ROL, SNG, XAD, XMS, MAD 171- SA2 player now handles version 7 files. 172- GCC 3.x compatibility. 173- Compiles on FreeBSD (and maybe many more flavors). 174- Now using GNU autotools for UNIX builds. 175- New OPL disk writer that creates RdosPlay RAW files. 176- Reordered source directory structure (removed players directory). 177 178Changes for version 1.1: 179------------------------ 180- Added MKJ, DFM and BAM players. 181- Removed Ken Silverman's YM3812 emulator due to portability issues. 182- Fixed memory leak in SNG player. 183- Made AdPlug a real library. 184- Added lots of documentation. 185