# HISTORY

    0.60e -> 0.60f
    -Changed "python2.0" to "python" in the start.sh script. Would make
     start.sh to fail starting if "python" was a newer version than 2.0,
     and "python2.0" was actually python v2.0. (unix)
    -Fixed some load/save trouble when the drawer path was "" (Ie. ""PROGDIR:"")
     or "/", and possibly other situations. Bug found by Terje Skau.
    -Optimized scrolling up/down from the last or first line to
     the first or last line when there was no need to draw up all graphics.
    -Removed some graphical bugs that would happen if a track was partly
     visible. Bug introduced sometime in 0.60.
    -Disabled the possibility to change the width of a partly visible
     track, as it was very buggy. But introduced sometime in 0.5x.

    0.60d beta -> 0.60e
    -Name of block updates in playlist-window when pasting block.
    -Name of block updates in playlist-window when setting the name of block.
    -Removed the hardcoded "work:radiumsongs/" path when loading and
     saving. Got a report about it long time ago, but forgot all about it.
     The path is for now hardcoded to be "Radium:" instead (which is guaranteed to
     exist at startup), but now it allways remember the last used path.
    -Fixed up some serious trouble that might have happened if trying to
     cancel a "Save As".
    -Give warning when saving, and fclose() fails.
    -Removed more debug-printings (which I had overlooked).
    -Seemed like some play-keybindings was put wrong in the keybindings.conf
     file. But as those new ones was actually better than the old ones, I
     changed the menues in the help-window instead. Which means that the
     keybindings for playing are not by default equal to the ones in Octamed
     anylonger (if you didn`t know :) ). However, its still possible to define
     personal keybindings in the bin/keybindings.conf file.
    -Made the error/warning-printing window pop up to the front whenever there is
     a new message. This was important, as some messages must be read. For
     example when you are strongly encouraged to save and quit because of
     low memory.
    -Fixed the problem when opening a song that has a larger edit-window
     than the current screen-size.
    -Made the SaveAs filerequester only show .rad files too.
    -Made some checks that various windows really opened.
    -Made program still run if the blockselector window couldn`t be opened,
     as that often happens when low on memory. (That was a serious bug, my
     amiga has crashed two times lately because of this.)
    -Less shouting when nearly out of memory.
    -There was a _huge_ memory leek (especially noticable when loading)
     in the gfx-data memory-handler. Solved it by inserting a garbage collector again.
     (this time mark and sweep type).
    -Removed some potentional problems when loading while having very
     little memory or when having very large blocks.
    -Made it exit nicely if opening of edit-window failes when loading.

    0.60c beta -> 0.60d
    -There were probably problems moving nodes in a lot of situations
     in v0.60c. If there were a problem, it should now be fixed.
    -Increased the graphical zooming speed a lot. Theres a small flicker though.
    -Removed the window resize bugs for the amiga. Hopefully.
    -Removed BPM/LPB overwriting when clicking on the tempocolors-track.
    -Removed BPM/LPB/Reltempo overwriting when changing block.
    -If trying to remove a MUL-note containing more than one STP-note,
     the program would freeze. Fixed.
    -Removed the "Illegal midi-message" bug, hopefully.
    -Fixed the player-freeze-bug when having a very high tempo.
    -Took away editing while playing. It was really buggy. If there is
     a demand for the function, I can insert it as an option at a later
     release. The player-routine should be rewritten sometime anyway.
     To compile up radium with editing while playing, just undefine
     NOPAUSEPLAY.
    -Removed the remaining debug-printings. (This version doesn't have
     any bugs. ;)

    0.60b beta -> 0.60c beta
    -Changing track-widths does not look ugly anymore on the amiga.
    -Cleaned up some code. Some things are faster, but its probably not
     noticable.
    -Velocity-values are now showed in the window-title also when just
     moving the mouse on top of notes.
    -Added the GFX_Menu function to Qt.
    -Fixed the stop-bug introduced in 0.60b.
    -Increased the stack even more (1/2MB)
    -Fixed wrong keybinding for redo.
    -Fixed the problem getting floats from python for amiga.

    0.56d beta -> 0.60b beta
    -The keybindings are configurable by editing the bin/keybindings.conf file.
     The file will be moved to radium: for amiga and to ~/.radium/ for
     unix in a later version as soon as the API is not garantiued to be changed
     to radically. Unfortunately, the parser-code for bin/keybindings.conf is
     terrible slow at the moment, will hopefully be better later.
    -Began the work of making extension language support. Starting with Python.
     An early test can be done by pressing left alt+7 (see bin/keybindings.conf
     for how it is started). Radium will then execute the
     python-code in the file called "bubble.py", and produce some algorithmic
     composed, ehm, music, based on a slightly modified bubble-sort algorithm.
     Hmm, seems to be a bug there, all voices are put to track 0 for some reason.
     Oh well. The interface will change, though. And no documentation yet either,
     of course. All functions defined in the bin/protos.conf file can be called, but
     dont use radium_init or ER_keyAdd, which is private functions.
    -Reduced standard max undo to 800. Using 2000 could use quite many MBs of memory,
     800 uses some mb less.
    -Increased the speed of the GFX_P_Point-function for the Qt-version.
     The "experimental graphical track that shows the tempo" was terrible slow before
     with Qt. It sometime segfaulted too.
    -Began implementing a new alternative graphical track for the note-editing.
     The keybindings are CTRL+t, CTRL+y and ALT+t. It will be improved later.
    -Lots of segfault/enforcer hits bugs in the mouse handling have been removed.
     (oops)
    -A segfault/enforcer hit bug have been removed from the stp-note function.
     (very oops)
    -General speed should actually be a little bit better now. The all-midi-off
     function was called extremely and unnecesarry often.
     (very oops again)
    -Updated the manual a bit.
    -The whole source-tree now contains 68.066 lines, 165.346 words, and
     1.714.287 characters. :)
     ([kjetil@localhost radium060b_src]$ cat * */* */*/* |wc)
    -Tried yet a new way to turn off notes with midi to solve a problem
     with a synth. Will be removed at next release, and used as an option instead
     if it works.
    -Probably something I have forgotten.

    0.56c beta -> 0.56d beta
    -Removed flickering for the trackheaders and the reltempoheader
     when changing track-widths. Only flickering left now is when
     changing block; the LPB and PBM track headers flicker a bit.

    0.56b beta -> 0.56c beta
    -Fixed wrong midi message being sent out when stopping sound.
    -Added unlimited undo option, and increased standard max number
     of undoes from 200 to 2000.
    -Added a simple glissando function.
    -Added function to start playing a block from the top of a
     ranged area.

    0.56 beta -> 0.56b beta
    -Fixed a bug in the insert/delete function, which is also used by
     the split-block function.
    -Fixed the panonoff bug. Finally.
    -New functions to transpose single notes under the cursor.
    -Updated the menues.
    -Fixed the "save as" bug.

    0.55d beta -> 0.56 beta
    -Added an experimental graphical track that shows the tempo. Its
     not working quite correctly, but good enough. If you don't like
     it, just click on it.
    -New function; split block. I forgot to add it to the menues, but
     the keybinding is right ctrl+s.
    -Keybindings for window update on/off and scrollplay on/off has
     been changed from using the ESC key to using the 1L1 key, because
     windows shortcuts interfere when running in WinUAE.
    -A terrible bug when undoing/redoing deleting and inserting of blocks has
     been removed.

    0.55c beta -> 0.55d beta
    -Program "freezes" for 20 seconds or so when copying/cuting in certain
     situations is fixed.
    -Something I can't remember what was.

    0.55b beta -> 0.55c beta
    -Fixed mouse-related things for the rightmost visible track.
    -Another thing I can't remember right now.

    0.55 beta -> 0.55b beta
    -Optimized memory a little bit.
    -Some bug-fixes.

    0.54d beta -> 0.55 beta
    -Added option to send out 0x90 midi-messages for note-offs
     instead of 0x80 messages.
    -Removed bug regarding when resizing; it used chip-mem when
     using gfx-cards.
    -Removed ugly bug regarding octamed modules loading.
    -Using the keypad with various qualifier-keys selects current
     track. Same for track on/off stuff.
    -Removed even more typos in the menues. Thanks to Terje Skau.
    -Removed muforce hit when pasting range and no range
     was marked.
    -Probably some things I have forgotten.

    0.54c beta -> 0.54d beta
    -Using Radium with GFX-cards previously used unnecesarry
     chip-mem. Fixed. It should be much faster now too.
     Seems to be 2-3 times faster in WinUAE, and 1200x1000
     and higher modes now works.
     (All this was because of incompitance by the programmer)

    0.54b beta -> 0.54c beta
    -All typos in the menues are hopefully removed. There were
     a lot of them.
    -Option to turn off/on window-update. Nice if cpu is heavily
     loaded.
    -Added menu option in "camd patch properties window" to select
     input-link, instead of manually editing the radium:inlinkname.txt
     file.
    -Made copy/cut/paste track to only work for effects if cursor
     is placed in an effect subtrack.
    -Bug-fixes regarding copy/cut/paste track.

    0.54 beta -> 0.54b beta
    -When a track was set to mute, it stilled played the effects.
     Fixed.

    0.53 beta -> 0.54 beta
    -Radium uses Camd.library again. But only accepts the new V40,
     especially made for AROS (http://www.aros.org) and Radium.
    -The midilink used for receiving midi-signal, is now spesified
     in radium:inlinkname.txt. The default is mmp.in.0.
    -Could be something I have forgotten. (don't botter running diff)

    0.52 beta -> 0.53 beta
    -Speed-up
    -Automatic playing of notes while scrolling with the arrow-keys.
    -Various bug-fixes.
    -Graphical improvement.
    -Probably things I have forgotten.

    0.51 beta -> 0.52 beta
    -Gfx-card owners should hopefully not need xx(x) megabytes of
     free memory anymore to start the program. That was a bug.
    -Different colors on the note-texts. 8 colors is now
     minimum to run Radium.
    -Less flickering and faster graphics.
    -F1-F5 changes keyboard-octave. (requested)
    -Probably something I have forgotten.

    0.50 beta -> 0.51 beta
    -Various bugs and potentional bugs removed.
    -Various gfx speed-ups and flicker-removes for:
      -Changing current track to a track currently
       not visible.
      -Changing track-widths.
      -Node placement changes.
      -Note start and end placement.
      -Probably other things.
    -Nicer looking gfx:
      -Full support for more than 4 color screen. New FX-lines
       now uses the whole palette, and the current line does
       not look awful when having a more than 4 color screen.
       This was required, because Radium is now more than fast
       enough to handle screen with more than 4 colors, even
       for dblntsc and dblpal screens.
    -Various general speed-ups.
    -The minimize block function, now scales the block to fit the
     window (if possible) instead of minimizing.
    -Problably other things I have forgotten.

    0.43 beta -> 0.50 beta
    -Main development moved to Linux. Radium now compiles both under AmigaOS
     and Unix/X11. The Unix/X11 version currently uses the Qt library for
     gfx, but will probably use GDK/GTK later because of limited keyboard
     support in Qt. The Unix/X11 version is very limited for now, though.
     You can compile it up and see how it looks, but it doesnt do very much
     yet, partly because of the limiteded keyboard support in Qt.

    -Nicer graphics. This was a side-effect of translation from planar
     graphics to chunky graphics. Radium now only uses chunky graphics
     operations, and infact allso without sacrificing speed. Perhaps
     not a very good side-effect, because the visible overview has
     become a bit messy. But it looks cool though. :)

    -Various bugs have been removed, and others have probably been introduced.

    -Various gfx speed-ups.

    0.42 beta -> 0.43 beta
    -Removed a terrible bug in the time.c file. Hopefully, the program
     shouldn`t crash at seemlessly random times anymore.
    -Added the block-tempo slider, which can allso be set realtime. (Nice!)
     Unfortunately, the clock now shows the wrong time when using this one,
     but I don` see that as a very big problem.
    -Included the iconX script and the nice icons made by Paul J.
     Radium can now be started from workbench.
    -Added the invert and backward functions. (does not work quite correctly,
     but still very useful) (see the edit-menu in the help-window)
    -Easier to change the track-widths.
    -Updated the documentation.
    -Some Internal fixes and speed-ups.
    -This version has included the debug-information generated by sas/c.
     (It does not slow down the program.)

    0.41 beta -> 0.42 beta
    -Fixed some crash-bugs in the loading and saving routines. (oops)
    -Fixed a crash-bug in the current play-list updater. (Updated from
     tracker-task instead of main-task. Stupid.).
    -Octamed module loader should now be quite fine. Some tempo-problems
     are there because of a main-difference between how octamed and
     radium does its things. FX is not handled.
    -Set the Quit-shortcut in the help-menu to the correct key-binding.
    -Player-priority was set far to low. Fixed. Previously, if f.ex
     moving a window, the player would halt for a small time.

    0.41 beta -> 0.41 beta
    -Fixed an important bug in the patch-part of the loader.
    -Added a VERY simple octamed module loader

    0.29 pre beta -> 0.40 beta
    -Midi Instrument patch-properties window.
    -Custom screen.
    -Insert/Delete Block.
    -Fixed a serious bug in the deletetrack routine.
    -Track on/off stuff.
    -Lots of other things.

    alpha beta gamma omega 0.25 -> 0.29 pre beta
    -Various user-interface stuff.
    -V0.25 didn't turn off notes. Stupid bug. Fixed.
    -Simple midi-input. (will be much better later)
    -Play block/play song should now work properly.
    -Simplified the memory-handling of the gfx-data a lot. Now it
     uses FAR less memory, and shouldn't give any muguardian angel
     hits.
    -Added an error spit-out routine that also works for tasks. Shouldn't
     hang if the player tries to print out an error anymore.
    -Various bug-fixes. (ao. lots of memory-overwriting things)

    alpha beta gamma 0.2 -> alpha beta gamma omega 0.25:
    -Easy Help
    -Bug fixes. (lots of!)
    -Some edit while playing. (not very fast, though)
    -Bigger nodes, not any problem moving the last fxnode anylonger.
    -Continue block.
    -Play song.
    -Insert/Delete track.
    -Better grapical zoom.
    -Some speed-ups.

    pre alpha 0.1 -> alpha beta gamma 0.2:
    -Loading and saving.
    -Undo/Redo
    -graphical zoom.
    -Various transposing functions.
    -Cut/copy/paste track
    -Copy/paste block
    -Block properties
    -Insert lines
    -Note/fxs/bpm/lpb/reltempo independent scrolling (move them down/up in the blocks).
    -Lots of stuff to make it use less memory.
    -Added a pretty advanced mempool for the gfx-data. (with its own garbage collector, which also frees memory)
    -Made it use only fast-mem while all not-viewed
     gfx-data is not freed, and give a message
     if it has to use chip-mem. (changes to the GC linker-library had to be done)
    -GFX data should also be a bit faster. (probably not viewable).
    -Removed some dangerous bugs.
    -Fixed some bugs in the camd handling.
    -Fixed a bug in the asl caller.
    -Fixed some really nasty memory-overwriting bugs.
    -Lots of other things. (especially internal) (bug-fixes, speed-improvements, and new features)

HTML Conversion by AG2HTML.pl V2.941126c, perl 5.00404 & witbrock@cs.cmu.edu