home *** CD-ROM | disk | FTP | other *** search
/ Collection of Hack-Phreak Scene Programs / cleanhpvac.zip / cleanhpvac / IT214.ZIP / IT.TXT < prev    next >
Text File  |  1997-08-10  |  113KB  |  2,228 lines

  1.  
  2.  
  3. .  ..s..s.s.ssss.
  4. :  ::$::$:$:$$$$$
  5. `  ``²``²`²`²²²²'.$$$     .$$$ $$$$$$$$$$ .$$$   .$$ .$$$ .$$$$$$$$$$ .$$$$$$$$
  6.    .  . . .$$$$ .$$$$    .$$$$ $$$   .$$'.$$$'  .$$'.$$$'.$$$$'  .$$'.$$$' .$$'
  7.   .  . . .$$$$'.$$$$$   .$$'.$ $$$  .$$'.$$$'  .$$'.$$$'.$$$$'  .$$'.$$$' .$$'
  8.  .  . . .$$$$'.$$$$'$  .$$'.$$ $$$ .$$'.$$$'  .$$'.$$$'.$$$$'      .$$$'
  9. .  . . .$$$$'.$$$$'.$ .$$' $$$ $$$$$$'.$$$'  .$$'.$$$' $$$$$$$$$$'.$$$$$'
  10.   . . .$$$$'.$$$$' $$.$$'  $$$ $$$   .$$$'  .$$'.$$$'        .$$'.$$$'  ..
  11.  . . .$$$$'.$$$$'  $$$$'   $$$ $$$  .$$$'  .$$'.$$$'   .$   .$$'.$$$' .$$'
  12. . . .$$$$'.$$$$'   $$$'    $$$ $$$ .$$$'  .$$'.$$$'   .$$  .$$'.$$$' .$$'
  13.  . .$$$$'.$$$$'    $$'     $$$ $$$ $$$$$$$$$' $$$$$$$$$$$ $$$'.$$$$$$$$' .cC!
  14.  
  15.         ..                                                           ..
  16.     .s$$$$$. .sssssssssssssssssssssssssssssssssssssssssssssssssss. .$$$$$s.
  17.    `$$.  `$$.   .ssss. .ssss. .ssss. .sss. .s  ss .sss. .ssss.    .$$'  .$$'
  18.     `$$   `$$   ²ss.`$ $. ``$ $' .$$ $. `$ $$.s²' $. `$ $. ``$    $$'   $$'
  19.   ds.`$ ds.`$     $$ ' $$ss²' $ss²$$ $$    $$S    $$²   $$ss²'    $'.sb $'.sb
  20.  $$$$.$ $$$.$     $$   $$`²s. $   $$ $$..$ $$`²s. $$..$ $$`²s.    $.$$$ $.$$$$
  21.  Y$$$$'.$$$$'.cC! ²²   ²²  ²² ²   ²² `²²²' ²²  ²² `²²²' ²²  ²²    `$$$$.`$$$$Y
  22.   `²'   `²'  `²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²²'  `²'   `²'
  23.      
  24.  
  25.                                  User's Manual
  26.  
  27.  
  28.  
  29.  1. Introduction
  30.   1.1  What is Impulse Tracker?
  31.   1.2  About Impulse Tracker
  32.   1.3  Running Impulse Tracker
  33.   1.4  Technical information about Impulse Tracker
  34.  
  35.  2. Using Impulse Tracker
  36.   2.1  Playing songs
  37.   2.2  Pattern editor
  38.   2.3  Order list, channel panning & volume
  39.   2.4  Samples
  40.   2.4.1 Information about samples
  41.   2.4.2 Sample functions
  42.   2.5  Instruments
  43.   2.6  Song Variables
  44.   2.7  Hey! This program looks like Scream Tracker 3!!!
  45.   2.8  Gravis UltraSound / Interwave / AWE32 users.
  46.  
  47.  3. Before you write to me (Important notes)
  48.  
  49.  4. For the software programmers & hardware manufacturers
  50.  
  51.  5. Closing words
  52.  
  53.  6. How to get the latest version of Impulse Tracker
  54.  
  55.  7. Legal stuff
  56.  
  57.  
  58.  1. Introduction
  59.         If you are familiar with tracker programs, then you could probably
  60.         skip through most of this document. (I strongly suggest that ANYONE
  61.         print out SUMMARY.TXT though, for a list of effects and editing
  62.         commands.) For those of you who have had experience with Scream
  63.         Tracker 3, read section 2.7. This should detail most of the major
  64.         differences between Scream Tracker 3 and Impulse Tracker. For those
  65.         of you who are unfamiliar with tracker programs it would probably be
  66.         best to print out this document, and then refer to it as you work
  67.         with the program.
  68.  
  69.         Check out the file UPDATE.TXT. If this document contains conflicting
  70.         information with what's listed in UPDATE.TXT, then follow what
  71.         UPDATE.TXT contains, as I may have forgotten to update this text.
  72.  
  73.   1.1  What is Impulse Tracker?
  74.         Impulse Tracker is a program used to create high quality music
  75.         without the requirements of specialised, expensive equipment. The
  76.         hardware requirements should be easily met: Any IBM 386+ compatible
  77.         computer (although a 486+ is recommended), and a VGA or higher video
  78.         card. If you want to hear sound, you'll need one of the following:
  79.  
  80.             ■ Sound Blaster series (or most compatibles)
  81.             ■ Pro Audio Spectrum
  82.             ■ Windows Sound System
  83.             ■ ESS ES1868 AudioDrive
  84.             ■ Ensoniq SoundscapeVIVO
  85.             ■ EWS64XL Soundcards
  86.             ■ Gravis UltraSound
  87.             ■ Interwave based board
  88.             ■ Generic MPU401 for MIDI Input/Output
  89.             ■ DAC on LPT1/LPT2
  90.             ■ PC Speaker
  91.  
  92.         Note that stereo effects (including surround sound) can only be
  93.         experienced on software mixed stereo cards. Hardware mixed soundcards
  94.         support panning, but do not support surround sound.
  95.  
  96.         You'll need about 500k of conventional memory to get the program
  97.         running - about 600k to have it load almost any song (as long as you
  98.         have an EMM driver - samples are stored in EMS when possible, otherwise
  99.         the songs that you are able to load will be limited even further!).
  100.         If you use EMM386.EXE, add "H=255" at the end of it to prevent
  101.         "Out of memory" messages when you still have EMS remaining. If
  102.         you're using some other memory manager, check it's documentation
  103.         to see how to increase the number of "memory handles".
  104.  
  105.         Impulse Tracker supports direct control over 64 channels, and can
  106.         load and play the following formats: S3M, MTM, MOD and of course,
  107.         IT. At the moment, modules can only be saved in the IT and S3M
  108.         formats.
  109.  
  110.         The number of channels playable on hardware mixed soundcards is
  111.         limited by the hardware. Check DRIVERS.TXT for specific details
  112.         on your soundcard hardware.
  113.  
  114.         The Gravis UltraSound can only play 32 channels, although this
  115.         shouldn't be too much of a limitation. Note that if you put notes
  116.         in channels 33->64 in sample mode using a Gravis, you WILL NOT hear
  117.         these notes! (There's an explanation of sample mode much later on,
  118.         just keep it in mind if you own a Gravis UltraSound - it shouldn't
  119.         cause any problems.) The same restriction applies for the Sound
  120.         Blaster AWE 32, but to 30 channels. (ie. notes in channels 31->64
  121.         will not cause any sound)
  122.  
  123.  
  124.   1.2  About Impulse Tracker.
  125.         Impulse Tracker began simply as an extension to Scream Tracker 3
  126.         (which should be quite obvious to Scream Tracker 3 users, due to
  127.         the interface.) At first, I only intended a couple of extra
  128.         features (eg. proper panning and a couple of other interesting
  129.         functions), but with the release of Fast Tracker 2, it became obvious
  130.         that there were many areas in which Scream Tracker could be improved.
  131.         In spite of all the limitations of Scream Tracker 3 (in comparison
  132.         to Fast Tracker 2, which offered Volume/Panning Envelopes, 16-bit
  133.         samples, Samples > 64k, an in built sampler, proper stereo panning
  134.         on SB16, etc. etc), there were still more .S3M releases than there
  135.         were .XM releases! And the reason must have been within the way
  136.         you WRITE music with Scream Tracker 3. That's why I've used the same
  137.         simple and QUICK interface that Scream Tracker 3 offered. And I've
  138.         also incorporated all the power of Fast Tracker 2 and more!
  139.  
  140.         The Tracker was written in 100% Assembler. All the routines are of
  141.         my own coding (That's why some of them suck so much :) ).
  142.         The program was written on and off during 1995, but most of the
  143.         work was completed in the summer holidays of '96. The source code
  144.         is over 100,000 lines long and occupies over 3MB. The Tracker runs
  145.         entirely in text mode (!) with some neat remapping of characters
  146.         (that's why I haven't been able to use colours to help in some places
  147.         ie. making the volume envelope nodes a different colour would have
  148.         made it easier to use!).
  149.  
  150.   1.3  Running Impulse Tracker.
  151.  
  152.         Win95 Users - ignore all this HIMEM and EMM386 stuff.. as long as
  153.         you don't have "noems" or "noframe" as a parameter to EMM386 in your
  154.         config.sys file, it'll work fine. If you have no idea what I'm talking
  155.         about, you can probably assume it's fine :) (unless you get "out of
  156.         memory messages")
  157.  
  158.         Impulse Tracker uses EMS. If you want to be able to load large songs,
  159.         you need the following lines in your CONFIG.SYS file (on your boot
  160.         drive)
  161.  
  162.                 DEVICE=<path>\HIMEM.SYS
  163.                 DEVICE=<path>\EMM386.EXE RAM H=255
  164.  
  165.         eg. if the files are in your C:\DOS directory, you need this:
  166.  
  167.                 DEVICE=C:\DOS\HIMEM.SYS
  168.                 DEVICE=C:\DOS\EMM386.EXE RAM H=255
  169.  
  170.  
  171.         If you use QEMM, use the following line instead:
  172.  
  173.                 DEVICE=<path>\QEMM.SYS DMA=64, HANDLES=255
  174.  
  175.         If you want to run Impulse Tracker in Windows 95, check out WIN95.TXT
  176.  
  177.         To find out details about the driver for your soundcard, check through
  178.         DRIVERS.TXT.
  179.  
  180.         Most users should not require any command line switches, however
  181.         the following are available:
  182.  
  183.           SFilename.Drv - Sets sound driver to use. eg. IT /sITIW.DRV
  184.                           this may become necessary as new sound drivers
  185.                           are released.
  186.  
  187.           S#      Set sound card
  188.                    S0 = No sound card (silent mode)
  189.                    S1 = PC Speaker
  190.                    S2 = Sound Blaster
  191.                    S3 = Sound Blaster 2
  192.                    S4 = Sound Blaster Pro
  193.                    S5 = Sound Blaster 16
  194.                    S6 = Sound Blaster AWE 32
  195.                    S7 = Gravis UltraSound
  196.                    S8 = Interwave
  197.                    S9 = Pro Audio Spectrum
  198.                    S10 = Pro Audio Spectrum 16
  199.                    S11 = Windows Sound System
  200.                    S20 = .WAV writer device
  201.  
  202.                   If this parameter is omitted, then a (hardware) detection
  203.                   routine is used. Check DRIVERS.TXT for specific information
  204.                   on the various drivers.
  205.  
  206.           Axxx    Set Base Address of sound card (hex)
  207.           D#      Set DMA of sound card (decimal)
  208.           I##     Set IRQ of sound card (decimal)
  209.  
  210.           M#####  Set Mixspeed. Values are accepted between 0->65535,
  211.                   however, the soundcards have hardware limits which will
  212.                   override the command line switch. Again, check DRIVERS.TXT
  213.                   for specific information on your sound driver.
  214.  
  215.           L###    Limit number of active channels
  216.  
  217.                   When you limit the number of channels, you are limiting the
  218.                   number of notes that you can hear on playback. In a "Sample"
  219.                   controlled song (explained later), the result is that if you
  220.                   play a 16 channel piece with the limit at 4 channels, then
  221.                   you will lose the last 12 channels! Even if the first 4
  222.                   are not playing anything. In an instrument controlled song,
  223.                   the result is that you will hear 4 notes at most, which can
  224.                   be controlled from any of the 64 channels, excess notes will
  225.                   be lost. (The reason for this is within the channel
  226.                   allocation routines.)
  227.  
  228.                   Note that the hardware mixed devices (eg. Gravis UltraSound,
  229.                   AMD Interwave and Sound Blaster AWE32) cannot play more
  230.                   than a certain number of channels (drivers.TXT will provide
  231.                   the exact details).
  232.  
  233.                   If you are new to tracking and didn't understand what I was
  234.                   just talking about, hilight this section with a marker
  235.                   (you've printed this out, right?), and in your dabblings,
  236.                   if you notice that some notes aren't being played, reread
  237.                   this section. It should make sense by then, and the reason
  238.                   hopefully lies in the above paragraphs.
  239.  
  240.           V1      Override VGA detection routine.. in case you DO have a
  241.                   VGA and the program doesn't recognise it. If characters
  242.                   look weird, you may need to use this switch to override
  243.                   the Matrox mode autodetect.
  244.  
  245.           V2      Force Matrox mode. Use this switch if you get garbled stuff
  246.                   appearing on your screen
  247.  
  248.           R       Reverse stereo channels.
  249.                   This is only really useful on the SB16. (Swaps left/right
  250.                   outputs). The Sound Blaster Pro stereo setting routines
  251.                   aren't accurate, and will sometimes set the left to left
  252.                   and right to right (how it's supposed to be), and
  253.                   sometimes set the left to right and right to left (how
  254.                   it's not supposed to be :) ).
  255.                   You can also switch left/right channels in IT by pressing
  256.                   Alt-R on the info page.
  257.  
  258.           C       Control playback in DOS Shell.
  259.                   When this option is on, the following keys will operate
  260.                   within the DOS Shell:
  261.  
  262.                    Right-Alt:   Stop playback
  263.                    Right-Ctrl:  Play song (if not already playing)
  264.                    Grey Plus:   Increase global volume
  265.                    Grey Minus:  Decrease global volume
  266.  
  267.                   Warning: There are problems on some computers with this
  268.                            enabled! If your keboard locks up, it may be
  269.                            necessary to press the left ctrl/alt to "unfreeze"
  270.                            it... sometimes (other times.. I don't know!)
  271.  
  272.          F        Disable file colour distinctions.
  273.                   When this is on, all file colours will appear the same as
  274.                   the background colour. This is just to make it easier to
  275.                   redo the palette to your liking more easily.
  276.  
  277.   1.4 Technical Information
  278.  
  279.         Formats supported
  280.           Modules:
  281.             MOD (M.K., M!K!, 4CHN, 6CHN, 8CHN, xxCH, FLT4, FLT8)
  282.             669 (Composer 669, Unis669)
  283.             MTM (MMEdit files)
  284.             S3M (Scream Tracker 3 files)
  285.             XM  (Fast Tracker 2 files, DigiTracker 3 files)
  286.             IT  (Impulse Tracker 1.xx, 2.xx files)
  287.  
  288.           Samples:
  289.             S3I (Scream tracker sample, 8 bit or 16 bit)
  290.             IFF (Fast tracker 2 sample, 8 bit or 16 bit)
  291.             WAV (Microsoft WAV, 8 bit or 16 bit)
  292.             Wxx (TX Wave format samples)
  293.             ITS (Impulse tracker sample, 8 bit or 16 bit)
  294.             RAW (Raw sample information, assumed 8 bit)
  295.             PAT (Gravis UltraSound patches)
  296.             KRZ (Kurzweil Synth files)
  297.             MOD (Samples from almost all .MOD formats)
  298.             PTM (Samples from Poly Tracker modules)
  299.             669 (Samples from 669 and 669 Enhanced modules)
  300.             FAR (Samples from Farandole composer modules)
  301.             MTM (Samples from MMEdit modules)
  302.             S3M (Samples from Scream Tracker 3 modules)
  303.             XM  (Samples from Fast Tracker 2 modules)
  304.             IT  (Samples from Impulse Tracker 1.xx, 2.xx modules)
  305.  
  306.           Instruments:
  307.             XI  (Instruments from Fast Tracker 2)
  308.             ITI (Instruments from Impulse Tracker)
  309.             XM  (Instruments from Fast Tracker 2 modules)
  310.             IT  (Instruments from Impulse Tracker 1.xx, 2.xx modules)
  311.  
  312.         Modules
  313.           99 Samples maximum
  314.           99 Instruments maximum
  315.          200 Patterns maximum (from 32-200 rows per pattern)
  316.          256 Orders maximum
  317.           64 Channels under direct control
  318.          256 Channels maximum for virtual control (64 max default)
  319.  
  320.         Samples
  321.           8/16 bit samples
  322.           Maximum size around 4MB
  323.           No Loop/Forwards/Ping pong loop
  324.           Default pan for samples (optional)
  325.           Vibrato parameters
  326.  
  327.         Instruments
  328.           25-point Volume/Panning/Pitch envelopes
  329.           Default pan for instruments (optional)
  330.           Pitch pan separation
  331.           Volume / panning swing
  332.           Virtual controls (*REALLY* worth understanding)
  333.           MIDI Output controls
  334.  
  335.         Sound Devices
  336.           Generic MPU401
  337.           Sound Blaster 1.xx, 2.xx (8 bit mono)
  338.           Sound Blaster Pro (8 bit stereo)
  339.           Sound Blaster 16 (16 bit stereo, MIDI In supported)
  340.           Sound Blaster AWE 32 (16 bit stereo, hardware mixing, MIDI In &
  341.                                 MIDI Out supported)
  342.           Pro Audio Spectrum (8 bit stereo)
  343.           Pro Audio Spectrum 16 (16 bit stereo)
  344.           Windows Sound System card (16 bit stereo)
  345.           ESS ES1688 AudioDrive (16 bit stereo)
  346.           ESS ES1868 AudioDrive (16 bit stereo, MIDI In supported)
  347.           Gravis UltraSound (16 bit stereo, hardware mixing)
  348.           Interwave based board (eg. GUS PnP, Dynasonix, 16 bit stereo,
  349.                                      hardware mixing, MIDI In & MIDI Out
  350.                                      supported)
  351.           EWS64XL (Codec driver, 16 bit stereo)
  352.           DAC on LPT1/LPT2 (8 bit mono)
  353.           PC Speaker (very final option not recommended... )
  354.  
  355.         MIDI Output
  356.           Supports 128 MIDI Macros
  357.           Supports 16 parmaeterised MIDI Macros
  358.           Internal handling of conflicting notes
  359.           Fully configurable output messages
  360.  
  361.  
  362.  2. Using Impulse Tracker
  363.         Before any specific details of how to use the tracker, it may be
  364.         worth knowing these few "editing" keys:
  365.  
  366.       When using Thumbbars.
  367.        Pressing Left and Right arrows will shift the values left/right
  368.        Holding down Ctrl while pressing left/right will move them quicker
  369.        And Shift-Left/Right will move them even quicker....
  370.        But just typing in a number will get you directly to the desired value!
  371.  
  372.       String (text) entry.
  373.        Nothing special here (and the routines need to be rewritten), but
  374.        pressing Ctrl-Backspace will clear the entire text..
  375.  
  376.       Numerical entries (of the 7 digit or 3 digit variety)
  377.        Pressing '+' or '-' will increase/decrease the value by 1. This is
  378.        especially useful when modifying loop values.
  379.  
  380.   2.1  Playing songs
  381.         If you are like most of us, you would have run the program first,
  382.         and probably figured out how to do this yourself. Songs are simply
  383.         loaded by pressing F9 at any time (to invoke the file load menu)
  384.         and then selecting a song by pressing Enter. You can also type the
  385.         first few characters of a filename, and a "search" will be made for
  386.         the first match.
  387.  
  388.         Note that on all the file menus in Impulse Tracker, you can also
  389.         delete files by pressing Delete.
  390.  
  391.         After loading a song, use F5 to play it and F8 to stop. The Info
  392.         Page should appear, and you can cycle through views using
  393.         PgUp/PgDn. Separate view windows can be created by pressing Insert
  394.         (and removed by pressing delete) and these separate windows can
  395.         each have a different view method.
  396.  
  397.         Details (ranges follow in brackets):
  398.          Frequency - the speed (pitch) at which the sample is played in
  399.                      samples per second
  400.          Position  - the offset in a sample (in bytes)
  401.          Smp       - The sample currently being played (1->99)
  402.          FVl       - The final volume of the sample, taking into account
  403.                      all the scaling factors (viz global volume, sample vol,
  404.                      envelope volume, channel volume and fadeout) (0->128)
  405.          CV        - Channel volume (0->64)
  406.          SV        - Sample volume (0->64)
  407.          VE        - Envelope volume (0->64)
  408.          Fde       - Fadeout component (0->512)
  409.          Pn        - Panning (0->64, Su = surround)
  410.          PE        - Panning envelope value (0->32)
  411.          NNA       - The current NNA (Cut/Con/Off/Fde)
  412.          Tot       - The total number of active virtual channels 'owned' by
  413.                      the channel
  414.  
  415.         If you're looking for some songs to play, check out the following
  416.         places:
  417.          ftp.cdrom.com/pub/demos/music [huge collection!]
  418.          kosmic.wit.com/kosmic/songs
  419.          ftp.uni-muenster.de/pub/sounds
  420.          archie.au/pub/aminet/mods
  421.  
  422.   2.2  Pattern editor (F2)
  423.         The pattern editor allows you to edit patterns. For those of you
  424.         who are familiar with music, patterns can be thought of as "bars",
  425.         and the order in which these "bars" are played is determined by
  426.         order list. For those of you who are not familiar with music,
  427.         consider patterns as a small collection of notes. Impulse Tracker
  428.         supports up to 200 different patterns - it *IS* quite a lot more
  429.         than it may initially sound!
  430.  
  431.         Each pattern can range in length between 32 and 200 rows. You can
  432.         change this value by using the "Pattern Editor Configuration" screen by
  433.         pressing F2 when alredy in the Pattern Editor. (If you want to change
  434.         the number of rows of several consecutive patterns, use Ctrl-F2)
  435.         The other options available are the base octave (explained later),
  436.         the skip value (also explained later), the row hilight major and
  437.         minor (which determines the distance between the emphasized rows)
  438.         and the command/commandvalue link/split option, which determines
  439.         whether when editing, the cursor should move downwards when entering
  440.         an effect, or across to the effect value columns.
  441.  
  442.         The pattern editor appears normally as 5 'channel' columns as such:
  443.         (You can configure the pattern editor .. press F1 in the pattern
  444.          editor, then page down to find the Track View options.)
  445.  
  446.         ┌─────────────┬─────────────┬─────────────┬─────────────┬─────────────┐
  447.         │C-5 01 23 A02│E-5 02 64 D01│∙∙∙ ∙∙ ∙∙ .00│∙∙∙ ∙∙ ∙∙ .00│∙∙∙ ∙∙ ∙∙ .00│
  448.         │∙∙∙ ∙∙ ∙∙ .00│∙∙∙ ∙∙ ∙∙ .00│∙∙∙ ∙∙ ∙∙ .00│∙∙∙ ∙∙ ∙∙ .00│∙∙∙ ∙∙ ∙∙ .00│
  449.         │∙∙∙ ∙∙ ∙∙ .00│∙∙∙ ∙∙ ∙∙ .00│∙∙∙ ∙∙ ∙∙ .00│∙∙∙ ∙∙ ∙∙ .00│∙∙∙ ∙∙ ∙∙ .00│
  450.         │∙∙∙ ∙∙ ∙∙ .00│∙∙∙ ∙∙ ∙∙ .00│∙∙∙ ∙∙ ∙∙ .00│∙∙∙ ∙∙ ∙∙ .00│∙∙∙ ∙∙ ∙∙ .00│
  451.         │∙∙∙ ∙∙ ∙∙ .00│∙∙∙ ∙∙ ∙∙ .00│∙∙∙ ∙∙ ∙∙ .00│∙∙∙ ∙∙ ∙∙ .00│∙∙∙ ∙∙ ∙∙ .00│
  452.         │∙∙∙ ∙∙ ∙∙ .00│∙∙∙ ∙∙ ∙∙ .00│∙∙∙ ∙∙ ∙∙ .00│∙∙∙ ∙∙ ∙∙ .00│∙∙∙ ∙∙ ∙∙ .00│
  453.                         ^   ^  ^  ^
  454.      Component Columns: 1   2  3  4
  455.  
  456.         What the component columns mean:
  457.          1) The first column contains the note and octave of the note.
  458.             Notes are entered by using the keyboard as such:
  459.  
  460.     (Note)         C# D#    F# G# A#    C# D#    F# G# A#    C# D#
  461.                 │ │ ││ │ │ │ ││ ││ │ │ │ ││ │ │ │ ││ ││ │ │ │ ││ │ │
  462.                 │ │ ││ │ │ │ ││ ││ │ │ │ ││ │ │ │ ││ ││ │ │ │ ││ │ │
  463.     (What you   │ │S││D│ │ │G││H││J│ │ │2││3│ │ │5││6││7│ │ │9││0│ │
  464.      type)      │ └┬┘└┬┘ │ └┬┘└┬┘└┬┘ │ └┬┘└┬┘ │ └┬┘└┬┘└┬┘ │ └┬┘└┬┘ │
  465.                 │ Z│ X│ C│ V│ B│ N│ M│ Q│ W│ E│ R│ T│ Y│ U│ I│ O│ P│
  466.                 └──┴──┴──┴──┴──┴──┴──┴──┴──┴──┴──┴──┴──┴──┴──┴──┴──┘
  467.     (Note)        C  D  E  F  G  A  B  C  D  E  F  G  A  B  C  D  E
  468.                  (Octave 0)           (Octave 1)           (Octave 2)
  469.  
  470.             (For those of you with AZERTY keyboards, you will find that
  471.              the keys should work as positioned on the keyboard, rather
  472.              than having to figure out QWERTY equivalents)
  473.  
  474.             The octave of the note is determined by adding the BaseOctave
  475.             to the Octave of the note played. The BaseOctave can be
  476.             adjusted by pressing the Grey keys '/' or '*' or using
  477.             Ctrl-Up Arrow or Ctrl-Down Arrow.
  478.  
  479.             The range of notes is from C-0 to B-9. The 'middle' note is
  480.             considered as C-5
  481.  
  482.             Pressing '1' on the note column will enter a notecut command.
  483.             This causes any note in the column to immediately stop.
  484.  
  485.             Pressing '`' (the note below ESC) on the note colume will enter a
  486.             noteoff command. This causes all sustain points to be released
  487.             (Explained in samples and instruments in more detail.)
  488.  
  489.             At the bottom of the channel is an 'edit mask'. This highlights
  490.             what will be affected when you type anything in. Note that
  491.             typing a note in can affect more than just a note - normally
  492.             it's set to enter an instrument and volume with it! You can easily
  493.             tell IT to enter an effect with it also by changing the
  494.             channel mask with ',' (comma) on columns 2, 3 and 4.
  495.  
  496.                 Examples of interpretation:
  497.  
  498.                 │C-4 01 ∙∙ .∙∙│ - will play note C octave 4, instrument 1
  499.                 │D-4 ∙∙ ∙∙ .∙∙│ - will play note D, octave 4, instrument 1
  500.                 │∙∙∙ 02 ∙∙ .∙∙│ - Will play note D, octave 4, instrument 2
  501.                 │E-4 ∙∙ ∙∙ .∙∙│ - will play note E, octave 4, instrument 2
  502.                 │G-6 12 ∙∙ .∙∙│ - will play note G, octave 6, instrument 12
  503.  
  504.          2) The second column contains the sample/instrument, depending on
  505.             whether the tracker is operating in sample mode, or instrument
  506.             mode. Valid ranges are from 01->99 (decimal).
  507.  
  508.          3) The third column contains the volume or panning of the note.
  509.             To toggle between entry of volumes and panning, press '`'
  510.  
  511.             Volumes.
  512.             0 is the softest (ie. nothing) and 64 (decimal!) is the loudest.
  513.             If no volume is specified, then the default volume for the sample
  514.             is used. (Note that effects *CANNOT* raise the volume above 64)
  515.  
  516.             The volume scale works linearly - ie. one note played at a
  517.             volume of 64 will be the same 'loudness' as 4 of the same note,
  518.             one played at a volume of 10, another at a volume of 30,
  519.             another at a volume of 20 and another at a volume of 4.
  520.              (10+30+20+4 = 64)
  521.             But if you have a choice, always go for the single note (it
  522.             will require less processing (occupy less channels), and also
  523.             sound better in quality, due to roundings that occur in processing
  524.             softer volumes).
  525.  
  526.             Panning.
  527.             Panning controls appear in a different colour to the volume
  528.             controls. For panning in this column, 0 represents far left, and
  529.             64 represents far right. If you have an Xxx effect at the same
  530.             time, the Xxx will take precedence over this column.
  531.  
  532.             It is more efficient filesize-wise to use a panning control in
  533.             this column rather than in the effect column.
  534.  
  535.             Volume, Panning & Effect??
  536.             OK. So you want to do something tricky. Well, it's possible to
  537.             get all 3 of these how you want with a little meddling with
  538.             the channel volume control - just place one before the row with
  539.             an appropriate value (remember that the range is 0->40 HEX) such
  540.             that the channel volume scales the default volume to the desired
  541.             value.... What I mean is that if you want to play a note at volume
  542.             32, pan 48, with vibrato H81, then you can do the following:
  543.  
  544.                 │∙∙∙ ∙∙ ∙∙ M20│ - Set channel volume to HALF.
  545.                 │C-4 01 48 H81│ - The 48 is a pan command - this assumes that
  546.                                   the default volume for sample/instrument 1
  547.                                   is 64.
  548.  
  549.             Volume Column Effects
  550.             In IT208 and higher, some extra functions are available in the
  551.             volume column. These allow you to slide the volume up/down and
  552.             pitch up/down, just like the final column effects. If you aren't
  553.             familiar with the rest of the editor, leave this section out for
  554.             now and come back after you have become acquainted to column
  555.             (4) of the editor - the effects column.
  556.  
  557.             Volume column effects are selected by pressing A-H in the first
  558.             column of the effects.
  559.  
  560.                 Ax = fine volume slide up by x
  561.                 Bx = fine volume slide down by x
  562.                 Cx = volume slide up by x
  563.                 Dx = volume slide down by x
  564.                 Ex = pitch slide down by x
  565.                 Fx = pitch slide up by x
  566.                 Gx = portamento to note with speed x
  567.                 Hx = vibrato with depth x
  568.  
  569.             In all cases, if x is 0, then the effect memory is used (as
  570.             explained in (4)
  571.  
  572.             The memory for Ax/Bx/Cx/Dx are shared, as is the memory for
  573.             Ex/Fx.
  574.  
  575.          4) The final column contains effect data. For those of you who are
  576.             just starting, I would advise you to leave this section until
  577.             later, when you have already dabbled with entering notes, and
  578.             want some special features. It's easy to get caught up with all
  579.             these special features and you can 'overdo' the effects.
  580.             And it will sound absolutely pathetic.
  581.  
  582.             Trust me, I know - I've done it :)
  583.  
  584.             Effects are entered by typing 'a'-'z', then a hex value
  585.             (see later for an explanation of hex numbers) as the final two
  586.             entries. The effects allow you to a wide variety of functions
  587.             that are otherwise impossible to obtain.
  588.  
  589.             Due to the repetitive nature of some effects, there is a
  590.             'memory' so that instead of typing:
  591.  
  592.                 ∙∙∙ ∙∙ ∙∙ G12     It is easier to   ∙∙∙ ∙∙ ∙∙ G12
  593.                 ∙∙∙ ∙∙ ∙∙ G12     use:              ∙∙∙ ∙∙ ∙∙ G00
  594.                 ∙∙∙ ∙∙ ∙∙ G12                       ∙∙∙ ∙∙ ∙∙ G00
  595.                 ∙∙∙ ∙∙ ∙∙ G12                       ∙∙∙ ∙∙ ∙∙ G00
  596.                 ∙∙∙ ∙∙ ∙∙ G12                       ∙∙∙ ∙∙ ∙∙ G00
  597.                 ∙∙∙ ∙∙ ∙∙ G12                       ∙∙∙ ∙∙ ∙∙ G00
  598.                 ∙∙∙ ∙∙ ∙∙ G12                       ∙∙∙ ∙∙ ∙∙ G00
  599.  
  600.            The following effects 'memorise' their previous values:
  601.             (D/K/L), (E/F/G), (HU), I, J, N, O, S, T, W
  602.  
  603.            Note: Bracketed commands share the same 'memory' value. So
  604.  
  605.                 ∙∙∙ ∙∙ ∙∙ E12   can be written as:  ∙∙∙ ∙∙ ∙∙ E12
  606.                 ∙∙∙ ∙∙ ∙∙ F12                       ∙∙∙ ∙∙ ∙∙ F00
  607.                 ∙∙∙ ∙∙ ∙∙ E12                       ∙∙∙ ∙∙ ∙∙ E00
  608.                 ∙∙∙ ∙∙ ∙∙ F12                       ∙∙∙ ∙∙ ∙∙ F00
  609.                 C-4 01 ∙∙ G12                       C-4 01 ∙∙ G00
  610.  
  611.                 Commands H and U are linked even more closely.
  612.                 If you use H00 or U00, then the previous vibrato, no matter
  613.                 whether it was set with Hxx or Uxx will be used. So:
  614.  
  615.                 ∙∙∙ ∙∙ ∙∙ H81    Is the same as:    ∙∙∙ ∙∙ ∙∙ H81
  616.                 ∙∙∙ ∙∙ ∙∙ U00                       ∙∙∙ ∙∙ ∙∙ H81
  617.                 ∙∙∙ ∙∙ ∙∙ U83                       ∙∙∙ ∙∙ ∙∙ U83
  618.                 ∙∙∙ ∙∙ ∙∙ U00                       ∙∙∙ ∙∙ ∙∙ U83
  619.                 ∙∙∙ ∙∙ ∙∙ H00                       ∙∙∙ ∙∙ ∙∙ U83
  620.  
  621.             Hex Numbers
  622.                 Note: Impulse Tracker works ENTIRELY with decimal numbers
  623.                       EXCEPT for the effects column.
  624.  
  625.                 Instead of using a decimal system (ie. base 10), it is more
  626.                 natural for the computer to work with hexadecimal (often
  627.                 abbreviated to simply 'Hex') - numbers which operate in base
  628.                 16. The first 9 numbers in hex are denoted by '1' to '9' and
  629.                 the next 6 are denoted by 'A' to 'F'. So if you count in hex,
  630.                 it will be as follows: (0), 1, 2, 3, 4, 5, 6, 7, 8, 9, A, B,
  631.                 C, D, E, F, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 1A, 1B,
  632.                 1C, 1D, 1E, 1F, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 2A etc.
  633.  
  634.                 To convert a hex number to decimal, multiply the 'tens' column
  635.                 by 16 and add the value of the second column. ie. 32 Hex =
  636.                 3*16+2 = 50 decimal. 2A hex = 2*16+10 = 42. (because A = 10)
  637.                 The maximum number that you can represent with two Hex digits
  638.                 is FF = 255 decimal.
  639.  
  640.                 Hope that this makes SOME sense :)
  641.  
  642.         Effects.
  643.  
  644.           Axx   Set Speed.
  645.  
  646.                 I prefer to think of this command as "Set Frames per Row".
  647.                 Normally, the tracker operates at around 50 frames a
  648.                 second. If the rows were played at this speed, then a huge
  649.                 amount of space would be required to enter the pattern data.
  650.                 Instead, setting the 'speed' of the song will cause the
  651.                 tracker to wait on the current row for 'xx' frames. Hence,
  652.                 setting the speed at 50 (decimal = 32hex) will cause each
  653.                 row to last about a second - quite a long time! The default
  654.                 is A06. The initial speed can be set in the variables
  655.                 screen on F12.
  656.  
  657.                 If two Axx commands are given in the same row, then the
  658.                 command in the higher channel (by number) will take effect.
  659.  
  660.           Bxx   Jump to order.
  661.  
  662.                   Causes the song to jump to order xx (hex). This is often
  663.                   used to create looping songs.
  664.  
  665.                   If two Bxx commands are given, then the command in the
  666.                   higher channel will take effect.
  667.  
  668.           Cxx   Break to row.
  669.  
  670.                   The Command Cxx signifies the end of the current pattern,
  671.                   and also that the next pattern should be played from row
  672.                   xx (hex)
  673.  
  674.                   If two Cxx commands are given... you know :)
  675.  
  676.           D0x   Volume slide down
  677.  
  678.                   The volume slide down command causes the volume of the
  679.                   note to be reduced by x for each frame after (for that
  680.                   row). ie. If you have a note at volume 64, with command
  681.                   D01 and speed A06, then the final volume will be 64-5=59.
  682.                   A note at volume 32 with command D02 at speed A05 will
  683.                   result in a volume of 24.
  684.  
  685.                   For greater S3M compatibility, D0F will cause the volume
  686.                   to drop by 15 EVERY frame, instead of just off-note frames.
  687.  
  688.                   Here's a full frame-by-frame description which should provide
  689.                   greater understanding:
  690.  
  691.                         At 'speed' 4:
  692.                          C-4 01 .. D04
  693.  
  694.                   What this does is:
  695.                     Frame 1: Plays C-4 with instrument 1
  696.                     Frame 2: Lowers the volume by 4
  697.                     Frame 3: Lowers the volume by 4
  698.                     Frame 4: Lowers the volume by 4
  699.  
  700.                   The next frame will be controlled by the next row of
  701.                   information.
  702.  
  703.           Dx0   Volume slide up.
  704.  
  705.                   Operates exactly the same way as D0x, but slides the
  706.                   volume up by 'x'. Volumes cannot exceed 64 (checked
  707.                   and limited internally).
  708.  
  709.                   For greater S3M compatibility, DF0 will cause the volume
  710.                   to rise by 15 EVERY frame, instead of just off-note frames.
  711.  
  712.           DFx   Fine volume slide down.
  713.  
  714.                   Takes the volume down by x at the start of the row.
  715.  
  716.           DxF   Fine volume slide up.
  717.  
  718.                   Takes the volume up by x at the start of the row.
  719.  
  720.           Exx   Pitch slide down
  721.  
  722.                   The pitch will slide down with speed xx (hex). In linear
  723.                   frequency mode, a pitch slide down by a particular value
  724.                   will always cause the same "pitch interval" - this does
  725.                   not occur in Amiga frequency mode. Valid ranges for xx
  726.                   are between 0 and 0DFh (as > 0E0h will be interpreted as
  727.                   fine slides)
  728.  
  729.           EFx   Fine pitch slide down
  730.  
  731.                   Slides the pitch down by x at the start of the row.
  732.  
  733.           EEx   Extra fine pitch slide down
  734.  
  735.                   Same as EFx, but 4 times finer. (ie. EE4 is equivalent to
  736.                   EF1)
  737.  
  738.           Fxx   Pitch Slide up
  739.           FFx   Fine Pitch slide up
  740.           FEx   Extra fine pitch slide up
  741.  
  742.                   Operates in the same manner as the Exx commands, but
  743.                   slides the pitch up. If the pitch gets 'too high', then
  744.                   the channel is turned off.
  745.  
  746.           Gxx   Portamento to note.
  747.  
  748.                   This command requires 2 parameters: A note to slide to
  749.                   and a speed. Example:
  750.  
  751.                         C-4 01 ∙∙ .00
  752.                         G-4 01 ∙∙ G08
  753.                         ∙∙∙ ∙∙ ∙∙ G00
  754.                         ∙∙∙ ∙∙ ∙∙ G00
  755.  
  756.                   This will cause the note C-4 to slide to G-4 with speed 8.
  757.  
  758.                   You *CAN* change the sample that the note is sliding to.
  759.                   It is a good idea to make sure that the C5Speed of the
  760.                   samples is similar, if you want to try this! The new sample
  761.                   will play from it's beginning.
  762.  
  763.           Hxy   Vibrato with speed x, depth y
  764.  
  765.                   Causes the frequency to osciallte with depth 'y' at speed
  766.                   'x' which causes an interesting effect. Don't get carried
  767.                   away with it though! If you specify EITHER x or y as 0, then
  768.                   the previous value will be used.
  769.  
  770.           Ixy   Tremor with ontime x, offtime y.
  771.  
  772.                   Causes the volume of the instrument to remain normal for
  773.                   x frames, then sets the volume to 0 for y frames.
  774.  
  775.           Jxy   Arpeggio with halftones x, y.
  776.  
  777.                   This causes the note to quickly cycle through three notes -
  778.                   the note playing, a note x halftones above, and a note y
  779.                   halftones above. This causes an effect similar to old
  780.                   C-64 chords.
  781.  
  782.                   Example: C-4 01 ∙∙ J47 will cause the notes C-4, E-4 and
  783.                   G-4 to be cycled.
  784.  
  785.           Kxx   Dual command: Vibrato + Dxx (Volume slide)
  786.  
  787.                   Note: The vibrato could have been set with either Hxx or
  788.                         Uxx
  789.  
  790.           Lxx   Dual Command: G00 + Dxx (Portamento to and Volume slide)
  791.  
  792.           Mxx   Set channel volume
  793.  
  794.                   Each channel has a volume range from 0->40h. The lower
  795.                   the value, the softer the notes in the channel. This
  796.                   command is convenient for making 'echoes'... you won't have
  797.                   to modify the echoing channel from the original, except
  798.                   for placing a M20 at the top of it!
  799.  
  800.                   Values greater than 40h are ignored at playtime.
  801.  
  802.           N0x, Nx0, NFx, NxF  Slide channel volume commands
  803.  
  804.                   These commands work in the same manner as the slide
  805.                   volume commands, but operate on the channel volume,
  806.                   rather than directly on the note volume.
  807.  
  808.           Oxx   Set sample offset.
  809.  
  810.                   This will cause a sample to be played from offset yxx00h.
  811.                   This is useful to skip past the first part of a sample
  812.                   which may have a loud hit, or to start a speech sample
  813.                   half way through.
  814.  
  815.                   If you specify a value PAST the end of a sample, then the
  816.                   command is ignored.
  817.  
  818.                   The "y" part of yxx00h is set with command "SAy"
  819.  
  820.                   Example:
  821.                         ... .. .. SA5
  822.                         C-4 01 .. O10
  823.  
  824.                   This will play note C-4, instrument 1 at offset 51000hex
  825.  
  826.                   Note to programmers: Oxx for 16-bit samples will move
  827.                   to the xx00h*2 position in the sample - ie. the 'xx00th'
  828.                   sample.
  829.  
  830.           P0x, Px0, PFx, PxF  Slide panning commands.
  831.  
  832.                   These work in the same maner as the slide volume
  833.                   commands, but operate on the channel panning. P0x slides
  834.                   the panning right, while Px0 slides the panning left.
  835.  
  836.           Qxy   Retriggers a note after y frames with volume modifier x.
  837.  
  838.                   This will cause a sample to be replayed from it's
  839.                   beginning after every y frames. 'x' can be any of the
  840.                   following:
  841.  
  842.                         Value           Effect on volume each retrig.
  843.                          0                No change
  844.                          1                  -1
  845.                          2                  -2
  846.                          3                  -4
  847.                          4                  -8
  848.                          5                  -16
  849.                          6                  *2/3
  850.                          7                  *1/2
  851.                          8                No change
  852.                          9                  +1
  853.                          A                  +2
  854.                          B                  +4
  855.                          C                  +8
  856.                          D                  +16
  857.                          E                  *3/2
  858.                          F                  *2
  859.  
  860.           Rxy   Tremelo with speed x, depth y
  861.  
  862.                   This command acts similarly to the vibrato command, but
  863.                   affects the note volume, instead of the pitch. If you specify
  864.                   EITHER x or y as 0, then the previous value will be used.
  865.  
  866.           S3x   Sets vibrato waveform to x
  867.           S4x   Sets tremelo waveform to x
  868.           S5x   Sets panbrello waveform to x
  869.  
  870.                   Values for x: 0 = sine wave
  871.                                 1 = square wave
  872.                                 2 = Ramp down
  873.                                 3 = Random!
  874.  
  875.           S70   Past note cut
  876.           S71   Past note off
  877.           S72   Past note fade
  878.  
  879.                   With the loss of 1-1 correspondence of editing channels
  880.                   to internal playing channels, these commands provide
  881.                   control over notes that have already been played by a
  882.                   channel.
  883.  
  884.                    Example:
  885.                         Consider the following situation, where instrument
  886.                         1, notes C-4 & D-4 map to a looped sample, and the
  887.                         New Note Action is set to continue.
  888.  
  889.                         C-4 01 64 .∙∙
  890.                         D-4 01 64 .∙∙
  891.                         E-4 01 64 .∙∙ <--- Use S70 here!
  892.  
  893.                   Ordinarily, control would be lost over C-4 and D-4, but
  894.                   using command S70 at the point indicated, the notes C-4
  895.                   and D-4 would be stopped immediately when the note E-4
  896.                   plays.
  897.  
  898.                   Similarly, note off commands and Fadeout commands can
  899.                   also be issued.
  900.  
  901.                   Note: You *MUST* be in instrument mode for these
  902.                         to have any significance.
  903.  
  904.           S6x   Pattern delay for x ticks.
  905.  
  906.           S73   Set NNA to note cut
  907.           S74   Set NNA to continue
  908.           S75   Set NNA to note off
  909.           S76   Set NNA to note fade
  910.  
  911.                   These options allow you to override the default NNA for a
  912.                   particular NOTE (ie. it does not affect the instrument)
  913.                   See section 2.5 for an explanation of NNAs.
  914.  
  915.                   Note: You *MUST* be in instrument mode for these to have
  916.                         any effect.
  917.  
  918.           S77   Turn Volume envelope off.
  919.  
  920.                   Stops the processing of the volume envelope. This is for the
  921.                   times that you don't want to use the volume envelope that
  922.                   you've created.
  923.  
  924.           S78   Turn volume envelope on.
  925.  
  926.                   Sometimes, you'll decide that it's better not to use the
  927.                   volume envelope for most cases, but you may just want to
  928.                   use it a few times - this is the command that lets you
  929.                   do that!
  930.  
  931.                   Note: You *MUST* be in instrument mode for this to work.
  932.  
  933.           S8x   Set panning position
  934.  
  935.                   Set panning position, S80 is leftmost, S8F is rightmost.
  936.                   This is an obsolete command, provided only for ST3
  937.                   compatibility. Use command Xxx instead.
  938.  
  939.           S91   Set surround sound!
  940.  
  941.                   For those of you who are lucky enough to have a dolby
  942.                   surround sound decoder (myself not included - so if ya
  943.                   wanna send me something.....), this *should* cause the
  944.                   sound to come from the surround speaker. This is a
  945.                   pseudo-panning command, and issuing either Xxx or S8x
  946.                   will cause the surround sound to be reset.
  947.  
  948.                   If you try and play Surround Sound on a GUS, Interwave
  949.                   or AWE32, it will be played as a central pan.
  950.  
  951.           SAy   Set high-offset. Check Oxx for an example.
  952.  
  953.           SB0   Set loopback point
  954.           SBx   Loop x times.
  955.  
  956.                   This pattern space-saving feature will cause the pattern
  957.                   to be looped x times back to the last SB0. Note that you
  958.                   can only loop within the pattern! Also, each channel has
  959.                   it's own loop-back information... so you HAVE to have the
  960.                   SB0 and SBx in the same channel for it to operate.
  961.  
  962.           SCx   Note cut after x frames
  963.  
  964.                   This will cause a note to be immediately stopped after x
  965.                   frames. It is similar to issuing a "^^^" in the note column,
  966.                   just that it has a finer control over timing.
  967.  
  968.           SDx   Note delay for x frames
  969.  
  970.                   Actually, this command works like "interpretation" delay
  971.                   for x frames. Any data - note, sample/instrument or volume
  972.                   in the channel will not be interpreted until x frames into
  973.                   the row.
  974.  
  975.           SEx   Pattern delay for x rows
  976.  
  977.                   This will cause a "pause" on the row for effectively x rows
  978.                   longer.
  979.  
  980.                   Note that if TWO pattern delay commands are issued, then
  981.                   the only the command in the higher channel will be considered.
  982.  
  983.           Txx   Set tempo to xx
  984.  
  985.                  Valid ranges are between 20h and 0FFh. The higher the
  986.                  value, the faster the playback. This essentially
  987.                  determines the time length of each frame, by the following
  988.                  formulas:
  989.                                Frames per minute = 24*Tempo
  990.                  equivalently:
  991.                                Frames per second = 0.4*Tempo
  992.  
  993.           T0x   Tempo slide down
  994.           T1x   Tempo slide up
  995.  
  996.                 Tempo slides up and down are used to smoothly modify the
  997.                 speed of the song. The tempo is modified by ±x every
  998.                 non-row frame.
  999.  
  1000.           Uxy   Fine vibrato with speed x, depth y
  1001.  
  1002.                  Same as vibrato, but 4 times finer in depth.
  1003.  
  1004.           Vxx   Set Global volume
  1005.  
  1006.                  Valid ranges are between 0 and 80h. All notes playing are
  1007.                  affected by this change.
  1008.                  Values greater than 80h are ignored at playtime.
  1009.  
  1010.           W0x, Wx0, WFx, WxF  Slide global volume
  1011.  
  1012.                  Similar to the Dxx commands, but operate on the global
  1013.                  volume. Useful when fading out songs.
  1014.  
  1015.           Xxx   Set panning position
  1016.  
  1017.                  Sets the panning position anywhere from left to right (X00
  1018.                  is left, XFF is right).
  1019.  
  1020.           Yxy   Panbrello with speed x, depth y.
  1021.  
  1022.                  What the hell is panbrello? Well, it's a word that I coined
  1023.                  late one night after a friend suggested that there should
  1024.                  be a random pan position command. I decided.. why not - I'll
  1025.                  make the vibrato/tremelo equivalent of panning! And so you
  1026.                  have here, 'panbrello.' What this does is instead of
  1027.                  oscillating frequency (pitch) or volume, it oscillates the
  1028.                  panning position about the 'set' panning position for a
  1029.                  channel. This is for you techno freaks out there who want
  1030.                  another function to stuff around with! :)
  1031.  
  1032.                  The random pan position can be achieved by setting the
  1033.                  waveform to 3 (ie. a S53 command). In this case *ONLY*, the
  1034.                  speed actually is interpreted as a delay in frames before
  1035.                  another random value is found. so S14 will be a very QUICK
  1036.                  panbrello, and S44 will be a slower panbrello. With any
  1037.                  other waveform, the higher the value for x, the faster the
  1038.                  panbrello, like vibrato and tremelo. If you don't know what
  1039.                  I'm talking about, check out the stereo-indicators on the
  1040.                  info page (don't forget that you have to be in stereo mode!)
  1041.  
  1042.                  If you specify EITHER x or y as 0, then the previous value
  1043.                  will be used.
  1044.  
  1045.          5) Editing Functions
  1046.  
  1047.              For a complete list of available functions, check the help screen
  1048.              for the pattern editor (on F1)
  1049.  
  1050.            Ctrl-Backspace       IMPORTANT! This one will save you a lot of
  1051.                                 frustration - it's a 10-stage listed Undo
  1052.                                 function!
  1053.  
  1054.            Grey Plus    Advance to next pattern
  1055.            Grey Minus   Goto previous pattern
  1056.            Shift-GPlus  Advance 4 patterns
  1057.            Shift-GMinus Go back 4 patterns
  1058.            Ctrl-GPlus   Go to the next order's pattern
  1059.            Ctrl-GMinus  Go to the previous order's pattern
  1060.  
  1061.            Alt-Delete   Remove an entire row from the pattern
  1062.            Alt-Insert   Insert an entire row into the pattern
  1063.  
  1064.            '.'          erase data.
  1065.            Space        will enter the previous data for that column.
  1066.            '4'          play the note under the cursor.
  1067.            '8'          play entire row.
  1068.            Ctrl-F6      play pattern from the current row.
  1069.            Ctrl-F7      Set playback mark - this will be the position that
  1070.                         subsequent playback will occur when you press F7.
  1071.                         Remove the mark by pressing Ctrl-F7 on the row
  1072.                         that is already 'marked.'
  1073.  
  1074.            Alt-0 -> 9   Quick select "skip value"
  1075.                         The skip value is the number of rows that the
  1076.                         editor advances by when a note is entered - this
  1077.                         makes it easy to enter notes on alternate rows
  1078.                         (press alt-2 first!)
  1079.  
  1080.                         If the skip value is 0, then the editor will
  1081.                         advance to the next channel (making it easier to
  1082.                         enter chords)
  1083.  
  1084.                         If the skip value is 0, AND template mode is on,
  1085.                         then entering a note will cause the editor to
  1086.                         advance by the length of the template block.
  1087.  
  1088.            Alt-Enter     Store current pattern in memory
  1089.            Alt-Backspace Restore current pattern
  1090.  
  1091.          6) Block Functions
  1092.            Alt-B        Mark top left of block
  1093.            Alt-E        Mark bottom right of block
  1094.            Alt-L        Mark entire column (channel)
  1095.            Alt-L*2      Mark entire pattern
  1096.            Alt-D        Mark the minor row hilight number of rows. Pressing
  1097.                         this repeatedly doubles the length of the block.
  1098.                         eg. Pressing Alt-D once may mark out 16 rows,
  1099.                         pressing it twice will mark 16 rows.
  1100.  
  1101.            Alt-A        Transpose all the notes in the block a semitone
  1102.                         down If no block is marked, then the current note
  1103.                         will be transposed a semitone down.
  1104.            Alt-C        Copy marked block into the clipboard
  1105.            Alt-F        Double the length of the selected block
  1106.            Alt-G        Halve the length of the selected block
  1107.            Alt-I        Toggle Template mode... read part 8
  1108.            Alt-J        Volume Amplifier... modify the volume controls
  1109.                         between 0 and 200%
  1110.            Alt-K        Slide volume... if you want to manually control a
  1111.                         fadeout, or fadein, then set the volumes at the
  1112.                         extreme ends of the blocks, then press Alt-K ONCE!
  1113.            Alt-K*2      Remove all volume controls in the selected block
  1114.            Alt-M        Mix clipboard with pattern data.. try it out, and
  1115.                         you'll understand (it's like an advanced paste
  1116.                         command - it'll only copy the data IF there is nothing
  1117.                         on the row it is copying to.)
  1118.                         Pressing this two times will copy the data if there's
  1119.                         nothing in the same FIELD (not just same row).
  1120.            Alt-N        Toggle Multichannel mode.. Multichannel mode allows
  1121.                         you to select for each channel whether it should be
  1122.                         part of the multichannel list. If you enter a note
  1123.                         while on a channel which is in the multichannel
  1124.                         list, then the editor will advance to the next
  1125.                         channel.
  1126.            Alt-N*2      Multichannel menu.
  1127.            Alt-O        Overwrite pattern data with clipboard. Like paste,
  1128.                         but without the "insert" part :)
  1129.            Alt-P        Paste clipboard into pattern at current position
  1130.            Alt-Q        Transpose all the notes in the block a semitone up
  1131.                         If no block is marked, then the current note will
  1132.                         be transposed a semitone up.
  1133.            Alt-S        Set all the instrument (sample) values to the
  1134.                         current instrument (sample) within a block
  1135.            Alt-U        Unmark block / release clipboard from memory.
  1136.            Alt-V        Set all the volume controls to the current
  1137.            Alt-W        Remove all volumes not associated with a note/inst
  1138.            Alt-X        Slide command value. Similar to Alt-K (slide
  1139.                         volume). This command can be convenient to slide
  1140.                         the panning from one position to another, or to
  1141.                         slide global volume effects, channel volume, sample
  1142.                         offsets... whatever...
  1143.  
  1144.            Alt-X*2      Erase all effect data in the selected block!
  1145.            Alt-Y        Swap selected block with a samesized/shaped block
  1146.                         starting at the current position. Swap blocks
  1147.                         CANNOT overlap.
  1148.            Alt-Z        Cut current block.
  1149.                         Warning: If you don't have enough memory, the
  1150.                         current block WILL be erased, although there is no
  1151.                         record of it in the clipboard....
  1152.  
  1153.          7) Track View functions
  1154.  
  1155.             Sometimes you just want to know what you've put in those tracks
  1156.             that are currently off the screen... these functions allow you
  1157.             to do just that!
  1158.  
  1159.             Alt-T       Cycle Track view mode.
  1160.             Alt-R       Remove all track views
  1161.             Alt-H       Remove track view divisions (allows you to view 36
  1162.                         channels!)
  1163.             Ctrl-0      Remove current track from track view
  1164.             Ctrl-1->5   Quick select a track view for current channel.
  1165.  
  1166.          8) Templates
  1167.  
  1168.             Templates are an invention to make entering repeated
  1169.             'sequences' easier. Often, you may want to enter a note with
  1170.             the same effects following each note. eg.
  1171.  
  1172.                 C-4 01 00 D10   }
  1173.                 ∙∙∙ ∙∙ ∙∙ D00   }
  1174.                 ∙∙∙ ∙∙ ∙∙ D00   } Enter this....
  1175.                 ∙∙∙ ∙∙ ∙∙ D00   }
  1176.                 ∙∙∙ ∙∙ ∙∙ D02   }
  1177.                 ∙∙∙ ∙∙ ∙∙ D00   }
  1178.                 D-4 01 00 D10     }
  1179.                 ∙∙∙ ∙∙ ∙∙ D00     }
  1180.                 ∙∙∙ ∙∙ ∙∙ D00     }
  1181.                 ∙∙∙ ∙∙ ∙∙ D00     }
  1182.                 ∙∙∙ ∙∙ ∙∙ D02     }
  1183.                 ∙∙∙ ∙∙ ∙∙ D00     } Use the templates to enter this!
  1184.                 E-4 01 00 D10     }
  1185.                 ∙∙∙ ∙∙ ∙∙ D00     }
  1186.                 ∙∙∙ ∙∙ ∙∙ D00     }
  1187.                 ∙∙∙ ∙∙ ∙∙ D00     }
  1188.                 ∙∙∙ ∙∙ ∙∙ D02     }
  1189.                 ∙∙∙ ∙∙ ∙∙ D00     }
  1190.                 etc..
  1191.  
  1192.             With templates, this can be done by entering the first 'block',
  1193.             then marking it and copying it into the clipboard (using
  1194.             Alt-C). Toggle the template mode by pressing Alt-I to Template:
  1195.             Overwrite, then go to the start of the second block, and press
  1196.             the key for D-4 (normally X). The whole block will be filled
  1197.             in! This is easiest to understand if you print this section out
  1198.             and try it in the editor.
  1199.  
  1200.             The templates can also include other notes, which will be
  1201.             translated accordingly, and can span several channels.
  1202.  
  1203.             A VERY neat use of templates is to enter multiple notes:
  1204.             (eg. octaves, different samples, left/right stereo sample
  1205.              pairs...)
  1206.  
  1207.                 C-4 01 32 .00    C-5 02 32 .00  } Enter this...
  1208.                 G-4 01 32 .00    G-5 02 32 .00      }
  1209.                 D#4 01 32 .00    D#5 02 32 .00      }
  1210.                 C-4 01 32 .00    C-5 02 32 .00      } And use Templates here!
  1211.                 G-4 01 32 .00    G-5 02 32 .00      }
  1212.                 D#4 01 32 .00    D#5 02 32 .00      }
  1213.  
  1214.             Templates can span more than one row and one channel - you
  1215.             can template blocks of any size.
  1216.  
  1217.   2.3  Order List, Channel panning & volume. (F11)
  1218.           After creating patterns, the tracker has to know what order to
  1219.           play them back in. The order list is the means by which this is
  1220.           done. Another wording of the Order List which may make it simper
  1221.           to understand is the "Pattern sequence list." ie. the sequence in
  1222.           which the patterns are played back.
  1223.           Simply enter the patterns into the list in the order they
  1224.           should be played, and voila! - you have a new piece of music.
  1225.           (as long as you have something in the patterns, of course!). The
  1226.           "---" marks the end of a song, and "+++" is simply a marker which
  1227.           is skipped (for ST3 support). Pressing N on a row will enter the
  1228.           previous order's pattern+1. eg. Entering 000, then pressing 'n' 5
  1229.           times will enter 000 (which you typed), then 1, 2, 3, 4 and 5.
  1230.  
  1231.           Initial channel panning and volume is the panning and volume that
  1232.           each channel is set to whenever the song is reset. It will not
  1233.           affect anything currently playing. On the panning list, you can
  1234.           also mute channels by pressing spacebar. Pressing S will select
  1235.           the initial 'panning' as surround sound. The initial channel
  1236.           volumes can be accessed by pressing F11 once you are already on
  1237.           the Order list and channel panning screen.
  1238.  
  1239.   2.4  Samples
  1240.  
  1241.   2.4.1 Information about Samples
  1242.          Samples are the raw sound information. They can be of *anything*
  1243.          you like - normally a musical instrument of some sort, but you
  1244.          could have voice samples or sound effects too!
  1245.  
  1246.          Impulse Tracker accepts 8-bit or 16-bit samples. It can import
  1247.          several different formats, which are detailed in section 1.4
  1248.  
  1249.          If you import a 16-bit file which isn't recognised, you have to
  1250.          use the following steps:
  1251.  
  1252.                 1) Press Alt-A (to convert signed/unsigned) and convert the
  1253.                    data.
  1254.                 2) Press Alt-Q (to toggle to 16-bit) and DON'T convert
  1255.                    the data
  1256.                 3) If the sample is unsigned, you will then need to convert
  1257.                    it AGAIN by pressing Alt-A (and selecting yes to convert
  1258.                    data)
  1259.  
  1260.          Samples have the following information: A name, a default volume,
  1261.          a global volume, vibrato information, loop information and a
  1262.          frequency
  1263.  
  1264.          The default volume of a sample is the volume at which a sample is
  1265.          played, IF no volume is specifier.
  1266.  
  1267.          The global volume is the modifier by which ALL occurrences of the
  1268.          current sample are scaled by.
  1269.  
  1270.          Vibrato information - the vibrato speed is the speed at which the
  1271.          vibrato oscillates. Although it is possible to enter values 0->64,
  1272.          the best effects are obtained by entering values around 24-48. The
  1273.          vibrato depth determines the maximum deviation from the mean
  1274.          frequency. The vibrato rate determines how quickly the vibrato is
  1275.          applied. Higher values cause the vibrato to be applied more
  1276.          quickly, a low value like 1 can take many seconds before the
  1277.          vibrato is noticed.
  1278.  
  1279.          Loop information. Samples can be looped to provide a continuous
  1280.          sound. The loop beginning and the loop end must be specified, and
  1281.          the loop method (either forwards or ping pong) must be set.
  1282.          (Toggle by pressing spacebar). The loop boundaries can also be
  1283.          modified using '+' or '-' (even while the sample is playing!)
  1284.  
  1285.          Sustain loops are the loops used as long as no note off command is
  1286.          encountered. In the sample tester, releasing a key provides a note
  1287.          off command to the player. Once a note off command is issued, the
  1288.          normal loops apply. The idea behind sustain loops originated after
  1289.          listening to some synthesizers which provided 'after note' sounds
  1290.          - like fingers lifting off guitar strings. With sustain loops, you
  1291.          can have a guitar sound in the sustain loop, with the end of the
  1292.          sample containing the 'finger off' sound. This way, you should be
  1293.          able to achieve a new degree of realism. The best way to do this
  1294.          is to have a reasonably small sustain loop, and a section after it
  1295.          containing the note-off sound, possibly looped. (The sustain loop
  1296.          should ideally be less than 1/20th of a second, so that you have
  1297.          reasonably good control over the timing of the note-off, but this
  1298.          is not always possible)
  1299.  
  1300.            Example: If you have a sample with no sample loop, but a sustain
  1301.                     loop around bytes 19000-20000, then while no noteoff
  1302.                     command is issued, then the sample will loop between
  1303.                     19000 and 20000. Once a noteoff command is received,
  1304.                     then the sample will be played until it's end and then
  1305.                     will stop.
  1306.  
  1307.                     If you have a sample of length 64000 with a ping pong
  1308.                     loop around the whole sample (0->64000) and a sustain
  1309.                     ping pong loop around bytes 20000-30000, then the
  1310.                     sample will loop backwards and forwards between 20000
  1311.                     and 30000 until a noteoff command is received, after
  1312.                     which it will loop between 0 and 64000 (backwards and
  1313.                     forwards).
  1314.  
  1315.            It is recommended that you do NOT have a ping pong sustain loop
  1316.            going to a forwards loop or no loop and that if you DO have a
  1317.            sustain loop AND a normal loop, that the sustain loop lies
  1318.            within the normal loop (for ping pong), or that the normal loop
  1319.            end is after the sustain loop end (for forward's loop) (think
  1320.            about what you're asking it to do in these cases carefully...
  1321.            it should make sense - the tracker can still handle the cases
  1322.            when this is not adhered to, but the resulting note-off effect
  1323.            can vary greatly depending on timing and pitch!)
  1324.  
  1325.          The frequency of a sample determines its pitch. The higher the
  1326.          frequency, the higher the pitch. The frequency can be doubled or
  1327.          halved by pressing Alt-Grey Plus/Minus to cause an octave
  1328.          rise/decrease. For the technically inclined out there, the
  1329.          frequency is the number of bytes per second that have to be played
  1330.          for a C-5. You can increase the frequency by one semitone by
  1331.          pressing Ctrl-Grey Plus or decrease it by a semitone with
  1332.          Ctrl-Grey Minus.
  1333.  
  1334.          To load in a sample, go to the entry in which you want to load it
  1335.          then press enter. The sample library should appear. You can test
  1336.          out any sample just by "playing" notes on the keyboard while you
  1337.          are on top of the sample. Load a sample into the sample list by
  1338.          pressing enter. Of course, if you don't have any samples, no
  1339.          samples will appear :)
  1340.  
  1341.          Where can I get samples from??
  1342.  
  1343.          You can steal ('rip') samples from modules by going to the sample
  1344.          in the sample list, then pressing Alt-O. Scream Tracker 3 samples
  1345.          can be saved by pressing Alt-T (vibrato, global volume + susloop
  1346.          information lost) or raw samples can be saved by pressing Alt-W
  1347.          (all variables lost!)
  1348.  
  1349.          Warning: Be careful where you rip samples from!! Some people don't
  1350.          welcome it at all! And in some cases, sample ripping may be a breach
  1351.          of copyright - this mainly a concern when you use commercial samples)
  1352.  
  1353.          There are also many great sample 'packs' available... try a local
  1354.          music BBS, or the bigger FTP sites.
  1355.  
  1356.          Some synthesizers have patch files (eg. Kurzweil 2000 as .KRZ) which
  1357.          are available through the internet. You can download these, and
  1358.          convert them with an appropriate utility (I recommend Convert 1.4 -
  1359.          convrt14.zip on ftp.cdrom.com/pub/demos/programs/convert and use
  1360.          it to convert the files to .S3I format - even for 16 bit samples).
  1361.          I don't know what sort of copyright these samples have. *YOU* have
  1362.          to read any text accompanying the files to find this out.
  1363.  
  1364.          Finally, you can make your OWN samples! With a sampler (eg.
  1365.          Digiplay 3.0) or with some other tracker (eg. Fast Tracker 2), you
  1366.          are able to record information through the microphone socket of
  1367.          the computer!
  1368.  
  1369.          Note: The length of a sample is *NOT* necessarily the number of bytes
  1370.          it occupies! The length quoted is the quantity of SAMPLE INFORMATION.
  1371.          If you have an 8 bit sample, then the size in bytes IS the same as
  1372.          the length. If you have a 16-bit sample, then the size in bytes
  1373.          is DOUBLE the length.
  1374.  
  1375.   2.4.2 Sample Functions
  1376.  
  1377.          Alt-A and Alt-Q provide basic sample-conversion functions. Alt-A
  1378.          will convert a sample to or from unsigned to signed format. Alt-Q
  1379.          will allow you to change a sample between 8 and 16 bits.
  1380.  
  1381.          If you want to remove the part of a sample before a loop or after the
  1382.          end of a loop, you can use Pre-loop cut sample (Alt-B) or Post-Loop
  1383.          cut sample (Alt-L)
  1384.  
  1385.          To reverse a sample, use Alt-G. This can produce interesting effects.
  1386.  
  1387.          If you are working to a size limit, check out the functions Alt-E
  1388.          and Alt-F. These functions allow you to resize the sample to whatever
  1389.          size you would like! (Note that there is a reduction in quality
  1390.          associated with a reduction in size). Alt-E will resize the samples
  1391.          WITH interpolation, Alt-F will resize the samples WITHOUT
  1392.          interpolation.
  1393.  
  1394.          To decrease the volume of a sample, the best way for 8 bit samples
  1395.          is to reduce the Sample's GLOBAL volume. For 16-bit samples, it's
  1396.          better to just attenuate the sample (ie. use Alt-M to 75%). The
  1397.          sample will retain greater quality if you follow these guidelines.
  1398.  
  1399.          Alt-M is used to amplify a sample to between 0 and 400%. The default
  1400.          value for Alt-M which appears is the maximum the sample can be
  1401.          modified without creating clipping distortions.
  1402.  
  1403.          To exchange two samples *in the sample list only*, use Alt-X. To
  1404.          swap two samples *even in the pattern data*, use Alt-S.
  1405.  
  1406.   2.5  Instruments
  1407.  
  1408.          For those who have never used a tracker before, I strongly suggest
  1409.          that you skip this section for now - learn how to 'use' samples
  1410.          first. After that, you'll should be able to understand and hopefully
  1411.          fully appreciate the power that instruments can provide.
  1412.  
  1413.          To enable instruments, go to the song variables (F12), and press
  1414.          on the "Instruments" button after then "Control" prompt. This *MUST*
  1415.          be done in order to use ANY instrument function (including special
  1416.          note effects, viz S7x).
  1417.  
  1418.          The instrument parameters are split into four screens - one for
  1419.          each of general options, volume options, panning options and pitch
  1420.          options. To select the appropriate screen, just whack enter on any
  1421.          of the four buttons at the top of the instrument list.
  1422.  
  1423.          Instruments are collections of samples (or just a single sample).
  1424.          The translation of samples is controlled by the column in the
  1425.          centre of the screen on the general options page which shows what
  1426.          note/sample pair a single instrument note will be translated to.
  1427.          Example: If you're on instrument 1, and the note translation table
  1428.          appears as such:
  1429.  
  1430.                 C-5│C-5 01
  1431.                 C#5│C-5 02
  1432.                 D-5│D-4 03
  1433.                 D#5│D#4 03
  1434.  
  1435.          Then entering "C-5 01" into a pattern will cause sample 1 to be
  1436.          played at pitch C-5, "C#5 01", wil cause sample 2, to be played a
  1437.          pitch C-5, "D-5 01" will cause Sample 3 to play at D-4, "D#5 01"
  1438.          will cause Sample 3 pitch D#4 to play... get the idea?
  1439.  
  1440.          Why would you want to combine several samples into one instrument?
  1441.          Well, one very good reason is that it makes it easier to enter
  1442.          drum parts - you no longer have to change the 'instrument' if you
  1443.          want another sample. And also, combining them into one instrument
  1444.          makes them easier to manage - you can specify a volume envelope,
  1445.          NNA or FadeOut which will apply for ALL of the samples in the
  1446.          list.
  1447.  
  1448.          Another reason is if you want a very high quality sounding
  1449.          'instrument.' If you wanted to go overboard, you could sample
  1450.          every single note on a piano separately, and set up the note
  1451.          translation table to point to each sample accordingly - you'd
  1452.          get a very, very nice sound - if you don't run out of memory
  1453.          first. Or patience :)
  1454.  
  1455.          When you save an instrument to disk, all the related samples are
  1456.          stored with it. This means that you can setup a 'drum kit' instrument,
  1457.          and to load it into another song, you only need to select that
  1458.          instrument and all the samples will be loaded for you.
  1459.  
  1460.          The Fadeout value for each instrument determines how quickly the
  1461.          volume of the instrument decays under any of the following
  1462.          conditions:
  1463.            1) NNA "FadeOut" is selected, and another note is played. (see
  1464.               later in this section for info about NNAs)
  1465.            2) The end of a volume envelope is reached.
  1466.            3) A note off command is encountered, without a volume envelope.
  1467.            4) A note off command is encountered, and the 'normal' volume
  1468.               envelope loop is on.
  1469.  
  1470.          The larger the fadeout value, the quicker the volume decays.
  1471.  
  1472.          Each instrument also has an associated volume/pan/pitch envelope!
  1473.          The volume envelope is editing by selecting the node (left/right
  1474.          arrows) then picking it up (with enter), moving it around (using
  1475.          arrows, or Alt-Arrows for quicker control), then pressing enter
  1476.          again to "put down the node". Nodes can be inserted or deleted
  1477.          (with the keys insert and delete!). Note that the envelope will
  1478.          only be used if the envelope flag is set to "on" (just below the
  1479.          envelope graph)..
  1480.  
  1481.          Remember that you have to be in instrument mode for this all to work!
  1482.  
  1483.          There are 3 pieces of information for each Envelope graph -
  1484.          the node number (hopefully obvious), the time of the node (the
  1485.          number of 'ticks' or 'frames' that elapse before the node point)
  1486.          and the value of a node (also hopefully obvious). So the x-axis
  1487.          is time, and the y-axis is volume/pan/pitch - simple, really!
  1488.  
  1489.          You can also specify envelope loops and sustain loops. These
  1490.          operate in the same manner as the sample loops, but the numbers
  1491.          refer to node numbers.
  1492.  
  1493.          The powerful feature of this tracker, though, is not the
  1494.          envelopes by themselves - it's the New Note Actions! What these
  1495.          options do is allow you to select what should happen to an
  1496.          instrument when another note is played in the same column. If NNA
  1497.          "Cut" is selected, then the previous note will immediately be
  1498.          stopped (like in all other trackers). If NNA "Continue" is
  1499.          selected, then the note will continue playing! This is especially
  1500.          useful for Drum Parts, where there may be a long-ish snare sample
  1501.          - you can go on ahead and put a bass drum in the very next row
  1502.          after it - the snare drum will still complete playing! NNA "Note
  1503.          Off" issues a note off command to a note when a new note is played
  1504.          in the channel. This is particularly useful in combination with
  1505.          volume envelopes and volume envelope sustain loops. NNA "Note
  1506.          Fade" causes the current note to fade out with the fadeout value
  1507.          when a new note is played.
  1508.  
  1509.         WARNING!!
  1510.          New Note Actions are EXTREMELY powerful, but they CAN cause
  1511.          problems if you are not careful. Selecting NNA Fade with a fade
  1512.          value of 0, or note continue with a looped sample (no volume
  1513.          envelope) or anything which can cause a quick build up of
  1514.          allocated channels can easily hang a slow computer (or even a
  1515.          quick one, for that matter!) I tried to put checks against this,
  1516.          but they always triggered too late - "past the point of no return"
  1517.          where the CPU becomes so bogged down with processing the
  1518.          information, that it can't do or try to do anything else. (The
  1519.          tracker has *MANY* calculations to do - the most time consuming
  1520.          are the mixing routines, which require the processor to process as
  1521.          many bytes as the mixing speed per second for EACH note ie. a
  1522.          mixing speed of 44kHz means that for each note playing, 44000
  1523.          calculations have to be made EVERY second... so with 64 channels
  1524.          'active' at the maximum mixing rate for a SB16, almost 3 MILLION
  1525.          calculations have to be done EVERY second to produce the sound (in
  1526.          mono)!!! (My 486 can cope with this, but my 386 just dies!)
  1527.  
  1528.         Duplicate Check Type (DCT) / Duplicate Check Action (DCA)
  1529.            DCT = Off/Note/Sample/Instrument, DCA = Cut/Off/Fade
  1530.  
  1531.          When the duplicate check type is enabled, then repetitions of the same
  1532.          instrument¬e/sample (or just repititions of the same instrument)
  1533.          pair in a particular channel will cause the previous occurence of
  1534.          the instrument¬e/sample pair to be cut or faded (depending on
  1535.          the DCA)
  1536.  
  1537.           Example: If the DCT is set to note, and DCA is set to Cut, then the
  1538.                     asterixed notes will cut out the tilda notes
  1539.         ┌───────────────┬───────────────────┬───────────────────────────────┐
  1540.         │  C-4 01 ~     │     C-4 02 ~      │   C-4 03 }                    │
  1541.         │  D-4 01       │     C-4 02 *   ~  │   D-4 03 } Nothing get's cut. │
  1542.         │  C-4 01 *     │     C-4 02     *  │   C-4 02 }                    │
  1543.         └───────────────┴───────────────────┴───────────────────────────────┘
  1544.  
  1545.         This option was included to help limit the number of active channels,
  1546.         and is especially useful for drum tracks.
  1547.  
  1548.         Another nifty application of Duplicity checks is the following
  1549.         example: You can have a separate sample for each string of a guitar
  1550.         and setup and instrument to accomodate this. Setting the NNA to
  1551.         continue, the DCT to sample and the DCA to fade (with a relatively
  1552.         quick fadeout) means that whenever you play a new note, the previous
  1553.         note will continue to play on. BUT! If a previous note of the same
  1554.         instrument has the same sample as the new note being played, then
  1555.         it will be faded out - this closely relates to what you hear when
  1556.         someone plays a guitar - when they play the same string, they have
  1557.         to put their fingers down on the string, which causes the last note
  1558.         *on that string* to fade out.
  1559.  
  1560.         I sincerely hope that these options do not cause the death of brilliant
  1561.         4 channel music - that would be a great shame! There is truly an art in
  1562.         making a decent sound in as few channels as possible! (If you're new to
  1563.         this sorta thing, then it'll grow upon you...)
  1564.  
  1565.         For interest's sake...
  1566.          Channels are turned off internally under any of the following
  1567.          conditions:
  1568.           1) The end of a sample is reached (quite obvious)
  1569.           2) When the end of a volume envelope is reached, and the final
  1570.              envelope volume is 0
  1571.           3) When the fadeout value for a channel causes it to become silent.
  1572.           4) When a duplicate note is played when DNT is set to Note and DCA is
  1573.              set to cut for the instrument.
  1574.           5) When a notecut is issued (obvious)
  1575.           6) When a channel is moved to the background (using NNAs)
  1576.              AND the volume is 0.
  1577.  
  1578.          Out of all the functions provided for the Samples and Instruments,
  1579.          perhaps the only one that requires explanation is the "Update
  1580.          Pattern Data" function. This function was written for people who
  1581.          have already written music in MOD/S3M/MTM formats, and want to
  1582.          combine their percussion parts into a single instrument. The way
  1583.          to do this is to set up the instrument->note/sample table, and
  1584.          then use the "Update Pattern Data" function. What this does is
  1585.          search through all the patterns for all occurrences of the
  1586.          note/sample pairs that appear in the instrument->note/sample
  1587.          table, and replace it with the appropriate note/INSTRUMENT pair.
  1588.          Sounds quite complicated... sorry :)
  1589.  
  1590.                 Example:
  1591.                   If you originally have the following setup
  1592.  
  1593.                 Sample 1 = Bass Drum
  1594.                 Sample 2 = Snare Drum
  1595.                 Sample 3 = Closed Hihat
  1596.                 Sample 4 = Open Hihat
  1597.  
  1598.                   And the following column within any pattern:
  1599.  
  1600.                         C-5 01 ∙∙ .∙∙
  1601.                         C-5 03 ∙∙ .∙∙
  1602.                         C-5 03 ∙∙ .∙∙
  1603.                         C-5 03 ∙∙ .∙∙
  1604.                         C-5 02 ∙∙ .∙∙
  1605.                         C-5 04 ∙∙ .∙∙
  1606.                         C-5 01 ∙∙ .∙∙
  1607.                         C-5 04 ∙∙ .∙∙
  1608.                         C-5 01 ∙∙ .∙∙
  1609.  
  1610.                   You can combine these four samples into one instrument by
  1611.                   creating the instrument->note/sample table with the
  1612.                   following entries: (say for instrument 10)
  1613.  
  1614.                         C-5│C-5 01
  1615.                         C#5│C-5 ∙∙        <--- just an empty slot...
  1616.                         D-5│C-5 02
  1617.                         D#5│C-5 ∙∙
  1618.                         E-5│C-5 03
  1619.                         F-5│C-5 04
  1620.  
  1621.                   And using the update pattern data command will produce the
  1622.                   following
  1623.  
  1624.                         C-5 10 ∙∙ .∙∙
  1625.                         E-5 10 ∙∙ .∙∙
  1626.                         E-5 10 ∙∙ .∙∙
  1627.                         E-5 10 ∙∙ .∙∙
  1628.                         D-5 10 ∙∙ .∙∙
  1629.                         F-5 10 ∙∙ .∙∙
  1630.                         C-5 10 ∙∙ .∙∙
  1631.                         F-5 10 ∙∙ .∙∙
  1632.                         C-5 10 ∙∙ .∙∙
  1633.  
  1634.   2.6  Song Variables
  1635.  
  1636.         Most of the options on this screen should be quite obvious, but they
  1637.         are explained here for clarity.
  1638.  
  1639.         Song Name - should be obvious. Shove whatever you like in here :)
  1640.  
  1641.         Inital tempo - The tempo that the piece starts with. The tempo
  1642.                        calculation is explained under the set tempo
  1643.                        command (Txx)
  1644.  
  1645.         Inital speed - The speed that the song starts with. The speed
  1646.                        calculation is explained under the set speed
  1647.                        command (Axx)
  1648.  
  1649.         Global volume - This scales all the volumes in the song. It may be
  1650.                         necessary to change this value if there is overload
  1651.                         occuring (in the form of crackles in the music) -
  1652.                         especially on the Gravis UltraSound, as it is a
  1653.                         non-mixing device, and not scaled by the mixing
  1654.                         volume.
  1655.  
  1656.         Mixing volume - This value affects mixing sound devices (ie.
  1657.                         all Sound Blaster cards + PC Speaker).
  1658.  
  1659.         Separation - The separation determines how far apart the left/right
  1660.                      panning sounds. It is suggested that for a stereo
  1661.                      system (where the speakers are relatively close together)
  1662.                      that the separation be around its maximum (ie. 128).
  1663.                      For a stereo system where the speakers are placed a
  1664.                      large distance apart, a value of 80 may suit better.
  1665.                      A suggested separation for headphones is around 40.
  1666.                      This value has no significance unless stereo playback
  1667.                      is selected.
  1668.  
  1669.         Old Effects - When Impulse Tracker was first written, some effects
  1670.                       were interpreted differently from other formats, most
  1671.                       notably vibrato. When you turn this ON, then it effects
  1672.                       will be interpreted how the used to be in ST3/MMEdit/...
  1673.                       but when it's off, it'll operate how it use to in
  1674.                       previous versions.
  1675.  
  1676.                       Differences:
  1677.                        The Vibrato (and Tremelo) used in IT is smoother than
  1678.                        how it was implemented in MOD/S3M/etc. It is updated
  1679.                        EVERY frame and hence is independant of song speed,
  1680.                        whereas the standard vibrato WAS dependant upon song
  1681.                        speed. Vibrato is two times 'deeper' with Old Effects
  1682.                        on.
  1683.  
  1684.                        Sample offset commands past the end of a sample in IT
  1685.                        were ignored, whereas with Old Effects on, the sample
  1686.                        is played from it's end point.
  1687.  
  1688.         Control - This is the option that lets you use Instruments!
  1689.                   When Control Sample is selected, then all the instrument
  1690.                   information is ignored. The query to initialise
  1691.                   instruments, if accepted, will copy all the sample
  1692.                   names to the instruments (if the samples exist) and set
  1693.                   up the Note Translation Table for each instrument to point
  1694.                   to a sample.
  1695.  
  1696.         Playback - Mono: When you select mono playback, all stereo commands
  1697.                          are essentially ignored. If you are using a SBPro,
  1698.                          selecting Mono provides a higher quality output
  1699.                          than selecting Stereo and using a central pan.
  1700.  
  1701.                    Stereo: This is the option to go for!
  1702.                            Note that stereo mode requires more processing
  1703.                            power than mono (unless you are using a hardware
  1704.                            driver)
  1705.  
  1706.         Pitch Slides - Amiga: This is the mode to choose for compatibility
  1707.                               with S3Ms, MODs, MTMs, XMs... when you select
  1708.                               amiga pitch slides, you'll often have to
  1709.                               experiment to find the adequate slide value.
  1710.  
  1711.                      - Linear: With the linear slides, a certain slide value
  1712.                                will always cause the same music "interval"
  1713.                                change. An example of what this means is if
  1714.                                you slide up a note with speed 8 (ie. F08) at
  1715.                                speed 5, then the result will be that the
  1716.                                note is raised a tone. Everytime. So a C-4
  1717.                                will rise to a D-4, C-5 will rise to a D-5.
  1718.                                (It's not like this with amiga slides! A
  1719.                                C-4 *MAY* rise to a D-4, but if it does then
  1720.                                the C-5 will rise to a note around E-5!!)
  1721.  
  1722.                                The benefit of linear slides is that if you
  1723.                                slide a pair of notes at the same speed, they
  1724.                                will maintain the same interval (pitch
  1725.                                difference) throughout. Also, if you modulate
  1726.                                (transpose) a pattern, you will not have to
  1727.                                modify any slide values.
  1728.  
  1729.         Directories - this shows the current song/sample/instrument
  1730.                       directories. If you want to save the current directories
  1731.                       as the default to have on bootup, then press enter
  1732.                       on the Save button. Note that this save function also
  1733.                       saves the palette, keyboard type, info page layout
  1734.                       and pattern editing preferences to IT.CFG
  1735.  
  1736.   2.7  Scream Tracker 3 Users
  1737.      This section is just for users of Scream Tracker 3 who would like to know
  1738.      the differences between ST3 and IT without working through the whole
  1739.      document. In a nutshell:
  1740.  
  1741.      1) Differences in use.
  1742.         a) The Order List, Panning and Variables used to be on F1. In IT,
  1743.            F1 has been reserved for the Help Screen, F11 for the order list
  1744.            and panning, F12 for the variables.
  1745.            If you REALLY do find this too inconvenient, use the command line
  1746.            switch -k to swap the interpretation of the keys F1 and F11...
  1747.            no text will be updated tho (and it does seem sorta weird!)
  1748.         b) Samples now have associated Vibrato information and a global
  1749.            volume. The global volume affects all instances of the sample
  1750.            throughout the song. This is useful when you replace a sample,
  1751.            which is at a different volume from the original - you can just
  1752.            adjust the global volumes of the samples to suit.
  1753.         d) Block functions are no longer restricted to one column. This also
  1754.            means that when you copy entire patterns, you will have to go to
  1755.            the top left of the pattern. Also, you will have to set the number
  1756.            of rows in the destination pattern to the appropriate number if
  1757.            it is different from the source.
  1758.            This difference may take some getting used to - you may often
  1759.            find yourself doing several block functions in a single columns
  1760.            when you could actually have done it across the whole block!
  1761.          * To mark blocks, you can use Alt-B and Alt-E, or Shift+Movement *
  1762.         e) In the pattern editor, the following commands have changed:
  1763.             1) Alt-T : Track View has been upgraded. Alt-T will cycle
  1764.                        through all of the possible 5 viewmethods. You can
  1765.                        use Ctrl-1 to Ctrl-5 to quick select a view, or
  1766.                        Ctrl-0 to remove a view. Press Left-Ctrl+Shift 1->4
  1767.                        to select a 'different way to edit' :)
  1768.             2) Alt-X : Pressing Alt-X once will slide the effect data value
  1769.                        in a block (useful for controlling global volume,
  1770.                        panning or sample offsets in some cases). Pressing
  1771.                        Alt-X twice will cause all of the effect data to be
  1772.                        deleted as in Scream Tracker 3
  1773.             3) Alt-K : Pressing Alt-K once will slide the volumes. Pressing
  1774.                        Alt-K TWICE will remove all volume controls in the
  1775.                        block. (Works like Alt-X, but on the volume column)
  1776.             4) Alt-I : Cycle Template control.
  1777.             5) Alt-J : Volume amplifier. Select an amplification between
  1778.                        0 and 200%.
  1779.             6) Alt-H : Now toggles view divisions on/off. Makes it possible
  1780.                        to view/edit up to 36 channels in the pattern editor!!!
  1781.             7) Alt-Z : Originally the Zap command (if pressed twice)... now
  1782.                        it is effectively a "Block Cut" command. It will
  1783.                        copy the block into the clipboard, and then wipe the
  1784.                        block clean.
  1785.             8) Alt-V : Will set all the volumes in the block to the default.
  1786.             9) Alt-W : Will remove ALL volumes not attached to a
  1787.                        note/instrument Therefore, the old Alt-V command can
  1788.                        be simulated using Alt-V then Alt-W. The reason for
  1789.                        doing this was so that the Alt-K, Alt-W combination
  1790.                        would slide all the volumes with notes/instruments
  1791.                        associated.
  1792.         f) There is no chord edit feature in IT. I considered the chord
  1793.            edit feature of ST3 useless and a bad influence on new trackers :)
  1794.         g) Patterns can be from 32 to 200 rows! (Under Pattern edit config
  1795.            on F2, or Ctrl-F2)
  1796.         h) Pressing spacebar in the pattern editor will cause the previously
  1797.            entered note/instrument/volume/efffect/effectvalue to be entered.
  1798.            Quite convenient. Hopefully.
  1799.         i) Alt-F10 now solos a channel instead of toggling all of the
  1800.            channels on/off. On the InfoPage, you can use 's' to solo
  1801.            channels, and 'q' to toggle channels. I felt that this was more
  1802.            usable than the original.
  1803.         j) The infopage itself has become upgraded... press PgUp/PgDn to
  1804.            cycle through view methods, "Insert" to add a window, "Delete"
  1805.            to remove the currently highlighted window, Tab to move between
  1806.            windows, Alt-Up/Down to move the base of the window up/down.
  1807.         k) To increase the sample frequency by an octave in the sample
  1808.            list, press Alt-Grey '+' or Alt-Grey '-' to decrease the
  1809.            frequency by an octave. To change it by semi-tones, use Ctrl-Grey
  1810.            '+' and Ctrl-Grey '-'
  1811.         l) The Sample library is accesible from all screens in the program
  1812.            by pressing Ctrl-F3. The Instrument library is accesible on
  1813.            Ctrl-F4.
  1814.         m) Each channel has an associated volume. Echoes can be created by
  1815.            just copying one channel onto another, then setting the "channel
  1816.            volume" (Command Mxx)
  1817.         n) When channels are muted, all commands are still interpreted, but
  1818.            the notes aren't played. What this means is that commands such
  1819.            as Axx, Bxx, Cxx, SBx, Vxx, Txx, Mxx, Nxx will be processed even
  1820.            if they are in a muted channel.
  1821.         o) Pressing Ctrl-Grey Plus and Ctrl-Grey Minus in the pattern
  1822.            editor will go to the next/previous pattern according to the
  1823.            order list!
  1824.         p) Samples have sustain loops + Ping Pong loops supported
  1825.         q) Note off command & Note cut command implemented... Note cut is
  1826.            exactly like ST3's ^^^ (and appears like it too!) Note off
  1827.            appears as "═══" and releases sustain points.
  1828.         r) You can enter panning values (between 0 and 64) in the volume
  1829.            column. Do this by pressing '`' to toggle between entry of
  1830.            panning/volume values.
  1831.         s) You can use samples >64k and 16 bit samples!!!
  1832.         t) When you use a skip value of 0, the cursor will move across to
  1833.            the next channel. This is a very convenient way to enter chords,
  1834.            especially when combined with the multi-channel selection (whack
  1835.            Alt-N twice)
  1836.  
  1837.      2) Differences in interpretation of notedata.
  1838.         a) Global volume changes will affect ALL of the notes playing. In
  1839.            ST3, global volume changes only affected new notes. The range
  1840.            for the global volume command is from 0 to 80h
  1841.         b) If you specify an instrument without a note, then in ST3, the
  1842.            volume is set to the default volume. In IT, the volume will be
  1843.            set to the default volume *IF* the instrument specified is the
  1844.            SAME as the currently playing instrument. Otherwise, the new
  1845.            sample will be played from it's beginning.
  1846.         c) Command X (Set panning, not REALLY implemented in ST3) now has
  1847.            range from 0 to 0FFh.
  1848.         d) Command C (Break to row) now works in HEX. This is so that you
  1849.            can jump to any row in the (next) pattern.
  1850.         e) New commands:
  1851.                M:   Set channel volume
  1852.                N:   Slide channel volume
  1853.                P:   Slide panning
  1854.                S5x: Set panbrello waveform and reset panbrello position
  1855.                S6x: Pattern delay for x frames.
  1856.                S7x: Instrument related controls (8 different controls here)
  1857.                S91: Surround sound on!
  1858.                SAy: Set high offset
  1859.                T0x: Tempo slide down
  1860.                T1x: Tempo slide up.
  1861.                W:   Global volume slide.
  1862.                X:   Set pan position.
  1863.                Yxy: Panbrello
  1864.         f) If you use the portamento to command (Gxx) to a different sample
  1865.            in ST3, the sample offset is undetermined. In Impulse Tracker,
  1866.            the sample will be played from it's start.
  1867.         g) The commands Hxx and Uxx will cause a vibrato half the depth
  1868.            of ST3 if "Old Effects" option is OFF and the vibrato in IT is
  1869.            also smoother than the vibrato in ST3.
  1870.  
  1871.      3) The greatest difference is the implementation of instruments. Read
  1872.         section 2.5 for more information.
  1873.  
  1874.      4) Saving S3M modules.
  1875.  
  1876.         The following guidelines have to be followed to compose 100%
  1877.         compatible S3M modules.
  1878.  
  1879.           General Stuff
  1880.             1) *Pitch slide mode MUST be amiga.
  1881.             2) *All initial channel volumes MUST be 64
  1882.             3) *No instruments functions can be used. If you ARE in
  1883.                 instrument mode, however, Impulse Tracker will translate
  1884.                 the pattern data according to the Note Translation Tables.
  1885.             4) The song message is *NOT* saved in S3M format.
  1886.  
  1887.           Pattern stuff
  1888.             1) *The total number of patterns MUST NOT exceed 100.
  1889.             2) *The number of rows in each pattern MUST be 64
  1890.             3) *Data is only translated within the first 16 channels.
  1891.             4) *All notes must lie within the range of C-1 to B-8
  1892.             5)  Several commands will not be interpreted by a standard
  1893.                 S3M player (viz. Mxx, Nxx, Pxx, S5x, S6x, S7x, S91, SAy, Wxx,
  1894.                 Yxx).
  1895.                 Also, you should have Old Effects (on the variable list)
  1896.                 put to *ON* if you want to write S3M files.
  1897.             6) *Panning controls in the volume column are NOT stored.
  1898.  
  1899.           Sample stuff
  1900.             1) *No sustain or ping pong loops can be used
  1901.             2) *No sample vibrato can be used
  1902.             3) *The sample global volume must be 64.
  1903.  
  1904.             4) The Scream Tracker 3 module format supports 16 bit samples
  1905.                 and samples >64k although the actual program did NOT.
  1906.                 Note that *MOST* players probably ignore these fields
  1907.                 and it is likely that the module will NOT be played correctly
  1908.                 by a standard S3M player if it contains samples >64k and/or
  1909.                 16 bit samples.
  1910.  
  1911.         All conditions with an asterix preceding them are checked at save
  1912.         time.
  1913.  
  1914.         Note that both note off (═══) and note cut (^^^) will get translated
  1915.         to a note cut (^^^) in S3M format.
  1916.  
  1917.  2.8  Gravis UltraSound / Interwave / AWE32 users.
  1918.  
  1919.         For hardware mixed devices (eg. Gravis UltraSound, Interwave and
  1920.         AWE32), there are some limitations that are outlined here.
  1921.  
  1922.         I've already mentioned a few things throughout the DOC about hardware
  1923.         mixing, but I'll reiterate them here with a few more points.
  1924.  
  1925.         1) The maximum number of notes that you CAN play with a GUS and
  1926.            Interwave is 32. The maximum number of the AWE32 is *30*.
  1927.  
  1928.            This was incorporated by effectively limiting the number of active
  1929.            channels to 32/30. So if you play a 64 channel song which is using
  1930.            control:Samples, then you will LOSE the last 32/34 channels. If you
  1931.            are playing a 64 channel song with control:Instruments, you
  1932.            shouldn't miss out on too much. This shouldn't really be a
  1933.            problem in 99.9% of the cases.
  1934.  
  1935.         2) The GUS playback quality is dependent on the maximum limit of active
  1936.            channels. The GUS can be initialised to play anywhere between
  1937.            14 and 32 channels. Values above 32 are reduced to 32, and values
  1938.            below 14 are increased to 14. The lower the number of channels, the
  1939.            higher the playback quality. (14 channels will give 44100 Hz, with
  1940.            16-bit interpolation - very, very nice quality!). The default
  1941.            GUS driver dynamically chooses a particular number of channels.
  1942.            This doesn't ALWAYS work with all cards, so if you don't like the
  1943.            transition of sample quality as the channels increase, or your
  1944.            GUS seems to stop notes unexpectedly, use the other driver(s).
  1945.  
  1946.         3) The GUS/Interwave/AWE32 routines occupy less memory than the mixing
  1947.            routines. You will have about 30k-100k more of memory to play
  1948.            around with.
  1949.  
  1950.         4) The memory allocation routines are very simple and not very
  1951.            versatile. When you are working through the sample library, samples
  1952.            are NOT always deallocated when you move on to the next sample! If
  1953.            you get the message "Out of soundcard RAM", then it may be necessary
  1954.            to press Ctrl-G (or select Reload Samples from the samples menu) to
  1955.            reorganise the samples in memory. Sorry about the inconvenience.
  1956.  
  1957.         5) Changing the mixing volume does NOT affect these cards.
  1958.            It may be necessary to reduce the global volume to remove crackle
  1959.            if the output is overloading.
  1960.  
  1961.         6) The surround sound option will cause the sample to be played with
  1962.            a central panning. This is because I don't know how to get hardware
  1963.            surround without wasting a lot of memory and channels.
  1964.  
  1965.         7) The panning positions are reduced to a scale of 0->15 in the GUS,
  1966.            so fine alterations in the panning may go unnoticed. The Interwave
  1967.            and AWE32 permit 256 pan positions
  1968.  
  1969.  
  1970.  3. Before you write to me. (Important notes)
  1971.  
  1972.     I would very much like to get feedback on this program, but I am already
  1973.     aware of several problems (?).
  1974.  
  1975.     1) If you're going to write because the program looks 'too' much like
  1976.        Scream Tracker 3, then don't :) I've used Scream Tracker. I loved
  1977.        using it - it was the best, easiest, most convenient program ever,
  1978.        so why not adopt it's design?????
  1979.  
  1980.     2) The program could easily crash if you try to load a corrupted
  1981.        module. If you've got some modules that you know are corrupted, try
  1982.        to resist the temptation of testing the stability of the program....
  1983.        in many cases it'll die :)
  1984.  
  1985.     3) A couple of people have asked about ASCII characters > 128. I'm
  1986.        sorry - I can't let you have 'em on anywhere else except the message
  1987.        editor. The reason is because I've used a lot of the characters for
  1988.        'graphics' - real time character generation. (the ASCII characters >
  1989.        128 don't really exist anymore)
  1990.  
  1991.     4) If you 'overload' your CPU... the subsequent playback can also
  1992.        become distorted! To fix this, reinitialise your sound driver with
  1993.        Ctrl-I.
  1994.  
  1995.     5) The help screens have only been defined for the following screens:
  1996.         a) Pattern Editor
  1997.         b) Sample List
  1998.         c) Instrument List
  1999.         d) Info Page
  2000.         e) Order list and panning
  2001.         f) Order list and channel volumes
  2002.         g) Message editor
  2003.  
  2004.        I didn't think it necessary to include help screens for the other
  2005.        screens, but if you feel strongly about including help on certain
  2006.        points/screens, then I suppose I could make the effort...
  2007.  
  2008.     6) If you have a bug to report, please check through BUGS.TXT first to
  2009.        see if it's listed, and also check through this document - the problem
  2010.        may be in the understanding of how the program works! Otherwise,
  2011.        contact me, AND LET ME KNOW WHAT VERSION YOU ARE USING!
  2012.  
  2013.     7) Any further GUS click removal is very difficult to achieve. ST3's
  2014.        GUS click removal requires double the number of channels on the GUS
  2015.        to be used and I can't allocate any more! Try out the alternative
  2016.        GUS drivers first
  2017.  
  2018.     8) Got suggestions for IT? At the moment, I'm really sorry - I barely
  2019.        have enough spare time myself. I can't promise to add any suggestions
  2020.        you make, but please send them along anyway.
  2021.  
  2022. You can contact me by writing to:
  2023.         Jeffrey Lim
  2024.         9 Wilgena Avenue
  2025.         Myrtle Bank
  2026.         South Australia  5064
  2027.  
  2028. EMail account:
  2029.   pulse@cyburbia.net.au
  2030.  WARNING!!!
  2031.   If you ask me anything which is obviously contained within this document or
  2032.   the FAQ, I will reply with RTFM (Read the #$%@#$% Manual). Sorry, but I hate
  2033.   idiots who can't be bothered to take their time to have a quick look through
  2034.   this document and write to me with stupid messages which have recently become
  2035.   a chore to answer (You'd understand if you received 4000+ EMails...)
  2036.  BUT!
  2037.   If there *is* something that you HAVE made an effort to understand/look for,
  2038.   then don't hesistate to write to me. The worst that can happen is that I
  2039.   reply with RTFM :)
  2040. ********ALSO********
  2041.   If you have an incorrect reply-address, don't expect to receive anything.
  2042.   If you are reporting a bug, let me know what version you are using.
  2043.  
  2044.   If you find any major problem with the tracker, please try to find the
  2045.   circumstances which cause it to trigger - if you can't, don't worry - write
  2046.   to me anyway. It's just that it's much easier if I know a likely cause of
  2047.   the error. (Don't worry if it seems that the cause is very, very remote -
  2048.   I had a problem in my GUS playback routines which originally caused my
  2049.   palette configuration screen to hang - now that's obscure!)
  2050.  
  2051.   Send money! I don't demand that you send me anything, (and I don't like
  2052.   spoiling a program by shoving in reminder messages), but if you *DO* use
  2053.   the program and think that it's worth contributing a small amount towards,
  2054.   then please do so... it would be GREATLY appreciated. Remember.... even a
  2055.   few dollars will be appreciated! It's very unlikely that I'll make a huge
  2056.   profit (I doubt I could get close to sufficient money from this program to
  2057.   make it even worth $1 for every hour I put in!). I won't be sending out any
  2058.   nice thankyou notes, or bound manuals... but I will include your names in
  2059.   the future versions of the tracker and I will EMail you each new version the
  2060.   minute the are released if you wish.
  2061.  
  2062.   I believe that software *SHOULD* be cheap - you've spent perhaps a few
  2063.   thousand getting your computer, so you wouldn't want to spend TOO much
  2064.   more on programs! If you think this program is worth $5, then send $5.
  2065.   If you think it's worth $10, then send $10. If you think it's worth
  2066.   $1,000,000,000... don't let me stop you :)
  2067.  
  2068.   So... get together with a couple of friends and send me $10... If you send
  2069.   me a significant amount, I'll put together a "special contributor's" list..
  2070.   (Oeeerrrrr :) )
  2071.  
  2072.   Methods of payment:
  2073.     Bank cheque
  2074.     Cash (Make sure it's securely wrapped!) - it doesn't have to be Australian
  2075.           currency, although it'd be nice if it could be!
  2076.     Bank Transfer - EMail me for my details
  2077.  
  2078.  
  2079.  4. For the software programmers & hardware manufacturers
  2080.  
  2081.   4.1 Programmers
  2082.  
  2083.   The technical specs for the IT format can be found in the file, ITTECH.TXT,
  2084.   which should be in the archive in which you found this document.
  2085.  
  2086.   If you decide to write a player, and need any help/clarification of the
  2087.   format, then don't hesitate to write to me!
  2088.  
  2089.  
  2090.   4.2 Manufacturers
  2091.  
  2092.   At the moment, the hardware support for the tracker has been limited to:
  2093.         PC Speaker
  2094.         DAC on LPT1/LPT2
  2095.         Sound Blaster 1.xx
  2096.         Sound Blaster 2.xx
  2097.         Sound Blaster Pro
  2098.         Sound Blaster 16
  2099.         Sound Blaster AWE 32
  2100.         Gravis UltraSound
  2101.         Interwave
  2102.         Pro Audio Spectrum
  2103.         Pro Audio Spectrum 16
  2104.         Windows Sound System
  2105.         ESS ES1868 AudioDrive
  2106.  
  2107.   If you would like me to support another soundcard (which isn't compatible
  2108.   with an existing driver, or if it has it's own, special native mode), then
  2109.   send a sound card AND a copy of the Software Developers Kit. I will *try*
  2110.   my best to incorporate them into the program if you do this (but there's
  2111.   the limitation of design difficulties - which shouldn't cause any problems
  2112.   in 99% of the cases.)
  2113.  
  2114.  
  2115.  5. Closing Words
  2116.  
  2117.     I would like to thank the following people:
  2118.  
  2119.         Psi: For introducing me to tracking with the brilliant Scream Tracker 3
  2120.         Purple Motion: For being my music hero.... I still think
  2121.                        "When the Heaven's Fall" is *THE* best S3M ever written.
  2122.         Red Haze: For constantly bugging me to get the tracker done, and for
  2123.                   his effort in testing out the program and making suggestions.
  2124.                   (He's directly responsible for the inclusion of Ping Pong
  2125.                   loops - I originally couldn't be bothered :) )
  2126.                   Also extensive testing of later versions of IT...
  2127.         The WALKER: For his flow of ideas & beta testing and getting the PoP
  2128.                     DiskMag finished.... tomorrow. Or is that next week?
  2129.                     OK... so he has done it. Finally.... 6 months late. :)
  2130.         Perception: For his constant support over the many years he ran his BBS
  2131.         Psibelius: For being the nice friendly Epinicion founder that he is.
  2132.         Dominic: For his thoroughness in beta testing the program, and providing
  2133.                  suggestions. (He came up with more than double the number of
  2134.                  suggestions than almost anyone else... even though many of
  2135.                  them were not finally implemented :) )
  2136.         Chris Jarvis: For his effort in beta testing the tracker and producing
  2137.                       Firestorm (released with v1.00 of the tracker)
  2138.                       Pale Dreams! (released with v1.01 of the tracker)
  2139.                       Firepower (released with v1.03 of the tracker)
  2140.                       Sidewalk (released with v1.05 of the tracker) and
  2141.                       Fallen World (released with v2.01 of the tracker)
  2142.                       These are ALL amazing pieces of work! (Yes, I'm jealous!)
  2143.         Zilym Limms: For his technical help with the tracker and his love of
  2144.                      Fast Tracker 2. Hahaha. :)
  2145.                      Also for his information and source code for the PAS 16.
  2146.         Benjamin Bruheim: For his super list of contributions to v1.01
  2147.         ZaStaR: For his effort in putting together ITF - the font customiser!
  2148.                 and ITTXT - the text file importer for IT's messages!
  2149.                 Also for being the willing target of a barrage of beta
  2150.                 versions, a great contributor of ideas, a musician with whom
  2151.                 I could exchange work and for being a great dude all round!
  2152.         Emmanuel Giasson: For creating the utilities MMCMP/MMUNCMP/MMTSR -
  2153.                           the music module compressor!
  2154.         Diablo: For creating the Impulse Tracker directories on ftp.cdrom.com!
  2155.         Siren: For providing me a contact to obtain an Interwave card!
  2156.         AMD: For providing me with an Interwave card to program for!
  2157.  
  2158.         To the other beta testers:
  2159.             Eric Bonython               Phorte
  2160.             Alistair Watts              Julian Ellis
  2161.             Alex Bates                  David Rohrsheim
  2162.             Delta X                     GD (Grave Digger)
  2163.             Andy Chen                   ShawnM
  2164.             Clef                        Emmanuel Giasson
  2165.             KXMode
  2166.  
  2167.         And anybody there who uses this program!!!
  2168.  
  2169.         Big thanks and thumbs up to Advanced Gravis for releasing their
  2170.         Software Developer's Kit (SDK) free of charge!
  2171.  
  2172.         Congratulations to Creative Labs for finally releasing their SDKs
  2173.         free of charge!
  2174.  
  2175.         Especially *BIG* thanks to AMD for providing me with an Interwave
  2176.         card to use and the SDK!
  2177.  
  2178.         Finally... I have a request.....
  2179.          If *YOU* write something with this program... share it with the
  2180.          rest of the world!!!
  2181.  
  2182.          If you have an iNet account, you can upload your songs to:
  2183.            ftp.cdrom.com/pub/demos/incoming/music/songs/it
  2184.            - remember to ZIP up your song, to use a *lower* case filename
  2185.              and to also upload a short description of your song in a .txt
  2186.              file, otherwise your file will just be deleted.
  2187.  
  2188.          If you know of any other places where modules can be uploaded to,
  2189.          let me know and I'll include them in the above list.
  2190.  
  2191.  6. How to get the latest version of Impulse Tracker
  2192.  
  2193.     There are several places around the internet where you can find the
  2194.     latest version of Impulse Tracker:
  2195.  
  2196.         1) ftp.cdrom.com/pub/demos/incoming/music/programs } Check (1) first!
  2197.         2) ftp.cdrom.com/pub/demos/music/programs/trackers }
  2198.  
  2199.         3) http://www.citenet.net/noise/it
  2200.                 - American homepage
  2201.         4) http://huizen.dds.nl/~im-pulse
  2202.                 - European homepage
  2203.         5) ftp://sdc.wtm.tudelft.nl/pub/music/utils/it
  2204.                 - ftp site!
  2205.  
  2206.     If you want to have the latest version sent to you via EMail, or at least
  2207.     be notified of new releases, then you'll have to send $omething to me :)
  2208.     Check section 3 on how to contact me.
  2209.  
  2210.  
  2211.  7. Legal stuff
  2212.  
  2213.     No matter what happens, no matter how bad, I'm not going to be held
  2214.     responsible.
  2215.  
  2216.     That's basically the same as any other license agreement, except you
  2217.     should be able to understand this one without an interpreter :)
  2218.  
  2219.     YOU MAY NOT CHARGE ANYTHING FOR THIS PROGRAM - DISTRIBUTORS WHO
  2220.     ARE INTERESTED IN THIS PROGRAM MUST WRITE TO ME FIRST AND HAVE MY
  2221.     APPROVAL! (yeah, even by snail mail if you don't have EMail access).
  2222.  
  2223.     USE OF THIS PROGRAM COMMERCIALLY IS EXPRESSLY FORBIDDEN WITHOUT WRITTEN
  2224.     AND SIGNED APPROVAL FROM ME. COMMERCIAL USE INVOLVES ANY USE OF IMPULSE
  2225.     TRACKER IN WHICH MONEY IS INVOLVED (SPECIFICALLY THE CREATION OF ANY
  2226.     MUSIC WHERE PAYMENT IS INVOLVED). THIS PROGRAM IS ONLY FREEWARE FOR
  2227.     NON-COMMERCIAL USE.
  2228.