]> 4ch.mooo.com Git - 16.git/blob - 16/PCGPE10/CMF.TXT
modified: 16/modex16/scroll.c
[16.git] / 16 / PCGPE10 / CMF.TXT
1 \r
2                ÚÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ¿\r
3                ³ Creative Labs File Formats (SBI/CMF/IBK) ³\r
4                ÀÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÙ\r
5 \r
6                  Written for the PC-GPE by Mark Feldman\r
7               e-mail address : u914097@student.canberra.edu.au\r
8                                myndale@cairo.anu.edu.au\r
9 \r
10               ÚÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ¿\r
11               ³      THIS FILE MAY NOT BE DISTRIBUTED     ³\r
12               ³ SEPARATE TO THE ENTIRE PC-GPE COLLECTION. ³\r
13               ÀÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÙ\r
14 \r
15 \r
16 ÚÄÄÄÄÄÄÄÄÄÄÄÄÂÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ\r
17 ³ Disclaimer ³\r
18 ÀÄÄÄÄÄÄÄÄÄÄÄÄÙ\r
19 \r
20 I assume no responsibility whatsoever for any effect that this file, the\r
21 information contained therein or the use thereof has on you, your sanity,\r
22 computer, spouse, children, pets or anything else related to you or your\r
23 existance. No warranty is provided nor implied with this information.\r
24 \r
25 ÚÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÂÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ\r
26 ³ Sound Blaster Instrument File Format (SBI) ³\r
27 ÀÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÙ\r
28 \r
29 The SBI format contains the register values for the FM chip to synthesize\r
30 an instrument.\r
31 \r
32 ÚÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ¿\r
33 ³ Offset    Description                                                  ³\r
34 ÃÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ´\r
35 ³ 00h-03h   Contains id characters "SBI" followed by byte 1Ah            ³\r
36 ³ 04h-23h   Instrument name, NULL terminated string                      ³\r
37 ³   24h     Modulator Sound Characteristic (Mult, KSR, EG, VIB, AM)      ³\r
38 ³   25h     Carrier Sound Characteristic                                 ³\r
39 ³   26h     Modulator Scaling/Output Level                               ³\r
40 ³   27h     Carrier Scaling/Output Level                                 ³\r
41 ³   28h     Modulator Attack/Delay                                       ³\r
42 ³   29h     Carrier Attack/Delay                                         ³\r
43 ³   2Ah     Modulator Sustain/Release                                    ³\r
44 ³   2Bh     Carrier Sustain/Release                                      ³\r
45 ³   2Ch     Modulator Wave Seelct                                        ³\r
46 ³   2Dh     Carrier Wave Select                                          ³\r
47 ³   2Eh     Feedback/Connection                                          ³\r
48 ³ 2Fh-33h   Reserved                                                     ³\r
49 ÀÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÙ\r
50 \r
51 \r
52 ÚÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÂÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ\r
53 ³ Creative Music File Format (CMF) ³\r
54 ÀÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÙ\r
55 \r
56 The CMF file format consists of 3 blocks: the header block, the instrument\r
57 block and the music block.\r
58 \r
59 \r
60 The CMF Header Block\r
61 ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ\r
62 \r
63 ÚÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ¿\r
64 ³ Offset    Description                                                  ³\r
65 ÃÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ´\r
66 ³ 00h-03h   Contains id characters "CTMF"                                ³\r
67 ³ 04h-05h   CMF Format Version MSB = major version, lsb = minor version  ³\r
68 ³ 06h-07h   File offset of the instrument block                          ³\r
69 ³ 08h-09h   File offset of the music block                               ³\r
70 ³ 0Ah-0Bh   Clock ticks per quarter note (one beat) default = 120        ³\r
71 ³ 0Ch-0Dh   Clock ticks per second                                       ³\r
72 ³ 0Eh-0Fh   File offset of the music title (0 = none)                    ³\r
73 ³ 10h-11h   File offset of the composer name (0 = none)                  ³\r
74 ³ 12h-13h   File offset of the remarks (0 = none)                        ³\r
75 ³ 14h-23h   Channel-In-Use Table                                         ³\r
76 ³ 24h-25h   Number of instruments used                                   ³\r
77 ³ 26h-27h   Basic Tempo                                                  ³\r
78 ³ 28h-?     Title, composer and remarks stored here                      ³\r
79 ÀÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÙ\r
80 \r
81 \r
82 The CMF Instrument Block\r
83 ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ\r
84 \r
85 The instrument block contains one 16 byte data structure for each instrument\r
86 in the piece. Each record is of the same format as bytes 24h-33h in the\r
87 SBI file format.\r
88 \r
89 \r
90 The CMF Music Block\r
91 ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ\r
92 \r
93 The music block adheres to the standard MIDI file format, and can have from\r
94 1 to 16 instruments. The PC-GPE file MIDI.TXT contains more information\r
95 on this file format.\r
96 \r
97 The music block consists of an alternating seqence of time and MIDI event\r
98 records:\r
99 \r
100 ÚÄÄÄÄÄÂÄÄÄÄÄÄÄÄÄÄÂÄÄÄÄÄÂÄÄÄÄÄÄÄÄÄÄÂÄÄÄÄÄÂÄÄÄÄÄÄÄÄÄÄÂÄ\r
101 ³dTime³MIDI Event³dTime³MIDI Event³dTime³MIDI Event³ ........\r
102 ÀÄÄÄÄÄÁÄÄÄÄÄÄÄÄÄÄÁÄÄÄÄÄÁÄÄÄÄÄÄÄÄÄÄÁÄÄÄÄÄÁÄÄÄÄÄÄÄÄÄÄÁÄ\r
103 \r
104 dTime (delta Time) is the amount of time before the following MIDI event.\r
105 MIDI Event is any MIDI channel message (see MIDI.TXT).\r
106 \r
107 \r
108 The CMF file format defines the following MIDI Control Change events:\r
109 \r
110 ÚÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ¿\r
111 ³ Control                                                                ³\r
112 ³ Number        Control Data                                             ³\r
113 ÃÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ´\r
114 ³  66h          1-127, used as markers in the music                      ³\r
115 ³  67h          0 - melody mode, 1 = rhythm mode                         ³\r
116 ³  68h          0-127, changes the pitch of all following notes upward   ³\r
117 ³               by the given number of 1/128 semitones                   ³\r
118 ³  69h          0-127, changes the pitch of all following notes downward ³\r
119 ³               by the given number of 1/128 semitones                   ³\r
120 ÀÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÙ\r
121 \r
122 In rhythm mode, the last five channels are allocated for the percussion\r
123 instruments:\r
124 \r
125                    ÚÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ¿\r
126                    ³ Channel   Instrument      ³\r
127                    ÃÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ´\r
128                    ³  12h      Bass Drum       ³\r
129                    ³  13h      Snare Drum      ³\r
130                    ³  14h      Tom-Tom         ³\r
131                    ³  15h      Top Cymbal      ³\r
132                    ³  16h      High-hat Cymbal ³\r
133                    ÀÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÙ\r
134 \r
135 \r
136 ÚÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÂÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ\r
137 ³ Sound Blaster Instrument Bank File Format (IBK) ³\r
138 ÀÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÙ\r
139 \r
140 A bank file is a group of up to 128 instruments.\r
141 \r
142 ÚÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ¿\r
143 ³ Offset    Description                                                  ³\r
144 ÃÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ´\r
145 ³ 00h-03h   Contains id characters "IBK" followed by byte 1Ah            ³\r
146 ³ 04h-803h  Parameters for 128 instruments, 16 bytes for each instrument ³\r
147 ³           in the same format as bytes 24h-33h in the SBI format        ³\r
148 ³ 804h-C83h Instrument names for 128 instruments, 9 bytes for each       ³\r
149 ³           instrument, each name must be null terminated                ³\r
150 ÀÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÙ\r
151 \r
152 ÚÄÄÄÄÄÄÄÄÄÄÄÄÂÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ\r
153 ³ References ³\r
154 ÀÄÄÄÄÄÄÄÄÄÄÄÄÙ\r
155 \r
156 Title : Sound Blaster - The Official Book\r
157 Authors : Richard Heimlich, David M. Golden, Ivan Luk, Peter M. Ridge\r
158 Publishers : Osborne/McGraw Hill\r
159 ISBN : 0-07-881907-5\r