              ____________________________________________________            
               ___     ___     ___     ___             ___     ___
              (  __ . (   ' . (___) . (   ) . (   ) . ( | ) . (___
              (___)   (       (   )   (___)   (___)   ( | )   (
               ____    ___     ___     ___     _  _    ___     ___
                 )  . (   ' . (___) . (     . (__/  . (___  . (   
                 )    (       (   )   (___    (_ \_   (___    (
                         ___  ___        ___  ___   ___
                      / (___ (___) (    (    (   ) (   ) \ 
                      \ (    (   ) (___ (___ (___) (   ) / v0.8776
              ____________________________________________________
       
               A 32-voice DSP soundtracker for the Atari Falcon 


                  Further development by the Graoumf Devteam:-
                  
                sjx of Vectronix      sjx.vectronix@hushmail.com
                Lonny L. Pursell

   Based on the sources of Graoumf Tracker v0.8771 by Laurent de SORAS ~ 1997


                                Release Notes 

0.8776 - Lots and lots of bugfixes, mainly typos but also other, serious 
         bugs. Most notably -- Graoumf now actually saves envelopes, making 
         them usable, at last! :)

         Additionally, two new preferences were added to the GTKPREFS.INF 
         file:

         grmode_preserve - default no - If set to yes, causes Graoumf not to 
         change the resolution. This does mean Graoumf should be started in a 
         suitable resolution (at least 640x200, 16 colours).

         grmode_skipxbra - default no - If set to yes, Graoumf does not 
         attempt to remove NVDI and some screen expanders from the vector 
         chain.
         
         Changing these both to yes and running Graoumf from the correct 
         resolution seems to make it more stable, although it's worth 
         pointing out that Graoumf absolutely hates NVDI. I'm looking in to 
         this problem, but I think it's the memory allocation.
         
         Incidentally, I had a little more success with this under N.aes,
         in fact it actually runs now, although the mouse clicks "fall 
         through" the graoumf screen. I shall look into adding code to lock 
         the screen with form_dial; if that improves the situation, Graoumf 
         may start to become more stable under MiNT, although it still does 
         not seem to like memory protection much. Your Mileage May Vary.
         I'd be interested to hear how you get on. -- /sjx.

0.8775 - Looks like 0.8770 sometimes messed up saving modules. I've observed 
         gt2 modules with one too many byteswaps, swapping the first and 
         second letter of the chunk header. The net effect of this was to 
         cause 'ASMP' chunks to be written instead of 'SAMP' chunks. 
         Curiously, 0.8770 would load these without problem, but 0.8771 would 
         not. I've added a workaround - once a damaged module is loaded, it 
         will be corrected, so just save it back again. -- /sjx.

0.8774 - Added full support for loading modules from Octalyser - 4, 6 and 8 
         channels, and at 16KHz, 20KHz, 25KHz basespeeds (which would 
         previously crash). Unfortunately I don't have the exact basespeeds 
         used by Octalyser, and in any case they varied by a small amount (if 
         you were using a UCDM, the frequencies were slightly lower). 
         Octalyser modules may thus need a little manual correction, but they 
         will at least load OK. -- /sjx.

0.8773 - Crash (4 bombs) on loading unknown module type corrected. It turns 
         out that a GOTO to an undefined label isn't flagged by the compiler,
         it just compiles into a 'jmp 0' instruction. This is a Bad Thing,
         and definitely something to look out for in the future. -- /sjx.

0.8772 - Registration legacy code removed, is now fully functional without a
         key file. -- /sjx.

0.8771 - The year is 2000; Laurent de SORAS finally releases the full source
         code to Graoumf Tracker. [ In other news, hell freezes over. ;) ]
         Changes between 0.8770 and 0.8771 are not known. Freeware.

0.8770 - Last known binary release by Laurent de SORAS. Changes from this to 
         previous versions are covered in the original documentation 
         WHATSNEW.TXT and will not be duplicated here.


                                 Known Bugs 

- Graoumf doesn't like MiNT very much.
- Graoumf dislikes long filenames sometimes.
- Graoumf often messes up the fileselector.
- Graoumf's memory allocation, frankly, sucks.
- Graoumf hates NVDI; mouse droppings probably caused by the library, but I 
  think that the buzzes of overwritten samples are probably the memory 
  allocation routines again.
- Lots of problems with 16-bit samples, particularly with extra fine
  sample offset.


                              Planned Features 

- Corrections for all the above bugs! :)
- Save as XM? Would be useful...
- (Partial?) support for mods saved by Graoumf Tracker 2 (pc version)?
- Filters (esp. resonance + low-pass) and synths in the sample editor?
- Loading (+saving?) Impulse Tracker? (.IT)
- Loading and saving Impulse Tracker instruments?
- Realtime filters  la Graoumf Tracker 2/Impulse Tracker? (Punish the dsp?)
- Loading and saving patterns/songs.
- Some extra editing features (wait and see, but they are very useful)


Share and enjoy... contributions welcome, source code included!

See you on IRCnet #atariscne. -- /sjx.

[eof]