/
IT.TXT
2199 lines (1795 loc) · 109 KB
/
IT.TXT
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
858
859
860
861
862
863
864
865
866
867
868
869
870
871
872
873
874
875
876
877
878
879
880
881
882
883
884
885
886
887
888
889
890
891
892
893
894
895
896
897
898
899
900
901
902
903
904
905
906
907
908
909
910
911
912
913
914
915
916
917
918
919
920
921
922
923
924
925
926
927
928
929
930
931
932
933
934
935
936
937
938
939
940
941
942
943
944
945
946
947
948
949
950
951
952
953
954
955
956
957
958
959
960
961
962
963
964
965
966
967
968
969
970
971
972
973
974
975
976
977
978
979
980
981
982
983
984
985
986
987
988
989
990
991
992
993
994
995
996
997
998
999
1000
. ..s..s.s.ssss.
: ::$::$:$:$$$$$
` ``ý``ý`ý`ýýýý'.$$$ .$$$ $$$$$$$$$$ .$$$ .$$ .$$$ .$$$$$$$$$$ .$$$$$$$$
. . . .$$$$ .$$$$ .$$$$ $$$ .$$'.$$$' .$$'.$$$'.$$$$' .$$'.$$$' .$$'
. . . .$$$$'.$$$$$ .$$'.$ $$$ .$$'.$$$' .$$'.$$$'.$$$$' .$$'.$$$' .$$'
. . . .$$$$'.$$$$'$ .$$'.$$ $$$ .$$'.$$$' .$$'.$$$'.$$$$' .$$$'
. . . .$$$$'.$$$$'.$ .$$' $$$ $$$$$$'.$$$' .$$'.$$$' $$$$$$$$$$'.$$$$$'
. . .$$$$'.$$$$' $$.$$' $$$ $$$ .$$$' .$$'.$$$' .$$'.$$$' ..
. . .$$$$'.$$$$' $$$$' $$$ $$$ .$$$' .$$'.$$$' .$ .$$'.$$$' .$$'
. . .$$$$'.$$$$' $$$' $$$ $$$ .$$$' .$$'.$$$' .$$ .$$'.$$$' .$$'
. .$$$$'.$$$$' $$' $$$ $$$ $$$$$$$$$' $$$$$$$$$$$ $$$'.$$$$$$$$' .cC!
.. ..
.s$$$$$. .sssssssssssssssssssssssssssssssssssssssssssssssssss. .$$$$$s.
`$$. `$$. .ssss. .ssss. .ssss. .sss. .s ss .sss. .ssss. .$$' .$$'
`$$ `$$ ýss.`$ $. ``$ $' .$$ $. `$ $$.sý' $. `$ $. ``$ $$' $$'
ds.`$ ds.`$ $$ ' $$ssý' $ssý$$ $$ $$S $$ý $$ssý' $'.sb $'.sb
$$$$.$ $$$.$ $$ $$`ýs. $ $$ $$..$ $$`ýs. $$..$ $$`ýs. $.$$$ $.$$$$
Y$$$$'.$$$$'.cC! ýý ýý ýý ý ýý `ýýý' ýý ýý `ýýý' ýý ýý `$$$$.`$$$$Y
`ý' `ý' `ýýýýýýýýýýýýýýýýýýýýýýýýýýýýýýýýýýýýýýýýýýýýýýýýýýý' `ý' `ý'
User's Manual
1. Introduction
1.1 What is Impulse Tracker?
1.2 About Impulse Tracker
1.3 Running Impulse Tracker
1.4 Technical information about Impulse Tracker
2. Using Impulse Tracker
2.1 Playing songs
2.2 Pattern editor
2.3 Order list, channel panning & volume
2.4 Samples
2.4.1 Information about samples
2.4.2 Sample functions
2.5 Instruments
2.6 Song Variables
2.7 Hey! This program looks like Scream Tracker 3!!!
2.8 Gravis UltraSound / Interwave / AWE32 users.
3. Before you write to me (Important notes)
4. Closing words
5. How to get the latest version of Impulse Tracker
6. Legal stuff
** Please note that this document hasn't been udpated in a long time.
** Some information may be missing, which may be present in supplementary
** files such as DRIVERS.TXT, FILTERS.TXT, MIDI.TXT, UPDATE.TXT, etc.
1. Introduction
If you are familiar with tracker programs, then you could probably
skip through most of this document. (I strongly suggest that ANYONE
print out SUMMARY.TXT though, for a list of effects and editing
commands.) For those of you who have had experience with Scream
Tracker 3, read section 2.7. This should detail most of the major
differences between Scream Tracker 3 and Impulse Tracker. For those
of you who are unfamiliar with tracker programs it would probably be
best to print out this document, and then refer to it as you work
with the program.
Check out the file UPDATE.TXT. If this document contains conflicting
information with what's listed in UPDATE.TXT, then follow what
UPDATE.TXT contains, as I may have forgotten to update this text.
1.1 What is Impulse Tracker?
Impulse Tracker is a program used to create high quality music
without the requirements of specialised, expensive equipment. The
hardware requirements should be easily met: Any IBM 386+ compatible
computer (although a 486+ is recommended), and a VGA or higher video
card. If you want to hear sound, you'll need one of the following:
þ Sound Blaster series (or most compatibles)
þ Pro Audio Spectrum
þ Windows Sound System
þ ESS ES1868 AudioDrive
þ Ensoniq SoundscapeVIVO
þ EWS64XL Soundcards
þ Gravis UltraSound
þ Interwave based board
þ Generic MPU401 for MIDI Input/Output
þ DAC on LPT1/LPT2
þ PC Speaker
Note that stereo effects (including surround sound) can only be
experienced on software mixed stereo cards. Hardware mixed soundcards
support panning, but do not support surround sound.
You'll need about 500k of conventional memory to get the program
running - about 600k to have it load almost any song (as long as you
have an EMM driver - samples are stored in EMS when possible, otherwise
the songs that you are able to load will be limited even further!).
If you use EMM386.EXE, add "H=255" at the end of it to prevent
"Out of memory" messages when you still have EMS remaining. If
you're using some other memory manager, check it's documentation
to see how to increase the number of "memory handles".
Impulse Tracker supports direct control over 64 channels, and can
load and play the following formats: S3M, MTM, MOD and of course,
IT. At the moment, modules can only be saved in the IT and S3M
formats.
The number of channels playable on hardware mixed soundcards is
limited by the hardware. Check DRIVERS.TXT for specific details
on your soundcard hardware.
The Gravis UltraSound can only play 32 channels, although this
shouldn't be too much of a limitation. Note that if you put notes
in channels 33->64 in sample mode using a Gravis, you WILL NOT hear
these notes! (There's an explanation of sample mode much later on,
just keep it in mind if you own a Gravis UltraSound - it shouldn't
cause any problems.) The same restriction applies for the Sound
Blaster AWE 32, but to 30 channels. (ie. notes in channels 31->64
will not cause any sound)
1.2 About Impulse Tracker.
Impulse Tracker began simply as an extension to Scream Tracker 3
(which should be quite obvious to Scream Tracker 3 users, due to
the interface.) At first, I only intended a couple of extra
features (eg. proper panning and a couple of other interesting
functions), but with the release of Fast Tracker 2, it became obvious
that there were many areas in which Scream Tracker could be improved.
In spite of all the limitations of Scream Tracker 3 (in comparison
to Fast Tracker 2, which offered Volume/Panning Envelopes, 16-bit
samples, Samples > 64k, an in built sampler, proper stereo panning
on SB16, etc. etc), there were still more .S3M releases than there
were .XM releases! And the reason must have been within the way
you WRITE music with Scream Tracker 3. That's why I've used the same
simple and QUICK interface that Scream Tracker 3 offered. And I've
also incorporated all the power of Fast Tracker 2 and more!
The Tracker was written in 100% Assembler. All the routines are of
my own coding (That's why some of them suck so much :) ).
The program was written on and off during 1995, but most of the
work was completed in the summer holidays of '96. The source code
is over 100,000 lines long and occupies over 3MB. The Tracker runs
entirely in text mode (!) with some neat remapping of characters
(that's why I haven't been able to use colours to help in some places
ie. making the volume envelope nodes a different colour would have
made it easier to use!).
1.3 Running Impulse Tracker.
Win95 Users - ignore all this HIMEM and EMM386 stuff.. as long as
you don't have "noems" or "noframe" as a parameter to EMM386 in your
config.sys file, it'll work fine. If you have no idea what I'm talking
about, you can probably assume it's fine :) (unless you get "out of
memory messages")
Impulse Tracker uses EMS. If you want to be able to load large songs,
you need the following lines in your CONFIG.SYS file (on your boot
drive)
DEVICE=<path>\HIMEM.SYS
DEVICE=<path>\EMM386.EXE RAM H=255
eg. if the files are in your C:\DOS directory, you need this:
DEVICE=C:\DOS\HIMEM.SYS
DEVICE=C:\DOS\EMM386.EXE RAM H=255
If you use QEMM, use the following line instead:
DEVICE=<path>\QEMM.SYS DMA=64, HANDLES=255
If you want to run Impulse Tracker in Windows 95, check out WIN95.TXT
To find out details about the driver for your soundcard, check through
DRIVERS.TXT.
Most users should not require any command line switches, however
the following are available:
SFilename.Drv - Sets sound driver to use. eg. IT /sITIW.DRV
this may become necessary as new sound drivers
are released.
S# Set sound card
S0 = No sound card (silent mode)
S1 = PC Speaker
S2 = Sound Blaster
S3 = Sound Blaster 2
S4 = Sound Blaster Pro
S5 = Sound Blaster 16
S6 = Sound Blaster AWE 32
S7 = Gravis UltraSound
S8 = Interwave
S9 = Pro Audio Spectrum
S10 = Pro Audio Spectrum 16
S11 = Windows Sound System
S20 = .WAV writer device
If this parameter is omitted, then a (hardware) detection
routine is used. Check DRIVERS.TXT for specific information
on the various drivers.
Axxx Set Base Address of sound card (hex)
D# Set DMA of sound card (decimal)
I## Set IRQ of sound card (decimal)
M##### Set Mixspeed. Values are accepted between 0->65535,
however, the soundcards have hardware limits which will
override the command line switch. Again, check DRIVERS.TXT
for specific information on your sound driver.
L### Limit number of active channels
When you limit the number of channels, you are limiting the
number of notes that you can hear on playback. In a "Sample"
controlled song (explained later), the result is that if you
play a 16 channel piece with the limit at 4 channels, then
you will lose the last 12 channels! Even if the first 4
are not playing anything. In an instrument controlled song,
the result is that you will hear 4 notes at most, which can
be controlled from any of the 64 channels, excess notes will
be lost. (The reason for this is within the channel
allocation routines.)
Note that the hardware mixed devices (eg. Gravis UltraSound,
AMD Interwave and Sound Blaster AWE32) cannot play more
than a certain number of channels (drivers.TXT will provide
the exact details).
If you are new to tracking and didn't understand what I was
just talking about, hilight this section with a marker
(you've printed this out, right?), and in your dabblings,
if you notice that some notes aren't being played, reread
this section. It should make sense by then, and the reason
hopefully lies in the above paragraphs.
V1 Override VGA detection routine.. in case you DO have a
VGA and the program doesn't recognise it. If characters
look weird, you may need to use this switch to override
the Matrox mode autodetect.
V2 Force Matrox mode. Use this switch if you get garbled stuff
appearing on your screen
R Reverse stereo channels.
This is only really useful on the SB16. (Swaps left/right
outputs). The Sound Blaster Pro stereo setting routines
aren't accurate, and will sometimes set the left to left
and right to right (how it's supposed to be), and
sometimes set the left to right and right to left (how
it's not supposed to be :) ).
You can also switch left/right channels in IT by pressing
Alt-R on the info page.
C Control playback in DOS Shell.
When this option is on, the following keys will operate
within the DOS Shell:
Right-Alt: Stop playback
Right-Ctrl: Play song (if not already playing)
Grey Plus: Increase global volume
Grey Minus: Decrease global volume
Warning: There are problems on some computers with this
enabled! If your keboard locks up, it may be
necessary to press the left ctrl/alt to "unfreeze"
it... sometimes (other times.. I don't know!)
F Disable file colour distinctions.
When this is on, all file colours will appear the same as
the background colour. This is just to make it easier to
redo the palette to your liking more easily.
1.4 Technical Information
Formats supported
Modules:
MOD (M.K., M!K!, 4CHN, 6CHN, 8CHN, xxCH, FLT4, FLT8)
669 (Composer 669, Unis669)
MTM (MMEdit files)
S3M (Scream Tracker 3 files)
XM (Fast Tracker 2 files, DigiTracker 3 files)
IT (Impulse Tracker 1.xx, 2.xx files)
Samples:
S3I (Scream tracker sample, 8 bit or 16 bit)
IFF (Fast tracker 2 sample, 8 bit or 16 bit)
WAV (Microsoft WAV, 8 bit or 16 bit)
Wxx (TX Wave format samples)
ITS (Impulse tracker sample, 8 bit or 16 bit)
RAW (Raw sample information, assumed 8 bit)
PAT (Gravis UltraSound patches)
KRZ (Kurzweil Synth files)
MOD (Samples from almost all .MOD formats)
PTM (Samples from Poly Tracker modules)
669 (Samples from 669 and 669 Enhanced modules)
FAR (Samples from Farandole composer modules)
MTM (Samples from MMEdit modules)
S3M (Samples from Scream Tracker 3 modules)
XM (Samples from Fast Tracker 2 modules)
IT (Samples from Impulse Tracker 1.xx, 2.xx modules)
Instruments:
XI (Instruments from Fast Tracker 2)
ITI (Instruments from Impulse Tracker)
XM (Instruments from Fast Tracker 2 modules)
IT (Instruments from Impulse Tracker 1.xx, 2.xx modules)
Modules
99 Samples maximum
99 Instruments maximum
200 Patterns maximum (from 32-200 rows per pattern)
256 Orders maximum
64 Channels under direct control
256 Channels maximum for virtual control (64 max default)
Samples
8/16 bit samples
Maximum size around 4MB
No Loop/Forwards/Ping pong loop
Default pan for samples (optional)
Vibrato parameters
Instruments
25-point Volume/Panning/Pitch envelopes
Default pan for instruments (optional)
Pitch pan separation
Volume / panning swing
Virtual controls (*REALLY* worth understanding)
MIDI Output controls
Sound Devices
Generic MPU401
Sound Blaster 1.xx, 2.xx (8 bit mono)
Sound Blaster Pro (8 bit stereo)
Sound Blaster 16 (16 bit stereo, MIDI In supported)
Sound Blaster AWE 32 (16 bit stereo, hardware mixing, MIDI In &
MIDI Out supported)
Pro Audio Spectrum (8 bit stereo)
Pro Audio Spectrum 16 (16 bit stereo)
Windows Sound System card (16 bit stereo)
ESS ES1688 AudioDrive (16 bit stereo)
ESS ES1868 AudioDrive (16 bit stereo, MIDI In supported)
ESS ES1869 AudioDrive (16 bit stereo)
Gravis UltraSound (16 bit stereo, hardware mixing)
Interwave based board (eg. GUS PnP, Dynasonix, 16 bit stereo,
hardware mixing, MIDI In & MIDI Out
supported)
EWS64XL (Codec driver, 16 bit stereo)
Sound Track '97 PCI (16 bit stereo)
DAC on LPT1/LPT2 (8 bit mono)
PC Speaker (very final option not recommended... )
MIDI Output
Supports 128 MIDI Macros
Supports 16 parmaeterised MIDI Macros
Internal handling of conflicting notes
Fully configurable output messages
2. Using Impulse Tracker
Before any specific details of how to use the tracker, it may be
worth knowing these few "editing" keys:
When using Thumbbars.
Pressing Left and Right arrows will shift the values left/right
Holding down Ctrl while pressing left/right will move them quicker
And Shift-Left/Right will move them even quicker....
But just typing in a number will get you directly to the desired value!
String (text) entry.
Nothing special here (and the routines need to be rewritten), but
pressing Ctrl-Backspace will clear the entire text..
Numerical entries (of the 7 digit or 3 digit variety)
Pressing '+' or '-' will increase/decrease the value by 1. This is
especially useful when modifying loop values.
2.1 Playing songs
If you are like most of us, you would have run the program first,
and probably figured out how to do this yourself. Songs are simply
loaded by pressing F9 at any time (to invoke the file load menu)
and then selecting a song by pressing Enter. You can also type the
first few characters of a filename, and a "search" will be made for
the first match.
Note that on all the file menus in Impulse Tracker, you can also
delete files by pressing Delete.
After loading a song, use F5 to play it and F8 to stop. The Info
Page should appear, and you can cycle through views using
PgUp/PgDn. Separate view windows can be created by pressing Insert
(and removed by pressing delete) and these separate windows can
each have a different view method.
Details (ranges follow in brackets):
Frequency - the speed (pitch) at which the sample is played in
samples per second
Position - the offset in a sample (in bytes)
Smp - The sample currently being played (1->99)
FVl - The final volume of the sample, taking into account
all the scaling factors (viz global volume, sample vol,
envelope volume, channel volume and fadeout) (0->128)
CV - Channel volume (0->64)
SV - Sample volume (0->64)
VE - Envelope volume (0->64)
Fde - Fadeout component (0->512)
Pn - Panning (0->64, Su = surround)
PE - Panning envelope value (0->32)
NNA - The current NNA (Cut/Con/Off/Fde)
Tot - The total number of active virtual channels 'owned' by
the channel
If you're looking for some songs to play, check out the following
places:
ftp.cdrom.com/pub/demos/music [huge collection!]
kosmic.wit.com/kosmic/songs
ftp.uni-muenster.de/pub/sounds
archie.au/pub/aminet/mods
2.2 Pattern editor (F2)
The pattern editor allows you to edit patterns. For those of you
who are familiar with music, patterns can be thought of as "bars",
and the order in which these "bars" are played is determined by
order list. For those of you who are not familiar with music,
consider patterns as a small collection of notes. Impulse Tracker
supports up to 200 different patterns - it *IS* quite a lot more
than it may initially sound!
Each pattern can range in length between 32 and 200 rows. You can
change this value by using the "Pattern Editor Configuration" screen by
pressing F2 when alredy in the Pattern Editor. (If you want to change
the number of rows of several consecutive patterns, use Ctrl-F2)
The other options available are the base octave (explained later),
the skip value (also explained later), the row hilight major and
minor (which determines the distance between the emphasized rows)
and the command/commandvalue link/split option, which determines
whether when editing, the cursor should move downwards when entering
an effect, or across to the effect value columns.
The pattern editor appears normally as 5 'channel' columns as such:
(You can configure the pattern editor .. press F1 in the pattern
editor, then page down to find the Track View options.)
ÚÄÄÄÄÄÄÄÄÄÄÄÄÄÂÄÄÄÄÄÄÄÄÄÄÄÄÄÂÄÄÄÄÄÄÄÄÄÄÄÄÄÂÄÄÄÄÄÄÄÄÄÄÄÄÄÂÄÄÄÄÄÄÄÄÄÄÄÄÄ¿
³C-5 01 23 A02³E-5 02 64 D01³ùùù ùù ùù .00³ùùù ùù ùù .00³ùùù ùù ùù .00³
³ùùù ùù ùù .00³ùùù ùù ùù .00³ùùù ùù ùù .00³ùùù ùù ùù .00³ùùù ùù ùù .00³
³ùùù ùù ùù .00³ùùù ùù ùù .00³ùùù ùù ùù .00³ùùù ùù ùù .00³ùùù ùù ùù .00³
³ùùù ùù ùù .00³ùùù ùù ùù .00³ùùù ùù ùù .00³ùùù ùù ùù .00³ùùù ùù ùù .00³
³ùùù ùù ùù .00³ùùù ùù ùù .00³ùùù ùù ùù .00³ùùù ùù ùù .00³ùùù ùù ùù .00³
³ùùù ùù ùù .00³ùùù ùù ùù .00³ùùù ùù ùù .00³ùùù ùù ùù .00³ùùù ùù ùù .00³
^ ^ ^ ^
Component Columns: 1 2 3 4
What the component columns mean:
1) The first column contains the note and octave of the note.
Notes are entered by using the keyboard as such:
(Note) C# D# F# G# A# C# D# F# G# A# C# D#
³ ³ ³³ ³ ³ ³ ³³ ³³ ³ ³ ³ ³³ ³ ³ ³ ³³ ³³ ³ ³ ³ ³³ ³ ³
³ ³ ³³ ³ ³ ³ ³³ ³³ ³ ³ ³ ³³ ³ ³ ³ ³³ ³³ ³ ³ ³ ³³ ³ ³
(What you ³ ³S³³D³ ³ ³G³³H³³J³ ³ ³2³³3³ ³ ³5³³6³³7³ ³ ³9³³0³ ³
type) ³ ÀÂÙÀÂÙ ³ ÀÂÙÀÂÙÀÂÙ ³ ÀÂÙÀÂÙ ³ ÀÂÙÀÂÙÀÂÙ ³ ÀÂÙÀÂÙ ³
³ Z³ X³ C³ V³ B³ N³ M³ Q³ W³ E³ R³ T³ Y³ U³ I³ O³ P³
ÀÄÄÁÄÄÁÄÄÁÄÄÁÄÄÁÄÄÁÄÄÁÄÄÁÄÄÁÄÄÁÄÄÁÄÄÁÄÄÁÄÄÁÄÄÁÄÄÁÄÄÙ
(Note) C D E F G A B C D E F G A B C D E
(Octave 0) (Octave 1) (Octave 2)
(For those of you with AZERTY keyboards, you will find that
the keys should work as positioned on the keyboard, rather
than having to figure out QWERTY equivalents)
The octave of the note is determined by adding the BaseOctave
to the Octave of the note played. The BaseOctave can be
adjusted by pressing the Grey keys '/' or '*' or using
Ctrl-Up Arrow or Ctrl-Down Arrow.
The range of notes is from C-0 to B-9. The 'middle' note is
considered as C-5
Pressing '1' on the note column will enter a notecut command.
This causes any note in the column to immediately stop.
Pressing '`' (the note below ESC) on the note colume will enter a
noteoff command. This causes all sustain points to be released
(Explained in samples and instruments in more detail.)
At the bottom of the channel is an 'edit mask'. This highlights
what will be affected when you type anything in. Note that
typing a note in can affect more than just a note - normally
it's set to enter an instrument and volume with it! You can easily
tell IT to enter an effect with it also by changing the
channel mask with ',' (comma) on columns 2, 3 and 4.
Examples of interpretation:
³C-4 01 ùù .ùù³ - will play note C octave 4, instrument 1
³D-4 ùù ùù .ùù³ - will play note D, octave 4, instrument 1
³ùùù 02 ùù .ùù³ - Will play note D, octave 4, instrument 2
³E-4 ùù ùù .ùù³ - will play note E, octave 4, instrument 2
³G-6 12 ùù .ùù³ - will play note G, octave 6, instrument 12
2) The second column contains the sample/instrument, depending on
whether the tracker is operating in sample mode, or instrument
mode. Valid ranges are from 01->99 (decimal).
3) The third column contains the volume or panning of the note.
To toggle between entry of volumes and panning, press '`'
Volumes.
0 is the softest (ie. nothing) and 64 (decimal!) is the loudest.
If no volume is specified, then the default volume for the sample
is used. (Note that effects *CANNOT* raise the volume above 64)
The volume scale works linearly - ie. one note played at a
volume of 64 will be the same 'loudness' as 4 of the same note,
one played at a volume of 10, another at a volume of 30,
another at a volume of 20 and another at a volume of 4.
(10+30+20+4 = 64)
But if you have a choice, always go for the single note (it
will require less processing (occupy less channels), and also
sound better in quality, due to roundings that occur in processing
softer volumes).
Panning.
Panning controls appear in a different colour to the volume
controls. For panning in this column, 0 represents far left, and
64 represents far right. If you have an Xxx effect at the same
time, the Xxx will take precedence over this column.
It is more efficient filesize-wise to use a panning control in
this column rather than in the effect column.
Volume, Panning & Effect??
OK. So you want to do something tricky. Well, it's possible to
get all 3 of these how you want with a little meddling with
the channel volume control - just place one before the row with
an appropriate value (remember that the range is 0->40 HEX) such
that the channel volume scales the default volume to the desired
value.... What I mean is that if you want to play a note at volume
32, pan 48, with vibrato H81, then you can do the following:
³ùùù ùù ùù M20³ - Set channel volume to HALF.
³C-4 01 48 H81³ - The 48 is a pan command - this assumes that
the default volume for sample/instrument 1
is 64.
Volume Column Effects
In IT208 and higher, some extra functions are available in the
volume column. These allow you to slide the volume up/down and
pitch up/down, just like the final column effects. If you aren't
familiar with the rest of the editor, leave this section out for
now and come back after you have become acquainted to column
(4) of the editor - the effects column.
Volume column effects are selected by pressing A-H in the first
column of the effects.
Ax = fine volume slide up by x
Bx = fine volume slide down by x
Cx = volume slide up by x
Dx = volume slide down by x
Ex = pitch slide down by x
Fx = pitch slide up by x
Gx = portamento to note with speed x
Hx = vibrato with depth x
In all cases, if x is 0, then the effect memory is used (as
explained in (4)
The memory for Ax/Bx/Cx/Dx are shared, as is the memory for
Ex/Fx.
4) The final column contains effect data. For those of you who are
just starting, I would advise you to leave this section until
later, when you have already dabbled with entering notes, and
want some special features. It's easy to get caught up with all
these special features and you can 'overdo' the effects.
And it will sound absolutely pathetic.
Trust me, I know - I've done it :)
Effects are entered by typing 'a'-'z', then a hex value
(see later for an explanation of hex numbers) as the final two
entries. The effects allow you to a wide variety of functions
that are otherwise impossible to obtain.
Due to the repetitive nature of some effects, there is a
'memory' so that instead of typing:
ùùù ùù ùù G12 It is easier to ùùù ùù ùù G12
ùùù ùù ùù G12 use: ùùù ùù ùù G00
ùùù ùù ùù G12 ùùù ùù ùù G00
ùùù ùù ùù G12 ùùù ùù ùù G00
ùùù ùù ùù G12 ùùù ùù ùù G00
ùùù ùù ùù G12 ùùù ùù ùù G00
ùùù ùù ùù G12 ùùù ùù ùù G00
The following effects 'memorise' their previous values:
(D/K/L), (E/F/G), (HU), I, J, N, O, S, T, W
Note: Bracketed commands share the same 'memory' value. So
ùùù ùù ùù E12 can be written as: ùùù ùù ùù E12
ùùù ùù ùù F12 ùùù ùù ùù F00
ùùù ùù ùù E12 ùùù ùù ùù E00
ùùù ùù ùù F12 ùùù ùù ùù F00
C-4 01 ùù G12 C-4 01 ùù G00
Commands H and U are linked even more closely.
If you use H00 or U00, then the previous vibrato, no matter
whether it was set with Hxx or Uxx will be used. So:
ùùù ùù ùù H81 Is the same as: ùùù ùù ùù H81
ùùù ùù ùù U00 ùùù ùù ùù H81
ùùù ùù ùù U83 ùùù ùù ùù U83
ùùù ùù ùù U00 ùùù ùù ùù U83
ùùù ùù ùù H00 ùùù ùù ùù U83
Hex Numbers
Note: Impulse Tracker works ENTIRELY with decimal numbers
EXCEPT for the effects column.
Instead of using a decimal system (ie. base 10), it is more
natural for the computer to work with hexadecimal (often
abbreviated to simply 'Hex') - numbers which operate in base
16. The first 9 numbers in hex are denoted by '1' to '9' and
the next 6 are denoted by 'A' to 'F'. So if you count in hex,
it will be as follows: (0), 1, 2, 3, 4, 5, 6, 7, 8, 9, A, B,
C, D, E, F, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 1A, 1B,
1C, 1D, 1E, 1F, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 2A etc.
To convert a hex number to decimal, multiply the 'tens' column
by 16 and add the value of the second column. ie. 32 Hex =
3*16+2 = 50 decimal. 2A hex = 2*16+10 = 42. (because A = 10)
The maximum number that you can represent with two Hex digits
is FF = 255 decimal.
Hope that this makes SOME sense :)
Effects.
Axx Set Speed.
I prefer to think of this command as "Set Frames per Row".
Normally, the tracker operates at around 50 frames a
second. If the rows were played at this speed, then a huge
amount of space would be required to enter the pattern data.
Instead, setting the 'speed' of the song will cause the
tracker to wait on the current row for 'xx' frames. Hence,
setting the speed at 50 (decimal = 32hex) will cause each
row to last about a second - quite a long time! The default
is A06. The initial speed can be set in the variables
screen on F12.
If two Axx commands are given in the same row, then the
command in the higher channel (by number) will take effect.
Bxx Jump to order.
Causes the song to jump to order xx (hex). This is often
used to create looping songs.
If two Bxx commands are given, then the command in the
higher channel will take effect.
Cxx Break to row.
The Command Cxx signifies the end of the current pattern,
and also that the next pattern should be played from row
xx (hex)
If two Cxx commands are given... you know :)
D0x Volume slide down
The volume slide down command causes the volume of the
note to be reduced by x for each frame after (for that
row). ie. If you have a note at volume 64, with command
D01 and speed A06, then the final volume will be 64-5=59.
A note at volume 32 with command D02 at speed A05 will
result in a volume of 24.
For greater S3M compatibility, D0F will cause the volume
to drop by 15 EVERY frame, instead of just off-note frames.
Here's a full frame-by-frame description which should provide
greater understanding:
At 'speed' 4:
C-4 01 .. D04
What this does is:
Frame 1: Plays C-4 with instrument 1
Frame 2: Lowers the volume by 4
Frame 3: Lowers the volume by 4
Frame 4: Lowers the volume by 4
The next frame will be controlled by the next row of
information.
Dx0 Volume slide up.
Operates exactly the same way as D0x, but slides the
volume up by 'x'. Volumes cannot exceed 64 (checked
and limited internally).
For greater S3M compatibility, DF0 will cause the volume
to rise by 15 EVERY frame, instead of just off-note frames.
DFx Fine volume slide down.
Takes the volume down by x at the start of the row.
DxF Fine volume slide up.
Takes the volume up by x at the start of the row.
Exx Pitch slide down
The pitch will slide down with speed xx (hex). In linear
frequency mode, a pitch slide down by a particular value
will always cause the same "pitch interval" - this does
not occur in Amiga frequency mode. Valid ranges for xx
are between 0 and 0DFh (as > 0E0h will be interpreted as
fine slides)
EFx Fine pitch slide down
Slides the pitch down by x at the start of the row.
EEx Extra fine pitch slide down
Same as EFx, but 4 times finer. (ie. EE4 is equivalent to
EF1)
Fxx Pitch Slide up
FFx Fine Pitch slide up
FEx Extra fine pitch slide up
Operates in the same manner as the Exx commands, but
slides the pitch up. If the pitch gets 'too high', then
the channel is turned off.
Gxx Portamento to note.
This command requires 2 parameters: A note to slide to
and a speed. Example:
C-4 01 ùù .00
G-4 01 ùù G08
ùùù ùù ùù G00
ùùù ùù ùù G00
This will cause the note C-4 to slide to G-4 with speed 8.
You *CAN* change the sample that the note is sliding to.
It is a good idea to make sure that the C5Speed of the
samples is similar, if you want to try this! The new sample
will play from it's beginning.
Hxy Vibrato with speed x, depth y
Causes the frequency to osciallte with depth 'y' at speed
'x' which causes an interesting effect. Don't get carried
away with it though! If you specify EITHER x or y as 0, then
the previous value will be used.
Ixy Tremor with ontime x, offtime y.
Causes the volume of the instrument to remain normal for
x frames, then sets the volume to 0 for y frames.
Jxy Arpeggio with halftones x, y.
This causes the note to quickly cycle through three notes -
the note playing, a note x halftones above, and a note y
halftones above. This causes an effect similar to old
C-64 chords.
Example: C-4 01 ùù J47 will cause the notes C-4, E-4 and
G-4 to be cycled.
Kxx Dual command: Vibrato + Dxx (Volume slide)
Note: The vibrato could have been set with either Hxx or
Uxx
Lxx Dual Command: G00 + Dxx (Portamento to and Volume slide)
Mxx Set channel volume
Each channel has a volume range from 0->40h. The lower
the value, the softer the notes in the channel. This
command is convenient for making 'echoes'... you won't have
to modify the echoing channel from the original, except
for placing a M20 at the top of it!
Values greater than 40h are ignored at playtime.
N0x, Nx0, NFx, NxF Slide channel volume commands
These commands work in the same manner as the slide
volume commands, but operate on the channel volume,
rather than directly on the note volume.
Oxx Set sample offset.
This will cause a sample to be played from offset yxx00h.
This is useful to skip past the first part of a sample
which may have a loud hit, or to start a speech sample
half way through.
If you specify a value PAST the end of a sample, then the
command is ignored.
The "y" part of yxx00h is set with command "SAy"
Example:
... .. .. SA5
C-4 01 .. O10
This will play note C-4, instrument 1 at offset 51000hex
Note to programmers: Oxx for 16-bit samples will move
to the xx00h*2 position in the sample - ie. the 'xx00th'
sample.
P0x, Px0, PFx, PxF Slide panning commands.
These work in the same maner as the slide volume
commands, but operate on the channel panning. P0x slides
the panning right, while Px0 slides the panning left.
Qxy Retriggers a note after y frames with volume modifier x.
This will cause a sample to be replayed from it's
beginning after every y frames. 'x' can be any of the
following:
Value Effect on volume each retrig.
0 No change
1 -1
2 -2
3 -4
4 -8
5 -16
6 *2/3
7 *1/2
8 No change
9 +1
A +2
B +4
C +8
D +16
E *3/2
F *2
Rxy Tremelo with speed x, depth y
This command acts similarly to the vibrato command, but
affects the note volume, instead of the pitch. If you specify
EITHER x or y as 0, then the previous value will be used.
S3x Sets vibrato waveform to x
S4x Sets tremelo waveform to x
S5x Sets panbrello waveform to x
Values for x: 0 = sine wave
1 = square wave
2 = Ramp down
3 = Random!
S70 Past note cut
S71 Past note off
S72 Past note fade
With the loss of 1-1 correspondence of editing channels
to internal playing channels, these commands provide
control over notes that have already been played by a
channel.
Example:
Consider the following situation, where instrument
1, notes C-4 & D-4 map to a looped sample, and the
New Note Action is set to continue.
C-4 01 64 .ùù
D-4 01 64 .ùù
E-4 01 64 .ùù <--- Use S70 here!
Ordinarily, control would be lost over C-4 and D-4, but
using command S70 at the point indicated, the notes C-4
and D-4 would be stopped immediately when the note E-4
plays.
Similarly, note off commands and Fadeout commands can
also be issued.
Note: You *MUST* be in instrument mode for these
to have any significance.
S6x Pattern delay for x ticks.
S73 Set NNA to note cut
S74 Set NNA to continue
S75 Set NNA to note off
S76 Set NNA to note fade
These options allow you to override the default NNA for a
particular NOTE (ie. it does not affect the instrument)
See section 2.5 for an explanation of NNAs.
Note: You *MUST* be in instrument mode for these to have
any effect.
S77 Turn Volume envelope off.
Stops the processing of the volume envelope. This is for the
times that you don't want to use the volume envelope that
you've created.
S78 Turn volume envelope on.
Sometimes, you'll decide that it's better not to use the
volume envelope for most cases, but you may just want to
use it a few times - this is the command that lets you
do that!
Note: You *MUST* be in instrument mode for this to work.
S8x Set panning position
Set panning position, S80 is leftmost, S8F is rightmost.
This is an obsolete command, provided only for ST3
compatibility. Use command Xxx instead.
S91 Set surround sound!
For those of you who are lucky enough to have a dolby
surround sound decoder (myself not included - so if ya
wanna send me something.....), this *should* cause the
sound to come from the surround speaker. This is a
pseudo-panning command, and issuing either Xxx or S8x
will cause the surround sound to be reset.
If you try and play Surround Sound on a GUS, Interwave
or AWE32, it will be played as a central pan.
SAy Set high-offset. Check Oxx for an example.
SB0 Set loopback point
SBx Loop x times.
This pattern space-saving feature will cause the pattern
to be looped x times back to the last SB0. Note that you
can only loop within the pattern! Also, each channel has
it's own loop-back information... so you HAVE to have the
SB0 and SBx in the same channel for it to operate.
SCx Note cut after x frames
This will cause a note to be immediately stopped after x
frames. It is similar to issuing a "^^^" in the note column,
just that it has a finer control over timing.
SDx Note delay for x frames
Actually, this command works like "interpretation" delay
for x frames. Any data - note, sample/instrument or volume
in the channel will not be interpreted until x frames into
the row.
SEx Pattern delay for x rows
This will cause a "pause" on the row for effectively x rows
longer.
Note that if TWO pattern delay commands are issued, then
the only the command in the higher channel will be considered.
Txx Set tempo to xx
Valid ranges are between 20h and 0FFh. The higher the
value, the faster the playback. This essentially
determines the time length of each frame, by the following
formulas:
Frames per minute = 24*Tempo
equivalently:
Frames per second = 0.4*Tempo
T0x Tempo slide down
T1x Tempo slide up
Tempo slides up and down are used to smoothly modify the