Releases: mywave82/opencubicplayer
Releases · mywave82/opencubicplayer
v0.2.109
This is a bugfix release
- Remove a gcc warning when compiling boot/psetting.c
- validate_xdg_dir_absolute() allocates a byte short when building the string buffer in one of the code-paths.
- mingw builds expects adplugdb to be located within OCP data directory, not in the same directory as OCP.EXE (initial mingw builds did not have a data directory)
v0.2.108
This is a bugfix release
- When detecting C++ version, ] and ) was out of order in configure.ac. This only became problematic in autoconf 2.72.
- Playback via Game-Music-Emulator, the global loop module setting was not honored.
- Mono FLAC files would crash, buffer retrieval expected (atleast) two channels to be present.
- EOF detection got false positives in file-cache, FLAC files could fail to play
- Labels should not appear in front of variables, clang can be strict on this.
v0.2.107
- libsidplayfp:
- Make it possible to tune parameters in real-time.
- Update libsidplayfp to the latest master.
- Plugin had an extra dirdbUnref() that should not be there.
- adplug:
- Update adplug to latest master.
- Scrolling the channel viewer could crash the player due to read of out-of-bound memory.
- The wrapper OPL class OCP uses had some minor problems:
- In OPL3 mode, if a channel was in 4-OP mode, the second half would always muted.
- In OPL3 mode, if a channel was in 4-OP mode, you could mute the second half of the channel (in addition to the problem mentioned above).
- When a channel is going in/out of 4-OP mode, mute was not consistent.
- Refactor and use file-caching.
- Add compression hint to the fie API, solid files should be scanned directly.
- Differentiate unread (files not scanned) and files were the file content turned out to be unknown. Speeds up the file browser, especially if there are archives present.
- mingw:
- Latest version of packages OCP depends on.
- Enable optimization (needed for static inline functions to work as expected).
- Location of ocp.ini did not match the actual install.
- ISO/TOC - Audio CDs could be unable to play after being looked up in the online discid-database.
- Update libancient filter to match upto libancient master (needs matching support from host operating system for them to work).
- Add support for *.RPG archive file from "Official Hamster Republic Role Playing Game Construction Engine", and *.BAM that in game data files as stored as *.1 *.2 *.3 etc.
- Potential hang-bug in UDF (CDROM DVD image files) parser.
v0.2.106
- [IT] Increase the number of max-samples to match openMPT (it can export files with more samples that original tracker and Schism supports)
- [devpdisk] Reported time during playback was random
- [adplug] Add support for SudoMakers RetroWave OPL3 Express, please configure it in setup:/adplugconfig.dev
- [adplug] Make channel tracker aware of AM/FM modes so it more correctly can display visualization
- [adplug] Left/Right OPL3 logic was incorrect in the register-tracker
- [mingw] Initial support (BETA) for mingw, enables Windows support
- [libancient] Add more fingerprints for compression formats that v2.1.0 can decompress
- [Linux CDROM] Fix deadlock
- [configure] cleanup --bindir --libdir and --datadir, and new syntax to override post ocp suffixes: ./configure LIBDIROCP=/usr/lib/ocp DATADIROCP=/usr/data/ocp
- [configure] removed --with-dir-suffix
- [CDROM *.CUE] REM didn't work as expected
- [CDROM *.CUE] files didn't work if containing INDEX 00 (pregap)
- [CDROM *.CUE] BINARY keyword should be little endian, but there are tools that produce big-endian files without marking them correctly. So we need to detect the endian used.
- [CDROM *.CUE] files didn't include pregaps in the track table
- [CDROM *.TOC] files didn't split the logic for pregap and offset into the raw file
- [musicbrainz] Increase the buffersize, some data retrivals failed
- [global MIME database] Add adplug fileformats
- [global MIME database] Add Game Music Emulator fileformats
- [SDL2] if entering fullscreen while in graphical effect mode, it could not be exited without visiting a textmode resolution.
- [SDL2] Use SDL_OpenAudioDevice(), else the expected audio format between SDL2 and OCP might not be what we expect causing random noise to be played.
- [X11] non-Shm usage could fail to successfully create butter on window resize
- [X11] If background picture is loaded in GUI modes, it was not repainted on window-resize
- [unifont] Allow for unifont ttf/otf files to be placed in the datadir by using ./configure --with-unifont-relative (you still need to copy the files in)
- [*.VGZ] Silently convert them to *.VGM
- [GME] Add support for Game Music Emulator library (libgme) for playback of various retro console systems
v0.2.105
v0.2.104
- Update libsidplayfp
- Update adplug
- Latest version of the upstream version
- Adds support for *.PIS and *.MTR
- Reimplemented the OPL2/3 status viewer
- Buffer for compositing tracker data for music that supports this, was not cleared between pattern loads. Causing visual data to be accumulated.
- OCP now supports multiple of the emulator implementations
- Default emulator to use has been changed
- Configuration dialog added into setup:
- Latest version of the upstream version
- Elapsed time is now based on played samples and not counting seconds passed
- Screen resizing should be more consistent on remembering settings
- Add support for 3-bytes-per-pixel in SDL 1.x
- Files that are detected as valid for libancient but fails decompression, OCP failed to reset the filehandler read-position back to 0.
- Track viewer had some excessive CPU usage
- Analyzer viewer has the scale gain range increased, and the current gain is visible in the header.
- Quick help documentation has been updated, with special focus on the keyboard shortcuts.
v0.2.103
- If an autoload plugin fails to load, do not hard fail if all the core plugins are statically linked in
- version 0.2.91 update missed setting the color for XM files in ocp.ini
- Fix logic for setting screenmode vs ocp.ini. This is now the scheme and default values that SDL, SDL2 and X11 drivers use:
[screen]
screentype=5 ; 0=80x25, 1=80x30, 2=80x50, 3=80x60, 4=132x25, 5=132x30, 6=132x50, 7=132x60, 8=custom
fontsize=1 ; if screentype=8: 0=8x8, 1=8x16
winwidth=1024 ; if screentype=8
winheight=768 ; if screentype=8
- insttype= setting in ocp.ini was no longer working and it was not maintained between songs.
- Remove more external symbols from the devp*.so and devw*.so files, and API updates
- setup:/devp/ and setup:/devw/ directories has been replaced with dialogs
- Detect that C++17 is available, needed due to libancient
- Failed detection of
update-mime-database
did not halt ./configure causing errors later during make instead - Update libsidplayfp to the latest version
v0.2.102
- IT files did not detect reverse jumps are song being looped
- IT playback plugin did not reset all state variables on load
- XDG Base Directory compliance
- Comply with both $XDG_CONFIG_HOME and $XDG_DATA_HOME
- Migrate $HOME/.ocp/
- Add support for files compressed on Amiga systems with the system built-in compression routines using the library known as 'ancient'
- Updates for building on Haiku
- If iconv CP437 fails to load, fall back to CP850 and then ASCII
- Some few calls to iconv() were not protected against "NULL"
- Add MIME for entries missing in the freedesktop MIME database
- Update desktop file with additional MIME types
- Call update_mime_database and update_desktop_database
- Starting ocp with files as arguments stopped no loger was working
- If a file fails to load, display error message in the fileselector
- Replace setup:/alsa/*.dev files with a single setup:/alsaconfig.dev dialog
- nprintf() didn't limit UTF-8 strings correctly
- Only accept .TAR files that contains the ustar magic
- If playback plugin are not operational, multiple corner-case issues has now been fixed
- When editing fixed UTF-8 text-fields, backspace / delete-key would not unreserve the buffer-space, artificailly shrinking the available text until a new edit was initialized
- Add the rReverb and iReverb plugins from the original DOS project, with some additional fixes
- Show both panning/balance and chorus/reverb at the same time if they both can be active and can fit on screen
v0.2.101
- Update m4 macro files, configure.ac and Rules.make.in to latest versions.
- Update adplug from upstream
- Update libsidplayfp from upstream
- Update hivelytracker from upstream
- Add support for textinfo v7.0 (documentation)
- Add karaoke support for timidity playback plugin
- Update .ym file detection to include compression header type 1
- Playback plugins no longer need external symbols from OCP
- SDL2 and X11: Delete key stopped working after support for international characters was added.
- MacOS build fixes
- Parallel build fixes
- VU right peek-meter was noisy
- S3M files that was flooded with global commands causes buffer-overflow
- Ctrl + C when ran in curses or linux vcsa console now does the same as pressing ESC. It only does force kill if OCP is frozen and it is pressed multiple times
v0.2.100
- Former attempt at supporting plugins to be built-in ("static") has been revived and is enabled by default. By now playback-plugins and audio/wavetable drivers must be external still.
- Unifont is transitioning from truetype to opentype and OCP is adapting the change. ./configure syntax has been changed to accomodate the changes:
- If specify by directory, the options available are
--with-unifontdir-ttf=/path
--with-unifontdir-otf=/path
- If specify by file (due to non-standard naming convensions and casing)
--with-unifont-ttf=/path
--with-unifont-csur-ttf=/path
--with-unifont-upper-ttf=/path
--with-unifont-otf=/path
--with-unifont-csur-otf=/path
--with-unifont-upper-otf=/path
- Many internal functions used by playback-plugins are now being forwarded from core to plugins by API-tables.
- Double-free in playopl (adplug playback) if file failed to load.
- Move all file-type detection and type registration into each playback plugin, and autoload all playback plugins.
- In fileselector file-type-editor, selecting a blank file type (redetect file-type), buffer overflowed and relied on that being blank.
- Avoid crashing when opening a midi file due to missing parameter
- 16bit WAV files were probably not able to play on big-endian systems
- FLAC: avoid divide by zero error at end of tracks
- Timidity/MIDI: isolate all library globals into a session and partially fixing channel muting.
- Internal API changes
- ALSA: Make it possible to custom select with text input both PCM output device and Mixer, and bring volume mixer back to life
- Information about selected channel disappeared from the screen when in scope, phase and note dots view if you visited the file browser.
- Add international keyboard support for SDL 1.x
- Add international keyboard support for X11.
- quickfind now supports international characters.
- cpiinst overshot memory when clearing unused space.
- Quicksearch .. and other overriden filenames in filebrowser where not working.
- Update libsidplayfp to lastest upstream master