forked from HertzDevil/0CC-FamiTracker
-
Notifications
You must be signed in to change notification settings - Fork 0
/
specs.txt
95 lines (75 loc) · 2.76 KB
/
specs.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
0CC-FamiTracker Mod
Specification
Written by HertzDevil
Version 0.3.14.5 - Jan 16 2017
--------------------------------------------------------------------------------
===
DETUNETABLES Block
===
Version 1:
- total: char[0,6] - number of detune tables
Repeat [total] times:
- chip: char[0,5] - index of the detune table. 0=2A03, 1=2A07,
2=VRC6 sawtooth, 3=VRC7, 4=FDS, 5=N163
- count: char[1,96] - number of notes in the specified detune table
Repeat [count] times:
- note: char[0,95] - zero-based note index of the detune table entry
- offset: int[-32767,32767] - register offset of the detune table entry
===
GROOVES Block
===
Version 1:
- count: char[0,32] - number of grooves
Repeat [count] times:
- index: char[0,31] - index of the groove
- size: char[1,128] - size of the groove
Repeat [size] times:
- entry: char[1,255] - groove entry
- tracks: char[1,64] - Number of tracks
Repeat [tracks] times:
- flag: char[0,1] - 0 for default speed, 1 for default groove
===
BOOKMARKS Block
===
Version 1:
- count: int[0,] - number of bookmarks in the FTM
Repeat [count] times:
- track: char[0,63] - track index
- frame: char[0,255] - frame index
- row: char[0,255] - row index
- high1: int[0,256] - first highlight
- high2: int[0,256] - second highlight
- flag: char[0,1] - 0 for highlight in current frame, 1 for following frames
- name: str[] - bookmark name
===
PARAMS_EXTRA Block
===
Version 1:
- linearpitch: int[0,1] - enable linear pitch mode
Version 2:
- linearpitch: int[0,1] - enable linear pitch mode
- semitone: char[-12,12] - global semitone tuning
- cent: char[-100,100] - global cent tuning
===
Text exporter syntax
===
The text command syntax for a detune table entry is:
- DETUNE [chip] [octave] [note] [offset]
- chip: int[0,5] - index of the detune table. 0=2A03, 1=2A07, 2=VRC6 sawtooth,
3=VRC7, 4=FDS, 5=N163
- octave: int[0,7] - octave of key
- note: int[0,11] - scale note of key
- offset: int[-32767,32767] - register offset
The text command syntax for a groove is:
- GROOVE [index] [size] : [speed]
- index: int[0,31] - index of the groove
- size: int[1,128] - length of the groove
- speed: int_list[1,255] - groove entries
To use grooves in a module, the following command must be included before all
TRACK commands:
- USEGROOVE : [track]
- track: int_list[1,64] - list of one-based indices of tracks that use a
default groove
Bookmarks and the linear pitch setting are not exported to text files.
--------------------------------------------------------------------------------
For enquiries mail to nicetas.c@gmail.com