home *** CD-ROM | disk | FTP | other *** search
/ Large Pack of OldSkool DOS MOD Trackers / funk108a.zip / FUNK_S.ZIP / FORMAT.TXT < prev    next >
Text File  |  1995-06-04  |  5KB  |  120 lines

  1. FunkTracker Format
  2. ──────────────────
  3.  
  4. Header
  5. =-=-=-
  6.  
  7. struc tfunk_hr
  8.   sig                  dd ?
  9.   info                 dd ?  ─────────────────┐
  10.   LZH_check_size       dd ?                   │ NB/ this is only for
  11.   LZH_check_sum        dd ?                   │ statistical purposes,
  12.   loop_order           db ?                   │ it's not essential
  13.   order_list           db 256 dup(?)          │ to have any meanful value
  14.   break_list           db 128 dup(?)          │ here..
  15. ends                                          │
  16.                                               │
  17. ─'info' code──────────────────────────────────┴────────────────────────
  18. 0 0 0 0 0 0 0 0   1 1 1 1 1 1 1 1   2 2 2 2 2 2 2 2   3 3 3 3 3 3 3 3
  19. \-day---/ \month--/ \----year---/   \-card/ \-CPU-/   | 0 0 0 0 0 0 0
  20.                                                       | \memory reqi/
  21.                                                       |    (256Kb x)
  22.                                        16 bit = 1 ----
  23.  
  24. cpu:  0 = Unknown
  25.       1 = IBM ????
  26.       2 = IBM ????
  27.       3 = Intel386
  28.       4 = Intel486
  29.       5 = Pentium
  30. card:
  31.       0 = SB 2.0
  32.       1 = SB PRO
  33.       2 = GUS v<>
  34.       3 = SB Compatable
  35.       4 = SB 16
  36.       5 = GUS f<>
  37.       6 = Ripped/converted from another format
  38.       7 = Pro Audio
  39.  
  40. 'LZH_check_sum' Field:
  41.  
  42.  This field (pre-release versions 1.04 a below was used as a provisional
  43.  4 byte checksum field. Now it is used for FNK charactristics:
  44.  
  45.  Format: - "Fk**" for fixed channeling or
  46.            "Fv**" for variable channeling
  47.  
  48.  The ** is a dec number ranging from 0 to 99. For example, if the song is
  49.  a 32 channel module, then the preamble is "Fk32". 10 Channels is "Fk10".
  50.  
  51. Sample Block
  52. =-=-=-=-=-=-
  53.  
  54. Then 64 of these things:
  55.  
  56. struc tfunk_sb
  57.   sname                db 19 dup(?)
  58.   start                dd ?
  59.   length               dd ?
  60.   volume               db ?
  61.   balance              db ?
  62.   pt_and_sop           db ?     ; port type + Sample offs shifter 
  63.   vv_waveform          db ?     ; Vibrito Waveform + Tremolo waveform
  64.   rl_and_as            db ?     ; Retrig number + arpeggio speed
  65. ends
  66.  
  67. Pattern Data
  68. =-=-=-=-=-=-
  69.  
  70. Each pattern block is 600h bytes - 8 by 64 slot. Each slot has
  71. the following format:
  72.  
  73.  00000000 11111111 22222222
  74.  \    /\     /\  / \      /
  75.   note  sample com  command value
  76.  
  77.  - if note:  = 3D, then reload sample attrs
  78.              = 3F, then it's a null slot
  79.              = 3E, then sample only slot
  80.  
  81.  
  82. Commands
  83. =-=-=-=-
  84.  
  85.  Full Commands                              Command 'O'
  86.  
  87.  A  :Frequency Port Up                      O00:Vibrato Sine
  88.  B  :Frequency Port Dn                      O01:Vibrato Triangle
  89.  C  :Frequency Porta                        O02:Vibrato Square
  90.  D  :Frequency Vibrato                      O03:Vibrato Sawtooth
  91.  E  :Freq Vibrato Fanin                     O04:Vibrato Random
  92.  F  :Freq Vibrato Fanout                    O05:tremola Sine
  93.  G  :Volume Sld Up                          O06:tremola Triangle
  94.  H  :Volume Slide Down                      O07:tremola Square
  95.  I  :Volume Porta                           O08:tremola Sawtooth
  96.  J  :Volume Reverb                          O09:tremola Random
  97.  K  :Tremola                                O0A:Halt Note System
  98.  L  :Arpeggio                               O0B:Halt Volume System
  99.  M  :Sample Offset                          O0C:Halt All Systems
  100.  N  :Volume                                 O0D:Invert Funkcrtl
  101.                                             O0E:Snap to log Porting
  102.                                             O0F:Snap to Line Porting
  103.                                             O1 :Volume Cut!
  104.                                             O2 :Real Frequency Adjust
  105.                                             O3 :Set Arpeggio Speed
  106.                                             O4 :Fine Port Up
  107.                                             O5 :Fine Port Dn
  108.                                             O6 :Fine Volume Slide Up
  109.                                             O7 :Fine Volume Slide Dn
  110.                                             O8 :Volume Crest
  111.                                             O9 :Volume Trough
  112.                                             OA :Set Master Volume
  113.                                             OB :Expand Loop
  114.                                             OC :Colapse Loop
  115.                                             OD :Note Retrig
  116.                                             OE :Set Channel Balance
  117.                                             OF :Tempo
  118.  
  119.  
  120.