==============================================================================

        HISTORY OF GRAOUMF TRACKER 2

        by Laurent de Soras, 1994-2022

==============================================================================



Legend:
- : bugfix.
+ : addition, modification or deletion complete.
o : coding in progress.



r27, 2022-06-02
---------------

- Added standard MIDI file (.mid) import. It only changes the song, the
instruments are kept intact. Rationale:
    – Only Note On and Note Off events are taken into account, along with
    tempo information. Velocity is converted to volume using a square law
    (40 dB of dynamic range between velo 1 and 127). Starting and ending times
    are refined using 09xx and 0Axx commands.
    – Each MIDI channel is associated with a unique group of GT tracks and an
    instrument (same numbering as the MIDI channels).
    – All MIDI subtracks are merged together and possibly subdiveded into
    patterns up to 256 lines. MIDI file format 2 uses a different set of
    patterns for each subtrack.
    – To get a decent time resolution, the loader uses 8 lines per quarter at
    a speed of 6 (48 ticks per quarter), effectively doubling the displayed
    tempo.



r26, 2021-07-27
---------------

- Fixed a mixing error occurring with specific chains of effect tracks (thanks
to David L.)

- Fixed a pitch glitch with the Note Delay command 09xx (thanks to David L.)

- Fixed note triggering for multi-sample instruments (thanks to David L.)



r25, 2020-03-14
---------------

+ Multiples samples can be loaded at once. Use the right click in the file
selector to add more files or Ctrl + A to select the whole folder content.
Additional samples will be loaded in the empty slots following the current
one.

+ The sample name field is now filled with the filename on loading.

+ The file selector does not try to read 24-bit samples anymore (no more
noise bursts).

+ High quality mixdown is much faster.

- Fixed the edition of the name of a sample group when no group is selected.



r24, 2017-03-26
---------------

- Fixed a loading bug with format version 9 of GT2 modules.



r23, 2017-03-25
---------------

- Code clean-up, fixed some bugs too.



r22, 2016-07-30
---------------

- Fixed a few things to make GT2 work with WinXP again.



r21, 2016-03-21
---------------

+ Added a Most Recent Use (MRU) file list for the modules, allowing to quickly
load recent files.

+ Improved handling of files with non-ANSI characters in their paths.

+ Source code is licensed under the WTFPL instead of the GPL.

- Fixed a module loading problem introduced in r20

- Fixed a initialisation problem when GT is installed in a protected directory
like Program Files (x86).



r20, 2015-09-08
---------------

+ Changed the release numbering system (0.00xx -> rxx)

+ Added support for OctaMED files import (MMD0/MMD1), restricted to sampled
instruments.

+ Added level meters in the mixing pane. Changed the meter and fader scale.

+ Added transposition shortcuts (Ctrl [+ Shift] + UP/DOWN for semitones and
octaves).

+ Sample groups can be named.

- Fixed a sample loop issue in XM loading.



v0.0019, 2012-05-20
-------------------

+ New click removal, of higher quality and more consistent that the previous
one.

+ Larger file selector.

o Added sample groups. Samples may belong to a group, allowing to play only
a specific set of samples. When mixing down, this is useful to isolate some
parts sharing tracks with other samples. Currently groups are only identified
by a number and cannot be named yet.

- Fixed most high-quality mixdown issues (clicks & pops, wrong volumes).

- Fixed some display bugs.



v0.0018, 2008-05-02
-------------------

+ Added commands to clear unused patterns/instruments/samples/all.

+ The clock now works. Clicking on it resets it.



v0.0017, 2004-11-06
-------------------

+ Added shortcuts for previous and next instrument (Alt + LEFT/RIGHT) and
previous and next sample (Shift + Alt + LEFT/RIGHT).

+ Added shortcut to make current instrument the one of the closest note on
the track (dot on the numeric pad).

+ Drumpad: basic operations are implemented.

- Fixed Sample Offset effect parameter (9xxx) when importing GT2 modules
created with Graoumf Tracker on Falcon 030. The latter measured the position
in bytes, whereas Graoumf Tracker 2 measures position in samples (it makes
difference with 16-bit samples). There were also problemes offsets past the
sample loop.

- Fixed a few bugs leading to crash or clicks.



v0.0016, 2000-05-03
-------------------

- Fixed crash when resizing window.

- In MixDown operation, crash occured when end position was before the start
position.

- Direct-2-Disk samples where not loaded when opening file by drag'n'drop.

- Fixed initial track panning in .DTM module loading.



v0.0015, 2000-02-07
-------------------

+ Now imports Falcon Digital Tracker modules (.DTM).

+ Default period mode changed to "Linear". This period mode is now saved in
modules.

+ Mdjustable mixer latency time (in pref menu and in configuration file).

- Fixed .AVR sample loading issues.

- Bug corrected in the Punch mode of the distortion effect.

- Fixed volume slide problem in the XM import.

- Fixed display bug in fileselector (wrong month numbers).

- Fixed misc display refresh and mouse bugs

- Page up key (Prev bar) didn't respect bar division setting. It's now
corrected.



v0.0014, 1999-08-21
-------------------

+ Multiple module backups.

+ The "Module changed: save ?" box appears only if the module was really
modified.

+ Graoumf Tracker can run even if there is no sound card.

+ Some variables added to the preference file.

+ Backspace behaviour changed: clears the field under the cursor (like it does
in other soundtrackers).

+ More accurate periods for notes. Now a sample looped with the BFxx command
matches exactly the number of lines specified, and remains synchronized all
the time.

+ Track names saved/read in GT2 modules.

+ Cut function (Ctrl + X).

+ Samples and instruments can now be interdependent: when you change the
current instrument, the current sample is changed according to the selected
instrument (and vice versa).

- GT now runs on Cyrix 6x86 processors (removed RDTSC cycle counter).

- Fixed log file bug when there is something wrong with the sound device
(infinite loop).

- In .MOD loading, fixed bug in the repeat position which was set to an
inexisting position on some modules.



v0.0013, 1999-08-07
-------------------

+ Skin support

+ Customizable keyboard (via the pref.inf file)

+ When switching to another task, Graoumf Tracker releases the sound device if
it isn't in playback mode.

+ Ctrl + R: Change the replay frequency (44.1, 22.05 and 11.025 KHz cycle) to
save CPU.

+ Right clicking on Insert pattern icon automatically set the number of lines
to 64.

o Preference menu, preference file (pref.inf)

- Volume column now works properly on Effect tracks

- Fixed bug in Sample Editor: a crash could occur after reducing the window.



v0.0012, 1999-07-18
-------------------

+ Two distortions: Boost and Punch modes. Gain is ranging from 0 to +60 dB.
Boost is a standard overdriven distortion (better for rich sounds), and Punch
adds a lot of harmonics (for simple sounds). Two parameters adjust the punch
tone.

+ New track commands applying mixing presets:
    CAxx: Apply mixing preset on input tracks only. The command doesn't affect
          parameters of the current track.
    CBxx: Same as CAxx, but without removing tracks (present in previous
          configuration but not in the preset).
    CCxx: Same as CBxx, only affects input track volume
    CDxx: Same as CBxx, only affects input track panning

+ Keyboard shortcuts:
    Return:         Play the line at cursor position
	 Shift + Return: Play pattern context (all the first notes from cursor
                    postion up in the pattern)

+ Setting a track to solo will only mute the track of the same type, instead
of muting all other tracks.

+ Delay between user actions and sound output has been drastically reduced on
Win95/98 platforms.

+ Graoumf Tracker now supports Drag & Drop and command line for module
loading.

+ Help button opens html manual.

o Functions added to Undo/Redo scope.

- Exterminated memory corruption bug (could lead to a program hanging).

- Memory leak corrected in the display routines.

- Use of dry part of effect tracks could lead to a crash in certain cases.
It's now fixed.

- Fixed dirty sound in resonant filters for a monophonic + (multiband or
order > 2) configuration.

- Fixed "Musical keyboard" bug: Sometimes, Graoumf Tracker continued to
intercept keyboard striking when another application was set to foreground
with Alt + Tab.

- Preset display bug fixed.

- 'P' key problem solved.

- Fixed miscellaneous bugs in Mix menu.



v0.0011, 1999-07-08
-------------------

o Multiple level Undo/Redo functions, limited to pattern editing. Associated
keyboard shortcuts: Ctrl + Z/Y.

+ Respect of the keyboard language: pressing a 'Q' on a QWERTY keyboard will
no longer produce a 'A' !

+ For a better XM compatibility, sample offset commands (9xxx, BAxx and BBxx)
with null parameter reuse the last non-null param.

+ View configuration is stored in memory for each enevelope.

- Minor bugfixes



v0.0010, 1999-07-03
-------------------

+ Improvements in click removal (especially in DSP effects).

+ 24 bit mixdown, adjustable quality

+ Pattern now scrolls while selecting a block with the mouse.

o More keyboard shortcuts (Load/Save, blocks, etc...)

- Fixed bug in player which caused a doubled volume on track 1 in mixdown
rendering with High Quality enabled.



v0.0009, 1999-06-08
-------------------

+ Windowed mode. It is the same interface as before, but running in a window.

+ Inproved CPU consumption, especially when running in background.

+ Highlighted background for beat and bar lines in pattern display.

+ Possibility of running simultaneously multiple instances of Graoumf Tracker
for module mixing.

+ Click removal. When a sample is played, and is cutting the previous sample
played on the track, it may be a discontinuity between the tho curves. this
produces a very audible click. The player is now able to detect the clicks and
to fix the discontinuity. The same phenomenon occurs whith fast volume or
panning changes.

+ Resonant filter: more stable, improved multiband mode, now accept up to 7
additional cells (maximum order is 16). The resonance level is now independant
of the filter order.

+ Visible block selection, standard copy and paste operation with Ctrl + C and
Ctrl + V.

+ Beginning of HTML documentation (in French)

- Fixed display bug in fileselector (current directory display).

- Bug in High-quality disk recording: samples played exactly 24 half-tones
down had unwanted artifacts.

- Fixed bug in parameter input for FX pattern editing.

- When you switch an FX track in stereo, sometimes it switches back to mono.
Fixed.

- In the resonant filter, the 0217 command bypassed the LFO (and it
shouldn't).



v0.0008, 1999-04-01
-------------------

+ Graoumf Tracker now reads Protracker modules (.MOD) and FastTracker II
modules (.XM).

+ Effects added in volume column (the same as FastTracker II).

+ Envelope system changed. They are now Fast/Impulse-Tracker-like, easier to
edit, with points and sustain loops. There is a fadeout and a LFO for each
kind of envelope.

+ Resonant low-pass filter added in instruments. The parameters of the filter
can depend on the note velocity. It gives a more realistic effect if notes
played softly have their high frequencies cut off, and notes played loudly
have them enhanced.

+ Cut-off and Reso envelopes added, for controlling the above-mentioned
parameters. Commands B6xx to B7xx activate these envelopes, replacing old
"key off envelope" commands.

+ Player supports Amiga and linear mode for note period.

+ Linear interplation is On by default for a better sound quality. If your
computer isn't enough fast to play modules like that, press Ctrl + Shift + I
to disable interpolation.

+ You can hear selected sounds in the file selector without having to load
them.

+ Maximum song length increased to 999 positions.

+ Default screen resolution is now 1024x768. If your monitor doesn't support
this mode, GT swiches automatically to 800x600.

- When a track is deleted, GT doesn't remove it from the Mix presets. Fixed.



v0.0007, 1999-03-13
-------------------

+ The configuration is now saved with the module (GT2 format).

+ Clear envelopes, mix and fx added in Tools->Clear menu.

+ Effect menu with real time effect control.

+ Resonnant filters added. High-pass, low-pass, band-pass, band-reject filters
are available, order is up to 8 (-48 dB / octave), Q factor range is 0.01 to
100. Optional LFO for easy frequency sweeping, with 6 waveforms available.
There is also a multiband-mode, which allow harmonic enhancement or removal.

+ With one command B2xx (Set flags), you can now set or remove the
interpolation on all the tracks (by adding respectively +02 or +04 to the
parameter).

+ Commands added to delay effect, and a bunch of new commands for controlling
the resonant filter.

+ New commands for effect tracks:
    C300 xxxx - Set effect preset
    C400      - Remove FX from track (to save CPU time when an effect is not
                in use).
    C500      - Mute input of FX, by settings the input volume of each track
                to 0.
	 C600 xxxx - Set effect stereo (for effect supporting both stereo and mono
                mode).

+ Stereo of tracks is now recorded in the .GT2 modules (Mix presets and
current config), because some DSP effects can work in mono and stereo.

+ Note range extended to 10 octaves and a half.

+ Demonstration module (on the web site) using the new effects.

o You can now navigate in the Sample Editor

- In the Song-To-Disk high quality recording mode, the volume was lowered
by -6 dB. This unwanted attenuation is removed.

- Display bugs removed in the Mix sub-menu.

- You could delete notes with backspace even if Edit mode was deactivated.
This has been fixed.

- Fixed tempo calculated with command BExx, which was not very accurate.

- Fixed some volume bugs with the stereo mixing.



v0.0006, 1999-01-27
-------------------

+ Block Start and Block End keyboard shortcuts added.

+ Insert block and Delete block functions added in the Tool menu.

+ Instrument window scrollbar is now functional.

+ Bigger space in the sub-menu window.

+ You can select OK or Cancel in a dialog box by hitting the Return or Esc
key.

o Icons and graphic stuff added.

o I'm working on the Sample Editor interface and internal structure.

- Display of the number of channels of a track was wrong in the Mix pannel for
a stereo sample track (was always displaying '1');

- Tempo display is now updated when you enter a new tempo with command Fxx in
Stop mode.

- Trying to loop an empty sample caused a crash, in spite of the warning
message.



v0.0005, 1999-01-10
-------------------

+ You can select track commands in a pop-up menu by clicking with the right
mouse button on a pattern.

- 8 bit WAV file are now always saved as unsigned data.

- No more problems with Direct-To-Disk samples.

- Another bug corrected in the Save function (the last one, I hope !)

- It is not a bug, but some music programs (such as CoolEdit, Cubase...)
couldn't load .WAV files saved by Graoumf Tracker, because they don't respect
all the specifications of the RIFF file structure ("data" and "smpl" chunks
can be located everywhere in the file). It's now fixed, GT saves the "spml"
and "data" chunks at the start of the .WAV file.



v0.0004, 1999-01-05
-------------------

+ Output clipping added. If your song clips, the clipping percentage
is displayed in the status line.

+ Memory manager changed, for faster operations...

o The disk writer (Song-2-Disk) has now a very high resampling quality. It
uses a 80-bit floating-point reconstruction filter, doing far better
resampling than interpolation. But quality has a cost, it's still pretty
slow and has to be optimized...

- Previous versions had bugs in date tests, and you could't save anything in
January 1999. Fixed.

- Switching to another application then back to GT didn't work properly when
you were typing a string.

- In the fileselector, if your disk volume was larger than 2 GB, the free
space information was wrong. 



v0.0003, 1998-12-29
-------------------

+ Kill sample function added in Sample menu.

- On Win95 systems, sometimes GT couldn't load for memory problem (system
call for knowing available memory is very uncertain). If GT couldn't get the
available memory amount, it forces 8 MB to be allocated. This is a
temporary solution; this old non-paged-memory-oriented memory management (!)
will be replaced in the next version by a faster and more efficient manager.

- File selector crash fixed.



v0.0002, 1998-12-17
-------------------

+ Loading and saving mix presets in GT2 modules.

+ Solo mode for a track, activated by clicking with the right button on the
corresponding mute icon.

- Clicking with the right button on Insert (new pattern) put the cursor out of
the new pattern.

- In GT2 module loading, some objects (samples, instruments, envelopes) were
not loaded if the object number was exactly the upper limit accepted by G.T.



v0.0001, 1998-12-15
-------------------

It was the first beta-release.
