Version 3.15, 2022-09-17
- Fix for occasional failure to convert yellow page from UTF-8 to Latin1.
- Ignore yellow page entries with \ element not starting with 'http://' to avoid https or empty element (why are such entries allowed?).
Version 3.14, 2021-09-11
- CDs, real fix for 'Could not handle CD drive x' errors at startup.
- Choices, Iconbar choice 'File queue' was opening 'CD database'.
- Player, 'Stopping after 3 consecutive tracks fails to start' was not working for tracks opening in state 'not ready' and falling in error after a delay (radios, some mp3s).
- Misc, fix 'List index out of bounds' error at startup.
- Misc, fix for lack of menus and unability to quit after sending clipboard release message.
Version 3.13, 2020-04-02
- DCDUtils, SWI FillFFT, reduce static tables requirements but double the maximal size of the FFT so Hamming table size doubles too. Module size is about the same but memory usage is doubled.
- DCDUtils, use timers to estimate section of soud buffer to use for FFT instead of always performing FFT with the last samples in the buffer. Probably not super precise since the content of the DMA buffers are collected via callbacks but enough to smooth out blocky sonograms when dropping speed limits.
- List, loading a truncated xiph yellow pages list crashed because the incomplete track was deleted but not removed from the list.
- List, improve yellow pages server name extraction, add genre into track 'Info' field.
- Player, changed behaviour when 'Stop playing on error' is not set. When a track could not be played DigitalCD already tried 3 consecutives tracks before stopping (a few failures is ok, more and it is probable that the whole playlist cannot be played). The problem is that for radios, the track 'starts' safely while the connection is attempted and fails in the background. DigitalCD then just reported the error and stopped playing, now instead it will attempt to play the next track.
- CDs, delayed CD player list initialisation till the CD player panel is shown to avoid 'Could not handle CD drive x' errors when starting DigitalCD with a CDDrive configured but no present.
- DCDUtils, SWI FillFFT, walked incorrectly through Hamming window when not using the largest FFT size.
- DCDUtils, SWI FillFFT, when rescaling by volume use some extra margin to avoid overflows.
- DCDUtils, SWI GetBufferRate, R0 was corrupted on exit.
- DCDUtils, altered slightly DMA buffer change detection. Special case for silence which used to clear buffers in no time is now slowed down to once per cs.
Version 3.12, 2019-08-26
- Player, restore old behaviour of playing next track when deleting current track.
- Player, deleting the current track from a full screen plug-in (Delete key) crashes DigitalCD.
- List, one should not be able to insert tracks in a search results list.
- List, the presence of background jobs (like 'Validate') were stopping the distribution of Null events and preventing toolbars to be updated.
- List, add the pane flag to generated toolbars to prevent the list from being constantly brought to top while dragging the toolbar.
- List, copied/exported tracks were missing the original TimPlayer compatibility flags.
- List, play from the list caused another track than the selected one to be played if DigitalCD neede to change the 'program mode' to play it.
- List, creation of new playlist, new dirlist and new failed since a few versions.
- CDs, forgot to pass on the configured DiskSample options when playing a CD (CD_ReadAudio mode).
- CDs, player was reporting 'No CD present in drive' when it should report 'Not an audio CD' when a non-audio CD is present in the drive.
- DCDLib, window covering screen had auto redraw flag set which could lead to a brief flash of a white background before the plug-in redraws the screen.
Version 3.11, 2018-08-16
- List, fix ordering of flat lists due to uninitialized variable.
- Fix zero pain during caused by search with scope 'All playlists'.
- DCDLib, addition of PROCApp_SwapBanksNoVSync and PROCApp_WaitVSync to allow for non-visual processing between banks swap and VSync.
- CD, was not setting DiskSample options (like buffer sizes) when starting to play in CD_ReadAudio mode.
Version 3.10, 2017-06-06
- Errors, when full screen plug-in is active, send error as message to be reported by the plug-in instead of using the usual error box.
- DCDLib, update FNApp_String(ptr%,len%) to cope with NULL ptr%. Fixes zero pains in some plug-ins.
- Fix some zero pains.
Version 3.09, 2016-06-09
- CDs, You can now delete CD descriptions from the CD Database.
- Tracks, Metadata extraction was not working properly in 3.08 due to an incorrectly fixed ZeroPain report.
- CDs, Modifying the display options of a search results window caused the window's content to vanish.
Version 3.08b, 2016-05-29
- Updated DCDLib, the plugins BASIC library to perform the tripple buffering required to avoid flickering on Pi machines.
Version 3.08, 2016-05-08
- Allow modification/saving of M3U/PLS files.
- Validate now works in the background.
- Added Alt+Click renaming of items.
- Increased loading speed of large lists like the xiph yellow pages.
- Modified search for unplayed tracks to ignore tracks set never to play.
- Rewrote CD Database in playlist form.
- Enabled and set default play mode to CD_ReadAudio as all new machines support it.
- Set default driver to SoundDMA for sampler target CD as CD_ReadAudio is routed through SoundDMA.
- Icon bar
- Load M3U/PLS list dropped on the icon bar.
- F1 in a window will open the corresponding StrongHelp file section.
- When user attempts to quit but cancels because of unsaved documents, open those unsaved documents.
- Flat and hierarchical view modes now lists files in exactly the same order.
- State of buttons and menus was not updated in some circumstances.
- Dropping a list on File Queue should add only file tracks.
- Dropping a list on search results window should not add tracks to it.
- Current position in list could sometimes been lost when switching between Queue and Main playlist.
- Fixes some incorrect behaviour with moving to next/previous track like in short lists with unplayable tracks.
- Fixes some refresh problem and speedup switching of control panel to a new player.
- Fixes null pointer access while updating metadata information.
- Control panels other than primaty one where not removed anymore when 'single panel mode' option is activated.
- Name filter crashed when you attempted to filter by a given letter after you just deleted the first name starting with that letter from the collection.
- Do not try to restore caret to save as box when aborting drag with Esc (Wimp closes the box before we receive the Esc).
Version 3.07, 2014-08-18
- Mixing can now use the nearest 1x or 2x the track sample rate as replay frequency instead of the configured frequency.
- Tracks, Files
- Unspecified track and section numbers are now shown as empty instead of '0' to facilitate editing.
- Most TimPlayer options were moved from global Choices settings to individual track settings. TimPlayer compatibility flags, including the new Ultimate Soudntracker one, are now listed there too.
- Extend metadata extraction from filename with '#variable' a '.' limited version of '%variable'.
- Sliders now make now use of wheel mouse if OS support is present.
- Updated DCDLib to use wheel mouse if OS support is present.
- Now provides to DCDUtils the playing module's name and handle so that plug-ins are sure to extract module specific info from the correct source.
- Players, Added option to pre-load the next track to play in order to minimise gaps.
- Updated with new frequency options.
- 'Ignore system volume' option was moved here.
- Balance and Stereo separation are now in new subsection 'Stereo'.
- CDFS, Reorganised playing mode selection as a popup menu.
- DiskSample, Increased input buffer size limit to match the latest version of the module.
- Choices, When reading saved settings, sample rates were clipped to the reasonable range available from the RPC, i.e [5000, 50000]. Changed to [5000, 200000] to cope with modern hardware.
Version 3.06, 2012-04-16:
- Show "<title> [<section>]" as track title if the track specifies a section. This allows to distinguish between tracks representing different sections of a same file.
- Tweaked scroll bar handling to take into account the column headers.
- Tweaked selection with the mouse to behave better under heavy load.
Version 3.05, 2012-03-05:
- Allow full-screen plug-ins using this library to control the player with the mouse (Play/Pause, Rewind/Forward, Prev/Next section/track, Relative/Main volume Up/Down).
Actions are mapped on the SELECT/ADJUST buttons, you just rotate on the available pairs of actions by clicking MENU.
- Remote control of actions handled by a specific player was not working.
Version 3.04, 2011-12-30:
- List, fix occasional crash when double-clicking.
- CDs, fix crash while exiting DigitalCD when CD is still playing.
Version 3.03, 2011-09-27:
- Shuffling options are now only shows by pressing MENU on the shuffle icon, while clicking SELECT will just toggle on/off shuffle.
- Double-clicks failed to work when the item was not selected beforehand. This is due to using Wimp_DragBox to start the (multiple) selection on the first click: the system doesn't see the need to report the double-click afterward.
- Ensure restored size of directory lists is not reset to default size while its content is still loading.
Version 3.02, 2011-08-22:
- Include album's date in sorting options.
- If a group is selected, all elements within the group are considered as part of the selection.
- Added turning shuffle on/off without having to change the shuffling options.
- Include album's date in sorting options.
- Tracks, Files:
- New property to play all sections of the file instead of a single section.
- New property to enter the album's release date (yyyy, yyyy-mm, yyyy-mm-dd).
- Extended metadata extraction from filename to extract album's date.
- Position of directory list windows were not saved.
- Playlists could not be moved within main playlist (non-hierarchical, unsorted mode).
- Shuffle didn't work with File Queue.
- Don't reset "next track" position to 0 anymore when finishing to play the list. After adding extra files to the list, play will then restart directly from the new tracks when no shuffling is active.
- This module sets the DMA size to 400, so it's best not to mess with it or the sound gets weird.
Version 3.01, 2010-01-23:
- Added 'Ignore system volume' in choices, section Players.
- Crash with Array out of bounds after sequence: drag multiple tracks from a secondary playlist to the file queue, set cursor in File queue to last track, unload secondary list (file queue is emptied), double-click on a file with 'Add to queue & Play' option active.
- Playing not starting after sequence: empty file queue, drag multiple tracks from a secondary playlist to the file queue, click on play button.
Version 3.00, 2009-12-03:
- Use separate Properties windows for each kind of track.
- Properties for hierarchical info: Collective -> Artist ->
Box -> Album -> Title.
- New compilation (multi-author) album flag: Box -> Album ->
Collective -> Artist -> Title.
- New track number field.
- Properties for hierarchical info: Name -> Rate ->
Broadcaster -> MimeType.
- Directory lists/Secondary lists
- New user configurable system to extract metadata from the file's
name and path.
- New 'File queue' list, a temporary playlist where to drag
files from the Filer or from other playlists, emptied on
exit of DigitalCD.
- New 'Yellow pages' lists to download lists of Internet Radios from
- A lot of grouping/sorting options.
- New 'Hierarchical' tree view mode.
- New 'Flat' mode with resizable columns.
- Some actions now take place in the background such as the scanning
of directories or the download of yellow pages.
- New 'Create Internet Radio' dialog to define an Internet Radio
without the help of .m3u files.
- Search window:
- New 'All playlists' scope to search in all loaded playlists.
- New 'List' action to list the results in a 'Search results'
- Simplified text searching (filename or metadatas).
- Track shortcut. Used in search results and file queue lists to
refer to a track in another playlist. Changes to the shortcut
(edition, metadata provided by player), will in actually change the
- The properties of multiple tracks can now be edited in one go.
- New single panel mode.
- The Previous/Next buttons now start playing the previous/next track
even when the player is stopped.
- Option to use 'Remove Track' command as simple marking of track as
- Internet radios are now handled by a separate 'Internet Radios'
- 'Music file' player
- Old 'Program' versus 'Single track' system of 'Music file'
player replaced by 'Program' versus 'File Queue' system.
- Old 'Program off & play' file loading options replaced by 'Add
to queue' and 'Add to queue & play' options.
- Removed 'Reenable program on Stop' option.
- A lot of grouping/sorting options.
- New option to choose DMA sound buffer size setting for
compatibility with other applications.
- New functions to change screen modes, manage screen banks
(RISC OS 6 compliant) and manage messages/title changes sent
by the player.
- Documentation for the library added to !DigitalCD.DCDGuide manual.
- Documentation for DigitalCD_Misc message added to
- New messages to ask full-screen plug-ins to display a message on
the behalf of DigitalCD or change the song's title (well more a
rotation of title, album, artist, ...).
- Didn't catch DiskSample's clearing of metadata.
- Retrieve more metadata (track number, ...) from some drivers.
- Added smpext loader to pass the filename's extension to
DiskSample in order to identify the type of a raw stream.
- Convert spaces to hardspaces in all filename icons.
- Do not validate URLs as files.
- Properties window did not allow filename to be changed to
- Ensure PlayIt Config bit 2 is always off because it makes a
mess otherwise and take system volume into account.
- Take into account (when possible) changes in system volume and
ensure that plug-in volume scaling is correct.
Version 2.56, 2003-09-28:
- Added configuration of a sound reserve to accumulate before starting the replay. This is used to prevent sound cuts when disruptions of the input flow occur.
- Internal changes made for timing caused a crash on CDs containing data tracks.
Version 2.55, 2003-09-24:
- Support Internet radios through DiskSample Http streaming.
- Rewrite display of metadata and timing.
- Added saving of urls, loading of .m3u and .pls playlists.
- Fixed lists refresh when changing "Use file name as track title" option.
- Fixed Midi rewind/forward.
- Stop the currently played file before trying to remove it from the list or before deleting the file.
Version 2.54, 2003-03-21:
This is a new 32-bit compatible version with the exception of some modules from third parties. This means that Digital Symphonies, Matrix and Midi files are not yet playable on 32-bit systems.
- Timing now reflects the target position while dragging the position button.
- Added 2 new time modes: duration and total duration.
- Timing info is now refreshed in case of track duration updates.
- Added Play button. Play while a sublist is selected will play first allowed reference in sublist.
- Support of dirlists, directory based list which will be scanned when loaded to form a new temporary playlist.
- Lists can now have a base dir used as base for the names of files in the list. The list takes up less memory and makes it easier to manage when moving files around your disc.
- Load/Unload lists from memory at will.
- Filename field of unloaded lists can be edited in property window, a file may be dropped on the field.
- Validate now simply marks the problematic references with a question mark.
- New official filetype allocations for Ogg Vorbis, ImpulseTracker, FastTracker2, ScreamTracker3 and other PC trackers in default Setup file.
- Filename field can be edited in property window, file can be dropped on the field.
- Players: Added Reshuffle option to reshuffle once all tracks have been played so that tracks of CDs or short playlists are not always played in the same order.
- Drivers: new AMPlayer section for the anti-shock buffer size.
- Several desktop plug-ins can be activated at once.
- Full size docking info was saved for mini-bar.
- Search Window: fixed inversion of Playable/Not playable scope.
- Fixed several errors in RAM transfer of lists (used by Dragging, copy/paste, etc).
- Don't autostart plug-ins for closed control panels.
- PlayIt Config bit 2 when set does the inverse of what I expected in term of volume rescaling.
- Incorrect reserved string size could freeze the machine.
Version 2.53, 2001-11-26:
- Included latest version of several modules.
- Search Window: added a few search scopes, control panel list of files to play was never updated for some actions.
- Fixed launch of DigitalCD by double-click on a file.
Version 2.52, 2001-07-18:
- Fixed loading of multiple sublists from the same directory
- AMPlayer, worked around the SharedSound bug, replay speed is back to normal.
Version 2.51, 2001-07-15:
- Fixed 'Main' playlist bug on saving of non previously existing main playlist.
- New version of DiskSample with fix for replay on 8-bit hardware
Version 2.50, 2001-07-07:
- The concept of multiple playlist is retained but the 'Playlists' (note the plural)
window is ditched in favor of a full featured 'Main Playlist' autosaved
in Choices:DigitalCD. In consequence:
- DigitalCD can reload all the playlists (sublists) from the previous session.
- Files can be dropped on the Main Playlist so that those who prefer
the WinAmp way can work with a single playlist autosaved on exit.
- The list of files to play from the control panel is composed by default
from every file in main playlist and sublists but you will be able to define
which of the files or sublists should be played today.
- The result of double-clicking on music files or dragging files to DigitalCD's
iconbar icon or control panel is entirely configurable (Play, add to the main playlist,
add to the main playlist and play).
- Each CD drive can now be configured separatedly with an additional
playing mode compatible with more drives (SWI CD_PlayTrack).
- Playing can now autostart when a CD is inserted in the drive.
- More of the DigitalCD windows can be opened by various clicks
on the iconbar icon.
- The TimPlayer module v1.00 is able to detect the subsongs in tracker
modules like the ones used by the game 'Lemmings' so DigitalCD
will offer the ability to specify which subsong to play.
- Bug fixes for AMPlayer module, work around for problems like
the RISC OS 4 pointer bug and the RapIDE CD driver.