* Changelog was created 31. Aug 2004. About time perhaps

2004-08-31: filesel/modlist.c: updated fs12name to use rindex, and removed bug using strncpy instead of strcat

2004-08-31: boot/plinkman.c: updated lnkDoLoad do work if LD_DEBUG is not defined (STUPID BUG), and made dll-load only available via cfProgramDir. Needed if ran as setuid.

2004-08-31: boot/kickload.c: on crash, loose setuid permissions before we kick off gdb and other cool stuff

2004-08-31: filesel/*: removed all modlist->pathtothis stuff, and renamed dmPath to curdirpath since original ocp used that

2004-08-31: filesel/pfilesel.c: updated bugs in fsEditPath, when doing strlen() on uinitilized data, path-buffer-overrun and that enter is named _KEY_ENTER. Still behaves a bit not userfriendly until we make the filemask stuff

2004-08-31: config.h: removed FNAME_MAX and EXT_MAX, since they should be local to each plugin.

2004-09-01: Makefile: added DESTDIR

2004-09-01: ocp.spec: Created a redhat build spec file

2004-09-02: poutput-cursor (and some other): added support for setcur* and plDosShell

2004-09-06: boot/kickload.c Renamed ".ocp" to ".ocp-" VERSION

2004-09-06: Makefile: Remove backup files

2004-09-06: boot/plinkman,c: better error message if no dllextinfo is found and LD_DEBUG is on

2004-09-06: *: fix non-local characters in sources.

2004-09-06: dev/Makefile: don't run the tests

2004-09-06: devp/devposs.c: release /dev/dsp when it is not in use

2004-09-06: devs/devsoss.c: First release.. Welcome buddy

2004-09-06: dev/sampler.c dev/player.c devs/devsnone.c: Drivers allocate their own memory, since they might do funny things like mmap()

2004-09-06: dev/devisamp.c dev/deviplay.c dev/deviwave.c: Forgot to flag to modlist that we are a file, so no device info was shown in filelist

2004-09-07: stuff/timer.c: use gettimeofday() to calculate cpu-usage.

2004-09-07: VERSION 0.0.9

2004-09-08: __asm__ : updated all statemens to correctly identify registers, and dirty registers. But still miss to tag incomming registers as dirty.

2004-09-08: playit/itplay.c: copy 5 bytes instead of sizeof(c->delayed) in playtick(). We don't want to touch unmapped memory

2004-09-10: playmp2:* initial version.. based on playwav and playmp and links against libmad

2004-09-11: playogg: initial version.. based on playwav and playmp and links agains ogg vorbis

2004-09-11: configure configure.ac config.h.in Rules.make.in: autoconf has been introduced

2004-09-11: Makefile */Makefile */*/Makefile: autoconf

2004-09-11: help/cphelper.c: Supid misstake prevented cp.hlp to be loaded from cp.pak

2004-09-13: binfile/binfpak.c: added a missing fseek

2004-09-13: goodies/pack/pack.c: Removed a bogus fwrite

2004-09-11: VERSION 0.1.0

2004-09-13: configure.ac: Check that gcc is version 3 or higher

2004-09-14: boot/kickload.c: use execvp on "gdb" aswell and honor $PATH

2004-09-14: filesel/pfilesel.c filesel/adb.c: Make sure the *ReadHandle() does not survive a fork

2004-09-14: play*/*pplay.c*: Make sure 128 is the big-screen value, and not 132 in *GDrawStrings()

2004-09-16: playogg/oggplay.c: fixed problem regarding random-sound in the first buffer-run and a signess problem around the PANPROC function

2004-09-16: rules.make Makefile configure.ac */Makefile: Don't use ld, but gcc/g++ instead, else the shared libraries wont be linked to libc, stdlibc+ etc when compiler without optimization. Wierd that it worked with optimization though.

2004-09-16: cpiface/cpiphase.c: gcc 3.3.3 has an optimizebug when using -O2 or higher. NASTY

2004-09-17: VERSION 0.1.1

2004-09-17: playogg/oggplay.c: Fixed the problem in bitrate reporting

2004-09-17: filesel/fsmain.c: Fixed problem with dos-shell not setting the screen-mode

2004-09-18: filesel/fsmain.c filesel/pfilesel.c stuff/poutput-curses.c: tweakings and fixing regarding outputting and restoring of the screen

2004-09-18: cpiface/cpitrack.c: Fixed a bug when scrolling channels, when they are zoomed wider than the screen

2004-09-18: play*/*pplay.c*: GStrings(): clear the part of the buffer we want to be blank at the right

2004-09-18: filesel/pfilesel.c filesel/adb.c: dump out "Scanning archive" message to the console

2004-09-18: stuff/poutput-vcsa.c: Implemented conSave/conRestore

2004-09-18: stuff/poutput-fb.c: devfs/linux kernel 2.6 support in device filename

2004-09-20: stuff/poutput-dga.c: DGA in XFree86 atleast leaves a descriptor open to /dev/mem across exec-calls, so we manually flag it to be closed

2004-09-20: filesel/cdrom.c: Duplicate filedescriptor, so we can try to avoid the kernel re-reading the toc when we access the cdrom from the fileselector while in use

2004-09-20: config.h autoconfig.ac */*.c*: DLLVERSION tagging

2004-09-20: VERSION 0.1.2

2004-09-26: boot/kickload.c: Get out of graphicmode on signals.

2004-10-04: playmp2/mpplay.c: Close file on exec

2005-01-18: configure.ac */Makefile.in and some few other c files: merged in some BSD related defines

2005-01-18: boot/kickload.c: jump out of graphical-mode on crashes

2005-01-18: playmp2/mpplay.c: close file on exec

2005-01-18: stuff/framelock.*: first implementation

2005-01-18: VERSION 0.1.3

2005-02-08: cpiface/mcpedit.c Added \ as key to split speed/pitch (ctrl-f12 in dos/win32 version)

2005-01-24: filesel/cphlpfs.c framelock the right way

2005-01-24: filesel/* make filemask work

2005-02-07: * */*.c: -fPIC support

2005-04-09: filesel/pfilesel.c: dynamic width in fileinfobox

2005-04-09: VERSION 0.1.4

2005-04-23: renamed ocplinux.ini(.in) to ocp.ini(.in) to reflect we now support BSD

2005-04-23: changed all comments/messages from linux to unix.

2005-04-23: keyboard updates

2005-04-23: detect gcc-versions better in ./configure

2005-04-23: make cdrom-support optional since current cdrom driver is linux-only.

2005-04-23: Removed support for config having other names like cp.ini etc in the kickloader

2005-04-23: Removed lots of out-commented code and watcom-assembler inlines.

2005-04-23: Moved some duplicated mixer-code from play*/ to a common dev/mixclip.c file.

2005-04-23: devw/dwnone_asminc.c no longer requires assembler inlines.

2005-04-23: Made filesel/modlist.c a little more intelligent in cpu-usage.

2005-04-23: Updated all copyrights to 2005

2005-04-23: Made support for various PAT config layouts for playgmi/* and cleaned up the code, so midi works for unix users

2005-04-23: Fixed keyboard handling in stuff/poutput-dga.c to support ALT keys.

2005-04-23: Added more escape-codes into stuff/poutput-keyboard.c

2005-04-23: VERSION 0.1.5

2005-05-01: Cleaned up Makefile.in install routines to consider --prefix from configure

2005-05-01: medialib/* implemented

2005-05-01: --with-dir-suffix added to ./configure to make BSD users happy (drop version from path-names)

2005-05-01: Made X11 fullscreen driver, and implemented wurfel-mode again

2005-05-01: Let kickload close X11 on crash

2005-05-01: keyboard updates

2005-05-01: detect if ncurses can resize (old versions of ncurses can't) in configure

2005-05-01: detect if libc has memmem in configure

2005-05-01: ALT-C from player added

2005-05-01: background support (needed palette flushing)

2005-05-01: Crash-bug in devw/dwmixfa.c fixed

2005-05-01: Remove debuging in filesel/mdb.c that was VERY slow

2005-05-01: Make some graphic-routines in stuff/poutput*.c

2005-05-01: VERSION 0.1.6

2005-05-04: freedesk.org icon/menu-entry

2005-05-04: don't crash in kickload if player fails to init.

2005-05-04: Let .ocp in $HOME not use version. Tag ocp.ini instead with a variable

2005-05-04: Redid loading-order of modules in ocp.ini

2005-05-04: Keyboard updates

2005-05-04: --with-debug in configure makes ocp drop optimizations, drop usage of SIGALRM, and enables kickloading of gdb

2005-05-04: Fix wurfel and picture loading (make it more userfriendly)

2005-05-04: Update freedesktop.org files.

2005-05-04: Documentation converted into texinfo

2005-05-04: Let fileselector and player use same screen-resolution

2005-05-04: Make private variables static in help/cphelper.c medialib/medialib.c

2005-05-04: playgmi/*: freepats and timidity should somewhat work (note= and other parameters aren't interprated yet)

2005-05-04: VERSION 0.1.7

2005-05-09: Make cpi-anal sample enough data for it's output to avoid random-noise

2005-05-10: Makefile.in update to respect ./configure paths

2005-05-10: Removed lrmi

2005-05-10: Removed not-used code-paths in console-driver

2005-05-10: Updated freedesktop.org files

2005-05-10: Compile-issue with dev/mixasm.c and -fPIC solved

2005-05-10: Let console-drivers take-over keyboard interface completley when they are used

2005-05-10: X11 and DGA tries to respect rootwindow changes more.

2005-05-10: Handle curses/vcsa key-throttles better

2005-05-13: configure.ac set LIBDIR very wrong when using --libdir= or --with-dir-suffix=

2005-05-13: filesel/pfilesel.c parse ocp.ini before adding drives, init rootfs etc

2005-05-18: filesel/adb.c filesel/mdb.c medialib/medialib.c: More verbose init to tell user what ocp does

2005-05-28: filesel/pfilsel.c: RD_PUTDSUBS, recursive directory adding

2005-05-31: filesel/*: bufferchecks in arctar, and made adb take 127 chars names instead of 63

2005-05-31: filesel/pfilesel.c: Changing directory, places to marker at the directory you came from

2005-06-01: playmp2/*: Scan file-length, since VBR files are ... vbr in time

2005-06-01: playopl/* adplug support (beta)

2005-06-01: VERSION 0.1.8

2005-05-05: Don't crash loading modules after playopl has been used

2005-06-07: Don't crash when using curses and x11 is present

2005-06-08: Some gcc 4.x fixes and a adplug get-extention buffer-overflow

2005-06-08: filesel/cdrom.c: strncpy instead strncmp doesn't really work as expected

2005-06-09: VERSION 0.1.9

2005-07-11: Make sure all x11_init() are inside HAVE_X11 defines

2005-12-02: Aylet support

2005-12-02: Don't crash after ALT-C if in graphical mode

2005-12-02: X11 crash-fix

2005-12-02: Various crash-fixes

2005-12-02: Putting myself as author (of this fork)

2005-12-02: VERSION 0.1.10-rc1

2005-12-06: -ldl must be checked without altered CFLAGS, since some libs might link -ldl

2005-12-06: VERSION 0.1.10-rc2

2005-12-06: configure.ac: -ldl fix

2005-12-18: alsa initial support

2005-12-18: VERSION 0.1.10-rc3

2005-12-18: Make it possible to browse files by long filenames

2005-12-18: ALSA Buffer underruns are now handled

2005-12-18: VERSION 0.1.10-rc4

2005-12-29: cdrom updates

2005-12-31: Read .m3u and .pls files

2005-12-31: Write .pls files

2005-12-18: VERSION 0.1.10-rc5

2006-01-01: Better handling of paths in kickload

2006-04-28: Improve the ocp.ini parser, and some minor updates from cp.ini=>ocp.ini

2006-04-28: cfStoreConfig, can be called from ALT_C dialog

2006-04-28: dev/devi*.c: Handle failure of the first init call (check if *curdev is valid)

2006-04-28: devp/devpalsa.c: Don't crash if alsa is not available

2006-05-18: filesel/pfilesel.c: Add a filetype editor and color-editor

2006-05-20: playgmd/gmdptype.c: Send adlib s3mfiles to adplug, and length check all buffers

2006-06-20: filesel/fstypes.c: Handle headerless pls and m3u files

2006-07-23: *: Changed some paths in the configure/build system, so some files might have moved around

2006-08-02: Thanks to Luigi Auriemma for reporting some overflow issues. Fixed a bunch of overflows like this.

2006-08-02: Some trackers sets unused samples to strange values, and OCP sent them to adlib, when they shouldn't have been

2006-08-02: VERSION 0.1.10-rc6

2006-08-08: filesel/pfilesel.c: Removed a memory-leak

2006-08-08: playmp2/mpptype.c: Removed a buffer overrun (buffer was from heap)

2006-08-08: filesel/gendir.c: Use a tempbuffer, to avoid strcpy with same source and dest. Valgrind complained on those

2006-08-25: */type*: make opltype work in detection

2006-08-25: filesel/arczip.c zip file support (read-only and deflate only)

2006-08-25: cpiface/cpitrack: Remove some small bugs/graphical issues

2006-10-29: *: Detect broken adplug installations (it doesn't have correct path for libbinio)

2006-10-30: *: Try to use pkg-config for adplug (version 2.x and above has this)

2006-10-30: *: Try to use pkg-config for id3tag and mad

2006-10-30: *: Try to use pkg-config for ogg, vorbis and vorbisfile

2006-11-01: devw/devwmixf.c: -fstrict-aliasing fix for gcc 4.x

2006-11-01: VERSION 0.1.10-rc7

2006-11-04: devw/devwmix.c:
		compiler barrier for the "thread" lock
		a sign error in volume, causing ticking sounds

2006-11-07: configure.ac: Detect broken signed char to signed int conversions (gcc 4.1.1. with -O or higher bug)

2006-11-08: VERSION 0.1.10-rc8

2006-11-14: boot/kickload.c: fix stderr for reset

2006-11-14: Various assembler->C updates

2006-11-16: devwmix and devwmixq without assembler now works

2006-11.18: Renamed cp.pak to ocp.pak
            Renamed cp.hlp to ocp.hlp

2006-11-25: Lots up endian updates (and some other minor updates along the same run)

2006-11-26: New logic in playlist:
            If scramble/random, you see no difference.
            If non-scramle, the the cursor tells the next song to play
            If non-scramle and no-remove, the cursor in playlist will step down as you play the list

2006-11-28: Always display filter to off on streams

2006-11-28: Fix noise when starting to play streams

2006-11-28: Allow to use modes that aren't supported in fullscreen when we are in a window.

2006-11-28: Fix recursive add files

2006-11-28: VERSION 0.1.10_rc9

2006-11-29: Fixed a crash in .xm loader that was introduced in 0.1.10_rc9

2006-11-29: Fixed a buffer-error in boot/psetting.c when saving settings

2006-11-30: It compiles on darwin. Don't know if it works as excepted though

2006-12-01: boot/psetting.c: Storing ocp.ini didn't flush/close itself, corrupting the ini file for next time you ran ocp

2006-12-01: filesel/pfilesel.c: Small memoryleak when exiting ocp fixed

2006-12-01: playmp2/mpplay.c: Memory leak fixed

2006-12-01: Added -p flag, that causes ocp to quit when playlist reaches empty (or when hitting f for filebrowser).

2006-12-01: devp/devwmixf.c: Don't implement minimum buffersize. Fixes the problem with devpdisk.dev hanging

2006-12-01: stuff/poutput.c: Endian introduced a signed error, causing character >=0x80 causing white cells

2006-12-03: stuff/poutput-curses.c stuff/poutput-x11.c config.h.in: Fixed ALT_S and disabled keys that are not used/defined

2006-12-03: filesel/pfilesel.c: Fixed file: to use RegisterDrive, and not to manipulate dmDrives. It messed up when cleaning up

2006-12-03: stuff/poutput-x11.c: Added some caching in the text routines

2006-12-08: devp/devpalsa.c: Try to set the bufferspace to 0.5 secs

2006-12-08: Add big_endian fixes (don't use htons/htonl)

2006-12-12: VERSION 0.1.10

2006-12-12: boot/kickload.c: Don't try to dump regs on non-x86 arcs running linux

2006-12-13: cpiface/cpiface.c: Display height above 99 with 3 digits

2006-12-13: filesel/*: Started to implement the new directory database scheme

2006-12-14: filesel/*: Made the databases more endian aware, and alignment friendly

2006-12-14: playmp2/mpptype: fix dectection for systems that needs proper alignment

2006-12-14: We just confirmed that OCP runs on sparc (32bit)

2006-12-14: VERSION 0.1.11

2006-12-14: Updates for dirdb

2006-12-14: remove endian-mess in devposs

2006-12-14: Fix endian in x11 output

2006-12-14: Fixed xmlmod.c to handle endians better

2006-12-14: goodies/helpc/ocphhc.c: Make it endian-aware

2006-12-14: */*: Make volumebars endian aware

2006-12-14: help/*: endian updates

2006-12-14: VERSION 0.1.12

2006-12-18: playmp2/mpptype.c: detection of mp3files where broken

2006-12-18: */*: dirdb implementation and update, part 1

2006-12-18: configure.ac goodies/helpc/*: Make the help compiler work with efence/duma, and clean up memory when done

2006-12-18: playsid/sidplay.c: Use the proper delete[] statement

2006-12-18: poutput/x11-common.c: Close down xlib properly

2006-12-19: */*: dirdb implementation and update, part 2

2006-12-22: */*: Coreaudio initial code

2006-12-24: */*: Endian updates and CoreAudio update

2007-01-01: playay/ayplay.c: don't import libmad header files

2007-01-17: boot/kickload.c: just look for sigcontext on linux (should fix building for solaris)

2007-01-18: config.h playogg/*: Endian needs to be checked correctly

2007-01-18: Don't fetch functionpointers directory from libs, use structs instead (removes warnings from gcc / makes compiling for embedded systems more possible)

2007-01-21: dev/mixer.c: gcc/binutils optimizes away $0 offset in data-addreses. It caused mp3 and wav files to crash on some hosts

2007-01-27: dev/dwmixfa.c: handle extreem loops better (and make some more code PIC)

2007-02-04: cpiface/cpitrack.c: Increase intelligens of the renderer (to avoid crashes when viewing files with long patterns, and black lines on small ones)

2007-02-05: VERSION 0.1.13

2007-02-10: Removed outdated DGA support

2007-02-10: Removed the old plSetGraphPage code. Since it sometimes where used wrong, and that all the current graphic drivers are linear, and not paged.

2007-02-19: Updated the build system regarding "make install" and "make uninstall", and prepared the support for autoload a directory of plugins (so that we can start to strip down ocp.ini)

2007-03-02: Internal changes: Remove a lot of symbol lookups for init/close stuff

2007-05-27: Add support for .flac files

2007-06-20: Fix the support for compressed archieves again

2007-07-09: medialib: now somewhat works again

2007-07-13: cpiface: alt+k now displays some help about keys

2007-07-22: devw/*: Some crash-fixes regarding 64bit archs (uint32_t/int32_t index behaves differently on 32bit and 64bit systems)

2007-09-17: playmp2/mpptype.c playmp2/charset.*: id3 v2.x support (and some lame charset handling)

2007-09-18: ALT-K updates (support for graphical modes)

2007-09-18: make FLAC support optional, and add some stuff to ocp.ini.in that was lost regarding FLAC support

2007-10-13: Support FLAC the "new" 1.1.3 API

2007-10-15: Edit FPS from ALT-C setup window

2007-10-18: filesel/pfilesel.c: minor buffer-overflow by a byte in fsEditModType()

2007-10-19: playmp2/mpptype.c: id3 v2.3/v.2.4 parser updates

2007-10-19: */*: ALT+R in the fileselector for rescanning the selected file.

2007-10-21: VERSION 0.1.14

2007-10-27: cpiface/cpiscope.c: Draw the entire background picture if present

2007-10-27: playgmi/gmitimidity.c: Now it should work with configs that has several search-dirs

2007-11-11: playcda/*.c: Disk size is now correct (displayed on track to little), and removed a crash when you were done playing cd

2007-11-16: cpiface/cpigraph.c: palette updates for "palette2", replaceable with shift-tab (works in X11 atleast)

2007-11-16: cpiface/volctrl.c: Don't swallow key we didn't use it

2007-11-16: cpiface/cpitext.c: Don't send "focused" keyboard events to interfaces that no more is active

2007-11-16: playmp2/mpptype.c: Mac OS X needs sys/types.h

2007-11-16: configure.ac: detect libiconv if needed

2007-11-17: playxm/xmload.c: check if fread/fseek calls failes, and free memory properly when we abort to load

2007-11-17: filesel/arczip.c: removed an invalid unlink() that tried to remove a tempfile no longer used in the code

2007-11-17: filesel/arczip.c: Taking padding into account when calculating mmap length (crash bug)

2007-11-18: playxm/xmload.c: more sanity-checks and an error in the endian-fixups

2007-11-18: playxm/xmload.c: support .xm files with truncated headers (and files with maleformed headers)

2007-12-13: medialib/medialib.c: buffer overflow when reading string from user

2007-12-13: devp/devpalsa.c (and some others): support for "default" and custom device strings

2007-12-14: dev/smpman.c: boundarycheck loops properly

2007-12-15: playxm/xmplay.c: Playing a note without a valid instrument/sample could cause a null-pointer dereference/segfault

2007-12-15: stuff/console.c and others: -dx11 -dcurses -dvcsa flag, to force display driver to use

2008-01-04: stuff/poutput-x11.c cpiface/cpikeykelp.c: don't crash on wurfel-mode + ALT-K

2008-01-14: VERSION 0.1.15
