MUCOM 88 de Yuzo Koshiro
Reglas del Foro
Las reglas son muy sencillas. Por favor abstengase de postear acerca de descargas ilegales. Lo mismo aplica a material ofensivo, es decir, fuera de contexto o inapropiado.
Todo lo demás está permitido siempre y cuando no se esté ofendiendo a alguien más de manera directa e intencional. Por lo mismo no se permite insultar a los demás usuarios.
Cualquier violación a éste reglamento, resultará en un ban permanente.
Las reglas son muy sencillas. Por favor abstengase de postear acerca de descargas ilegales. Lo mismo aplica a material ofensivo, es decir, fuera de contexto o inapropiado.
Todo lo demás está permitido siempre y cuando no se esté ofendiendo a alguien más de manera directa e intencional. Por lo mismo no se permite insultar a los demás usuarios.
Cualquier violación a éste reglamento, resultará en un ban permanente.
MUCOM 88 de Yuzo Koshiro
Ayer Yuzo Koshiro liberó las herramientas que creó para hacer música en FM con el YM2608.
No sólo liberó las herramientas originales en PC-8801, también para Windows. Al igual que varios tracks de Bare Knuckle (Streets of Rage), Actraiser, Super Shinobi, Slap Fight, The Scheme y Etrian Odissey.
Acá su mensaje: https://twitter.com/yuzokoshiro/status/ ... 0340869121
Imágenes de floppy para PC-8801: https://www.ancient.co.jp/~mucom88/
Versión para Windows: https://onitama.tv/mucom88/
Código en github: https://github.com/onitama/mucom88
Archivos:
PC-8801 Windows Fuentes: Extra:
Probándolo en mi PC-8801: https://www.instagram.com/p/Bro7RjTlF3f/
No sólo liberó las herramientas originales en PC-8801, también para Windows. Al igual que varios tracks de Bare Knuckle (Streets of Rage), Actraiser, Super Shinobi, Slap Fight, The Scheme y Etrian Odissey.
Acá su mensaje: https://twitter.com/yuzokoshiro/status/ ... 0340869121
Imágenes de floppy para PC-8801: https://www.ancient.co.jp/~mucom88/
Versión para Windows: https://onitama.tv/mucom88/
Código en github: https://github.com/onitama/mucom88
Archivos:
PC-8801 Windows Fuentes: Extra:
Probándolo en mi PC-8801: https://www.instagram.com/p/Bro7RjTlF3f/
- ChristleVania
- Mensajes: 76
- Registrado: Jue Jul 09, 2015 3:09 pm
- Ubicación: México
- Contactar:
Re: MUCOM 88 de Yuzo Koshiro
Basándome en el programa de ejmplo que puso el buen AlanBodhi en el canal de Discord, entendí fácilmente las bases de MUCOM88. Escribí este pequeño ejemplo (incluyendo algo de teoría musical relevante e instrucciones) con la esperanza de que sea de utilidad para todos. La tabulación no quedó tan bien aquí, pero incluyo el archivo fuente para que lo prueben y donde el código está un poco mejor estructurado para su entendimiento
EDIT 23/12/18 1:00PM - Puse mal un dato en los comentarios. Ya está corregido en el código y el archivo ha sido actualizado. El funcionamiento se quedó igual.
Código: Seleccionar todo
#title DK Jungle Swing
#composer David Wise
#author ChristleVania
#voice voice.dat
#pcm mucompcm.bin
#date 2018/12/23
#comment
; Ejemplo basico de uso de MUCOM88 usando el bajeo de Donkey Kong Country.
;
; This program is free software: you can redistribute it and/or modify
; it under the terms of the GNU General Public License as published by
; the Free Software Foundation, either version 3 of the License, or
; (at your option) any later version.
;
; This program is distributed in the hope that it will be useful,
; but WITHOUT ANY WARRANTY; without even the implied warranty of
; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
; GNU General Public License for more details.
;
; You should have received a copy of the GNU General Public License
; along with this program. If not, see <https://www.gnu.org/licenses/>.
;
; =================================================================================
;
; Una octava esta formada por 7 notas: "Do Re Mi Fa So La Si".
;
; Cada octava nota comienza el ciclo de nuevo y por ende una nueva octava.
; Ejemplo: "do re mi fa so la si Do Re Mi Fa So La Si DO RE MI FA SO LA SI"
;
; c = Do
; d = Re
; e = Mi
; f = Fa
; g = Sol
; a = La
; b = Si
;
; > = subir 1 octava
; < = bajar 1 octava
; Ejemplo 1: "c d e f g a b >c d e f g a b" (">c" indica que a partir de este Do inicia una octava mas alta)
; Ejemplo 2: "b >c d d c <b a g g a b b a" (En ">c" sube una octava, pero volvemos a bajar a partir de "<b")
;
; o[numero] = Indica cual octava se va a utilizar en ese compas (del 1 al 8).
; Ejemplo 1: o3 = se utilizara la tercera octava.
; Ejemplo 2: o5 = se utilizara la quinta octava.
;
; A los sonidos intermedios entre notas se les conoce como semitonos.
; El semitono posterior a una nota se conoce como "Sostenido" y se representa con "#".
; El semitono anterior a una nota se conoce como "Bemol" y se representa con "b".
;
; + = Sostenido
; - = Bemol
; Ejemplo 1: a+ = La#
; Ejemplo 2: a- = Lab
;
; A la ausencia de sonido se le conoce como "Silencio".
; r = Silencio
;
; La duracion por defecto de una nota o silencio = 1/4 (negra).
:
; ^ = Extender tiempo de la nota 1/4
; Ejemplo 1: a^ = 1/2 tiempo (blanca)
; Ejemplo 2: a^^ = 3/4 tiempo
; Ejemplo 3: a^^^ = 1 tiempo (redonda)
;
; Al usarse semitonos, estos se deben indicar ANTES de extender el tiempo de una nota.
; CORRECTO: a+^ (Nota Semitono Extension)
; INCORRECTO: a^+
;
; El "Compas" define el ritmo de la musica.
; Un "Compas" se divide en "Tiempos" o "Beats". El numero de "Tiempos" o "Beats" depende de como fue escrita la musica.
; A cada "Tiempo" o "Beat" le cabe un numero determinado de notas dependiendo de como fue escrita la musica.
;
; Al promedio de beats en una cancion durante 1 minuto se le conoce como "BPM" y define la velocidad de la musica.
;
; Definimos el timing "t" (0 a 255), el volumen "v" del canal (0 a 15) e instrumento "@" en el canal FM "A".
A t235 v15 @91
; NOTA: El BPM de esta cancion es 117.11. Sin embargo ese valor no servia en "t". Al final "t" quedo en 235, que es alrededor
; del doble del BPM. Como el valor maximo aceptado es 255, segun esta logica el BPM mas alto soportado sería de alrededor
; de 127, pero la existencia de una limitante asi me lleva a creer que realmente no funciona asi la declaracion del BPM y que
; solo es una coincidencia que sea el valor sea el doble. Habra que aclararlo en el futuro.
; T1 T2 T3 T4 ; En este caso, cada compas esta compuesto por 4 tiempos o beats.
;=====================================
A o2 a^^^ a^^^ rrrr rrrr ; A cada compas le caben 16 notas de 1/4 de duracion.
A o2 a^^^ a^^^ rrrr gaa+^
A o2 a^^^ a^^^ rrrr rrrr
A o2 a^^^ a^^^ rrrr rrrr
A o2 g^^^ g^^^ rrrr rrrr
A o2 g^^^ g^^^ rrrr gaa+^
A o2 a^g^a^e^d^g^e^d^
A o2 a^g^a^e^d^g^e^d^
A o2 g^>d^c^<g^b^g^f^b^
A o2 g^>d^c^<g^b^g^f^b^
A o2 a^a^ e^e^ f^fg^ fg^
A o2 a^a^ e^e^ f^>c<b^ ag^ ; "<b^" abarca 1/4 del tercer tiempo y 1/4 del cuarto tiempo.
A o2 a^a^ e^e^ f^fg^ fg^
A o2 a^a^ e^e^ f^>c<b^ ag^
A o2 a^a^ e^e^ a^e^f^g^
A o2 a^a^ >c^c^<b^g+^a^b^
A o2 e^e^ g+^g+^e^g+^ a^b^
A o2 e^g+^a^b^a^e^f+^g+^
A o2 a^a^ e^e^ a^e^f^g^
A o2 a^a^ >c^c^<b^g+^a^b^
A o2 e^e^ g+^g+^e^g+^a^b^
A o2 e^g+^a^b^a^e^a^rr
A o2 rrrr rrrr rrrr rrrr
A o2 e^^^^^^^ f^f+^ g^g+^ ; "e" dura 2 tiempos completos (8/4)
A o2 a^^^^^^^^^^^^^^^ ; "a" dura 4 tiempos completos (16/4)
; GRACIAS A AlanBodhi POR HABER PUESTO LAS BASES PARA EL DESARROLLO DE ESTE EJEMPLO.
; GRACIAS A Artemio POR DIVULGAR EL RELEASE DE MUCOM88.
"Games are more like artifacts than media. By this we mean that the content of a game is its behavior, not the media that streams out of it towards the player."
Jump The Koopa
@ChristleVania
Jump The Koopa
@ChristleVania
- ChristleVania
- Mensajes: 76
- Registrado: Jue Jul 09, 2015 3:09 pm
- Ubicación: México
- Contactar:
Re: MUCOM 88 de Yuzo Koshiro
Aquí les dejo la lista de sonidos que tiene el software. En un inicio no sabía cómo ver los nombres y solo me la pasaba cambiando el parametro "@" en mi código para escucharlos. Lo que se tiene que hacer para verlos es entrar al editor (el botón V.EDIT) y luego arrastrar y soltar el archivo "voice.dat" que viene en la misma carpeta del MUCOM88. Después de ello podrán navegar por los sonidos con Ctrl+arriba o Ctrl+abajo. También pueden editarlos ahí mismo si gustan. A continuación la lista. Los transcribí tal cual aparecen en el editor. Algunos nombres se pueden entender pese a las abreviaturas, y los que no tienen nombre aún así tienen sonido:
Ya que estamos hablando del editor, me gustaría compartirles un par de videos. El primero es sobre los "Envelopes", que nos ayudará a entender la estructura de un sonido: https://www.youtube.com/watch?v=9SMi47AEnSo
El segundo habla sobre la síntesis FM y que quiere decir la parte de "algoritmo" que podemos ver en la parte superior derecha del editor de MUCOM88. Este último lo compartió Artemio en el canal de Discord: https://www.youtube.com/watch?v=9_LvPz6kCQE
Si deciden editar algún sonido a su preferencia, pueden utilizarlo en su composición simplemente presionando Ctrl+C, lo que copiará los parámetros de configuración al portapapeles, para después pegarlo en su código con Ctrl+V:
Código: Seleccionar todo
0
1 dgt1
2
3
4 back1
5 main2
6 main3
7 7thv04
8 back2
9 brass1
10
11
12
13 ap1
14 mushi1
15 down
16 ufo
17 car
18 laser1
19 laser2
20 sin1
21 brs1
22 brs2
23 trump1
24 str1
25 str2
26 ep1
27 ep2
28 ep3
29 guitar
30 ebass
31 ebass2
32 eorgn1
33 eorgn2
34 porgn1
35 porgn2
36 flute
37 pic
38 oboe
39 clari
40 grock
41 vib
42 xylop
43 koto
44 zitar
45 clav
46 harps
47 bell
48 harp
49 b/brs
50 harm
51 st_drm
52 timp
53 train
54 amb
55 tweet
56 r_drop
57 horn
58 s_drum
59 cowb
60 perc1
61 perc2
62
63
64 gtr2
65
66
67
68
69
70 ebass3
71 ep4
72 b_drum
73 e_tam1
74 ebass4
75 ??????
76 egtr1
77 egtr2
78 kuchi
79 bell2
80 fue
81 egtr3
82 egtr4
83 ??????
84 banjo
85 synth
86
87
88
89
90 orc1
91 orc2
92
93 p_bell
94
95
96 s_bass
97 p_brs
98 e_tam2
99 str3
100 c_bas1
101 egta
102 p_brs2
103 efc001
104 psgsnd
105 SYNT01
106 orc003
107 ebassx
108 orc004
109 orc005
110 orco5b
111 orc04b
112 ebasx2
113 HI_HAT
114 str4
115 orc5
116 orc7th
117 orco5c
118 orc05d
119 banjo2
120 banjo3
121 t_bell
122 7thv01
123 d_gtr3
124 drum2
125 ebassy
126 7thv01
127 7thv02
128 ebass5
129 s_dram
130 ebass6
131 harm2
132 timp02
133 d_gtr
134 7thv03
135 timp01
136 ebass7
137 orc201
138 orc006
139 orcv13
140 hoshi
141 vvvvvv
142 sin001
143 sin002
144 dora
145 sakebi
146 psg2
147 scrmb
148 tam
149 scrmb2
150 efc002
151 ebass8
152 clav2
153
154
155
156
157 strxx2
158 E.BASS
159 a.pian
160 brsdob
161 timbal
162
163
164
165 sax
166 magicp
167 e_brs
168 ebass9
169 clav3
170 koto2
171 ap3
172 sbass2
173
174
175 7thv05
176 p_brs3
177 orc7t2
178 orc04s
179
180
181 psg003
182 kick1
183 psg004
184 psg005
185
186 gtr003
187 psg006
188 psg007
189 benben
190 pipe2
191
192 efctes
193 sbass2
194 p_brs3
195 ap4
196 sbass3
197 oldtrm
198 hithat3
199 strpls
200 hi_hat
201
202 trump2
203
204
205 7thv05
206 comb2
207 808kik
208 orcstr
209
210
211 synth1
212
213 sbass4
214 gtr_hi
215 cob2
216 gtr3
217
218 synth2
219 bass 7
220 str4Mb
221 sin221
222 Cow be
223 Sin sonido
224 Sin sonido
225 Sin sonido
226 Sin sonido
227 Sin sonido
228 Sin sonido
229 Sin sonido
230 Sin sonido
231 Sin sonido
232 Sin sonido
233 Sin sonido
234 Sin sonido
235 Sin sonido
236 Sin sonido
237 Sin sonido
238 Sin sonido
239 Sin sonido
240 Sin sonido
241 Sin sonido
242 Sin sonido
243 Sin sonido
244 Sin sonido
245 Sin sonido
246 Sin sonido
247 Sin sonido
248 Sin sonido
249 Sin sonido
250 Sin sonido
251 Sin sonido
252 Sin sonido
253 Sin sonido
254 Sin sonido
255 Sin sonido
El segundo habla sobre la síntesis FM y que quiere decir la parte de "algoritmo" que podemos ver en la parte superior derecha del editor de MUCOM88. Este último lo compartió Artemio en el canal de Discord: https://www.youtube.com/watch?v=9_LvPz6kCQE
Si deciden editar algún sonido a su preferencia, pueden utilizarlo en su composición simplemente presionando Ctrl+C, lo que copiará los parámetros de configuración al portapapeles, para después pegarlo en su código con Ctrl+V:
"Games are more like artifacts than media. By this we mean that the content of a game is its behavior, not the media that streams out of it towards the player."
Jump The Koopa
@ChristleVania
Jump The Koopa
@ChristleVania
Re: MUCOM 88 de Yuzo Koshiro
Hola, Que tal.
Estuve experimentando con valores que veia en los ejemplos de Yuzo Koshiro ya que con la documentacion con la que viene no me quedo claro como funcionan algunas cosas.
Estoy intentando entender la duracion de las notas y encontre 2 formas mas aparte del ejemplo que subio ChristleVania (ej. c^^^^). Aun no lo comprendo del todo pero lo comparto por si alguien mas lo llega a entender.
Les dejo 5 ejercicios/ejemplos que realize
1 Ejemplo de duracion de las notas (No pude lograr hacer tresillos, seisillos, quintillos etc)
2 Otra forma de modificar la duracion de las notas (No pude lograr hacer tresillos, seisillos, quintillos etc)
3 Como usar el puntillo
4 Transpose
5 Macro Call
Adjunto el archivo muc con los 5 ejemplos
Estuve experimentando con valores que veia en los ejemplos de Yuzo Koshiro ya que con la documentacion con la que viene no me quedo claro como funcionan algunas cosas.
Estoy intentando entender la duracion de las notas y encontre 2 formas mas aparte del ejemplo que subio ChristleVania (ej. c^^^^). Aun no lo comprendo del todo pero lo comparto por si alguien mas lo llega a entender.
Les dejo 5 ejercicios/ejemplos que realize
1 Ejemplo de duracion de las notas (No pude lograr hacer tresillos, seisillos, quintillos etc)
2 Otra forma de modificar la duracion de las notas (No pude lograr hacer tresillos, seisillos, quintillos etc)
3 Como usar el puntillo
4 Transpose
5 Macro Call
Adjunto el archivo muc con los 5 ejemplos
Código: Seleccionar todo
#title ????
#composer ???
#author ???
#voice voice.dat
#pcm mucompcm.bin
#date 2018/12/30
#comment
;DURACION DE LAS NOTAS
;Encontre 2 formas de jugar con la duracion de las notas.
;1 Indicando con un numero el valor de la nota
;2 Indicando con una l seguido del numero del valor de la nota
A l4 T90 v8 @91 o3
B l4 v10 @92 o4
;Ejemplo 1
; 1 Redonda 2 Blanca 4 Negra 8 Corchea 16 Semicorchea
; 1 2 3 4 1 2 3 4 1 2 3 4 1 2 3 4 [1 ]x4
; ============ ============ ============ ======================== =================
A |c4 c4 c4 c4 | c4 c4 c4 c4 | c4 c4 c4 c4 | c4 c4 c4 c4 | [c4 ]4
B |c1 | c2 g2 | c4 e4 g4 e4 | c8 e8 g8 e8 c8 e8 g8 e8 | [c16 e16 g16 e16]4
;Descanzo de un compas
A r1
B r1
;Ejemplo 2
; l1 redonda l2 blanca l4 negra l8 corchea l16 semicorchea
; 1 2 3 4 1 2 3 4 1 2 3 4 1 2 3 4 1 2 3 4
; ================ ================ ================ ================ ================
A l4 |c c c c | l4 c c c c | l4 c c c c | l4 c c c c | l4 c c c c |
B l1 |c | l2 c g | l4 c e g e | l8 c e g e c e g e | l16 cegecegecegecege|
;Descanzo de un compas
A r1
B r1
;Ejemplo de puntillo, este agrega la mitad de su valor a la nota
; 1 2 3 4
|================
A l4 |c c c c
B l4 |c. c. c
;Descanzo de un compas
A r1
B r1
;____________________________________
;K TRANSPOSE (-12~+12)
; Ejemplos de Tranpose
A l8 t100 v10 @91 o3
A cege ; (Do Mi Sol Mi )
A K5 cege ;Transporta 2 semitonos arriba (Fa La Re La )
A K0 cege ;Transporta al tono original (Do Mi Sol Mi )
A K-5 cege ;Transporta 2 semitonos abajo (Sol Si Re Si )
;Descanzo de un compas
A r1
;____________________________________
;MACRO CALL
;Puedes mandar llamar melodias previamentes definidas
;Ejemplo de Macro Call
A t100 v10 @91 o3
# *1{cccc} ;Se define la Macro 1 (Do Do Do Do)
# *2{dddd} ;Se define la Macro 2 (Re Re Re Re)
A *1 *2 *1 ;Se manda a llamar la macro 1, despues llama la macro 2 y regresa a la macro 1 (Al final sonaria cccc dddd cccc )
- Adjuntos
-
- EjemploDuracionDeNotas.muc.zip
- (1.05 KiB) Descargado 276 veces
- ChristleVania
- Mensajes: 76
- Registrado: Jue Jul 09, 2015 3:09 pm
- Ubicación: México
- Contactar:
Re: MUCOM 88 de Yuzo Koshiro
Hola Alan, gracias por tus ejemplos iniciales en Discord y gracias por venir al foro a compartir tus ejercicios. Yo tambien acabo de ver que Koshiro usa numeros junto a las notas para la duracion. Aunque ambas maneras funcionas, creo que la numerica seria la mejoralanbodhi escribió: ↑Lun Dic 31, 2018 1:56 am Hola, Que tal.
Estuve experimentando con valores que veia en los ejemplos de Yuzo Koshiro ya que con la documentacion con la que viene no me quedo claro como funcionan algunas cosas.
Estoy intentando entender la duracion de las notas y encontre 2 formas mas aparte del ejemplo que subio ChristleVania (ej. c^^^^). Aun no lo comprendo del todo pero lo comparto por si alguien mas lo llega a entender.
Les dejo 5 ejercicios/ejemplos que realize
Acá les dejo una version simplificada del "sampl1.muc" incluido en MUCOM88 con notas de que hace cada parte del codigo. Algunas cosas las saque de "MUCOM88_REF.txt", otras del datasheet del YM2608 y otras leyendo de diversos lugares y atando cabos. La melodía original es más compleja pero a simple vista puede ser abrumadora, así que solo dejé los canales A, B y K que eran lo minimo necesario.
Código: Seleccionar todo
#mucom88 1.5
#title sampl1 (Explicado)
#composer Yuzo Koshiro
#author ChristleVania
#voice voice.dat
#pcm mucompcm.bin
#date 2018/12/31
#comment
; Explicando "sampl1.muc"
;
; This program is free software: you can redistribute it and/or modify
; it under the terms of the GNU General Public License as published by
; the Free Software Foundation, either version 3 of the License, or
; (at your option) any later version.
;
; This program is distributed in the hope that it will be useful,
; but WITHOUT ANY WARRANTY; without even the implied warranty of
; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
; GNU General Public License for more details.
;
; You should have received a copy of the GNU General Public License
; along with this program. If not, see <https://www.gnu.org/licenses/>.
;
; =================================================================================
;
; & = Legato
;
; Se le conoce como "Legato" a la accion de ligar 2 notas sin que haya un silencio entre ellas.
; Un ejemplo es cuando se practican escalas para calentar la voz. Usualmente no se corta
; el sonido entre notas, sino que se conectan las notas, creando un sonido ininterrumpido.
;
; Ejemplo 1: a&b (Legato de La a Si)
; Ejemplo 2: c&e&g&e&c (Legato del arpegio Do Mi Sol Mi Do)
;
; q[valor] = Staccato
;
; Se le conoce como "Staccato" al acto de acortar las notas deliberadamente para crear una
; clara separacion entre ellas. En MUCOM88 el "Staccato" se especifica al momento de configurar
; el canal que se está utilizando.
;
; Ejemplo 1: q1 (estacato discreto)
; Ejemplo 2: q8 (estacato marcado)
;
; Entre mas alto el valor del "Staccato", mas cortas seran las notas. Hay que tomar en cuenta que
; si se acorta una nota el mismo tiempo que su duracion, esta dejara de producir sonido.
; Cabe aclarar que el "Staccato" no afecta la duracion de una nota (matematicamente hablando),
; solo al sonido que produce.
;
; L = Loop Global (Repetir voz indefinidamente)
;
; l = Longitud por defecto de cada nota.
; Ejemplo 1: l16 (cada nota dura 1/16)
; Ejemplo 2: l8 (cada nota dura 1/8)
;
; M[valor 1],[valor 2],[valor 2],[valor 4] = Control por software de la oscilacion de baja frecuencia (LFO).
;
; Dicho de manera muy simplificada, un LFO sirve para crear efectos como ecos, vibratos, tremolos, etc.
; MUCOM88 configura el LFO con 4 valores, siendo estos
;
; > Phase Modulation Sensitivity o PMS (Delay)
; > LFO Frequency (Vibrato)
; > Amplitude Modulation Sensitivity o AMS (Tremolo)
; > Numero de cambios o AMON (Efecto WOWOW) respectivamente.
;
; Ejemplo: M10,2,6,12
; (PMS = 10
; LFO FREQ = 2
; AMS = 6
; AMON = 12)
;
; yDR,[valor 1],[valor 2] = Modificar directamente el Decay Rate
;
; Se puede configurar directamente los valores del sonido (Attack, Decay, Sustain y Release) sin necesidad de
; ingresar al Voice Editor (V.EDIT). En este caso, al utilizar "yDR" a configurar un canal, podemos elegir
; cual de los 4 operadores (OP) queremos editar (primer valor) y que valor queremos insertar (valor 2). De esta
; manera no tenemos que utilizar el Voice Editor para hacer cambios simples a una voz.
;
; Ejemplo: yDR,2,7 (Modificar el valor del Decay Rate a "7" en el operador 2)
;
; ([valor] y )[valor] = Designacion relativa del volumen
; NOTA: No entiendo bien que hace esto (la documentacion no es muy explicita).
;
; []{valor} = Loop local
;
; Para ahorrar espacio en memoria es una mejor practica utilizar loops cuando vamos a repetir exactamente la misma
; secuencia de notas o ritmos varias veces (o a veces durante toda la composicion). De esta manera solo escribimos
; 1 sola linea de codigo y ahorramos preciada memoria.
;
; Ejemplo 1: [c d e f g a b]4
; Esto repite esta secuencia 4 veces.
;
; Ejemplo 2: [c&d e^ f8 g a b]8
; Esto repite esta secuencia 8 veces.
;
; / = Salida del Loop local
;
; Es posible que nuestra melodia o ritmo tenga algun cambio ligero en algun momento que requiere codigo
; distinto al de nuestro loop, como un remate en el ritmo o una terminacion distinta en la melodia. Es aqui cuando
; utilizamos "/" para decirle a MUCOM88 que en nuestra ultima iteracion del loop no ejecute el codigo completo. Esto
; nos permite reutilizar el codigo justo hasta el punto donde es repetitivo y salir solamente para ejecutar el cambio.
;
; Ejemplo: [c d e /f g a b]4 e d e d
; Esto repite las notas 4 veces, pero la 4ta vez solo llega hasta "e" y saldra para ejecutar "e d e d".
;
; K = Canal ADPCM
;
; ADPCM son las siglas de Adaptive Differential Pulse-Code Modulation y en terminos muy simples es una tecnica
; de digitilaziacion de audio que nos permite tener sonidos de la vida real en medios digitales (llamados "samples").
; El canal "K" del YM2608 es un canal ADPCM, y nos permite agregar "samples" a nuestras composiciones.
;
; En este canal los parametros de configuracion tienen algunos valores distintos al resto de los canales:
;
; > El volumen "v" tiene un rango de 0 a 255.
; > La octava "o1" es la octava natural, y aumentarla hace mas grave el sonido.
; > En consecuencia, "<" aumenta 1 octava y ">" disminuye 1 octava.
; > La numeracion de las voces definidas por "@" son distintas y estan especificadas en MUCOM88_REF.txt
; en la seccion ADPCM.
;
; Con este canal podemos utilzar percusiones mas realistas.
;
; NOTA: Es necesario que nuestro archivo ".muc" se encuentre en la misma ruta que "mucompcm.bin" (incluido con MUCOM88),
; o de lo contrario no habra sonido en el canal. Esto aplica tambien si se esta utilizando cualquier otro archivo de samples
(por ejemplo "bare2pcm.bin" incluido en los samples proporcionados por Yuzo Koshiro).
;======================
; MELODIA
;======================
A C192 o6 t200 L @78 v9 l16 q4 M20,1,12,4 yDR,4,3
A e8 r4.r4
A e d c8 d8.g&g2 ; Este "Legato" es para hacer que la nota comience sin vibrato y lo agregue despues.
A g8 f8 e4 r4 r4
A c d e8 e8.f8.c8 c8.d8 r<g8> ; El ultimo ">" asegura que el siguiente loop regrese a su octava original.
;======================
; BAJO
;======================
B C192 L @31 o4 v11 q7 l16
B c8 r c&c4 c8 r c8 e f8
B g8 r g&g4 g8 r g&g4
B a8 r a&a4 a8 r a&a4
B f8 r f&f4 g8 r g&g4
;======================
; PERCUSION
;======================
K C192 o1 L v50 l16
K [@1 c8)50 @11 c(50 @1 c8 /c)50 @11 c8(50]16 ; Repite 15 veces completas y sale antes de "/c" en la numero 16.
K @11)50 ccc(50 ; Parte que reemplaza lo faltante del loop
También les dejo este video que explica con voz Legato, Stacatto y otros https://www.youtube.com/watch?v=SHtZ01-ZiE8.
Update 31/12/18 1:10PM: Añadí un par de links de interés.
"Games are more like artifacts than media. By this we mean that the content of a game is its behavior, not the media that streams out of it towards the player."
Jump The Koopa
@ChristleVania
Jump The Koopa
@ChristleVania
Re: MUCOM 88 de Yuzo Koshiro
Gracias por la info ChristleVania, en especial la lista de instrumentos
Aqui les dejo el tema de ScoreVG que hice con las limitantes que tengo de conocimiento hasta ahora, solo me falto el efecto de explosion final que no supe como reproducir
.
Si alguien le quiere ir agregando cosas para que se escuche mejor adelante.
![Very Happy :D](./images/smilies/icon_e_biggrin.gif)
Aqui les dejo el tema de ScoreVG que hice con las limitantes que tengo de conocimiento hasta ahora, solo me falto el efecto de explosion final que no supe como reproducir
![Laughing :lol:](./images/smilies/icon_lol.gif)
Si alguien le quiere ir agregando cosas para que se escuche mejor adelante.
Código: Seleccionar todo
#title ScoreVG
#composer ScoreVG
#author Alan Ramirez
#voice voice.dat
#pcm mucompcm.bin
#date 2018/12/31
#comment
;BASS
A t188 @31 v15 o4 r1r1 [|e-8<e-16 b-16 >| e-8r16<e-16|>e-8r16d8|<g16>d8|d-8<d-16 a-16 >|d-8r8|d-8r16<b-8b-16b-16r16]3
;E Piano
B @27 v9 o5 [| b-8r16b-16 | r4 | b-8 r16 b-16 | r16 b-8 r16| b-8r16b-16 | r4 | b-8 r16b-16 | r16 b-8 r16|]4
C @27 v9 o5 [| g-8r16g-16 | r4 | g-8 r16 g-16 | r16 g-8 r16| e-8r16e-16 | r4 | e-8 r16g-16 | r16 g-8 r16|]2
H @27 v9 o5 [| e-8r16e-16 | r4 | e-8 r16 d16 | r16 d 8 r16|<b8 r16 b16 | r4 | b 8 r16>d16 | r16 d 8 r16|]4
I @27 v9 o4 [| e-8r16e-16 | r4 | e-8 r16 d16 | r16 d 8 r16| d-8r16d-16 | r4 | d-8 r16<b-16| r16 b-8 r16|]4
@MELODY
C @25 v6 o5 e-2&e-8&{e-8d}&d8&d8 d-2&d-8&{d-8<b-}&b-8&b-8> e-2&e-8&{e-8g-}&g-8&g-8 a-2&a-8&{a-8<b-}&b-8&b-8
;DRUMS
;@47
J v14 o4 [r1]2 v14 [@200r8c8r8c8r8c8r8c8]2 [@198c16c16 @200c8]16
K o1 v70 l8 [| @1c8 @12c16 @1c16 | @14c8 @12c16 @1c16 | c8 @12c16 @14c16 |r8 @12c8]2
K [| @1c8 c8 |@14c8 r16 @1c16 | c8 r16 @14c8 r8r16]2
K [| @1c4 |@14c8 @1c8 | c16 r8 @14c16 | r8 @14c8 ]4
- Adjuntos
-
- ScoreVG.muc.zip
- (671 Bytes) Descargado 284 veces
Re: MUCOM 88 de Yuzo Koshiro
Ya escuché el de Score y DK en la versión de windows, gracias por compartir!
Les dejo las que ha liberado extras Koshiro en su feed de twitter.
Les dejo las que ha liberado extras Koshiro en su feed de twitter.
Re: MUCOM 88 de Yuzo Koshiro
Ya pude cargar archivos muc hacia imagenes d88 utilizables en PC-88, siguiendo este proceso: http://fullmotionvideo.free.fr/phpBB3/v ... 621#p16621
En resumen se descarga el driver, y se descomprime en el folder del emulador M88
Desde el emulador se pueden utilizar los comandos:
Para cargar desde el folder activo en el emulador un archivo, o salvar hacia el.
Acto seguido se puede salvar en floppy el programa cargado en basic con
El problema es que los archivos MUC no funcionan directamente, por extensiones que se hicieron para windows. En particular los comentarios con # y la falta de números de linea en cada sentencia.. así como inclusión de tabuladores en algunos ejemplos por formato.
Para resolver eso, escribí este programa en C que convierte un MUC a un archivo utilizable en la PC-88 en conjunto con las herramientas antes descritas. Simplemente cambia tabuladores por espacios, agrega números de linea por sentencia al estilo basic y elimina todos los comentarios.
También Disponible en GitHUB: https://github.com/ArtemioUrbina/MUConvert
También agregué la opción inversa, para quitarle los comandos de basic y pasarlo a un MUC normal.
Para pasar de MUC a PC88 se utiliza:
-withcomments es opcional, y retiene los comentarios con ;
Para pasar un archivo extraido de un floppy de PC88 a MUC de windows, se usa:
En resumen se descarga el driver, y se descomprime en el folder del emulador M88
Desde el emulador se pueden utilizar los comandos:
Código: Seleccionar todo
cmd load "archivo"
cmd save "archivo"
Acto seguido se puede salvar en floppy el programa cargado en basic con
Código: Seleccionar todo
SAVE "2:archivo"
Para resolver eso, escribí este programa en C que convierte un MUC a un archivo utilizable en la PC-88 en conjunto con las herramientas antes descritas. Simplemente cambia tabuladores por espacios, agrega números de linea por sentencia al estilo basic y elimina todos los comentarios.
También Disponible en GitHUB: https://github.com/ArtemioUrbina/MUConvert
También agregué la opción inversa, para quitarle los comandos de basic y pasarlo a un MUC normal.
Para pasar de MUC a PC88 se utiliza:
Código: Seleccionar todo
MUConvert -pc88 <fuente> <destino> [-withcomments]
Para pasar un archivo extraido de un floppy de PC88 a MUC de windows, se usa:
Código: Seleccionar todo
MUConvert -muc <fuente> <destino>
Re: MUCOM 88 de Yuzo Koshiro
https://www.instagram.com/p/BsKOgOSlZVK/
Puedes usar el canal de NOISE del SSG/PSG. El ejemplo 3 tiene puro uso de SSG
- ChristleVania
- Mensajes: 76
- Registrado: Jue Jul 09, 2015 3:09 pm
- Ubicación: México
- Contactar:
Re: MUCOM 88 de Yuzo Koshiro
Muchas gracias Artemio. Te aventaste el programa rápido y mejor aún que Koshiro también lo aprecia.
Estuve trabajando en otra nueva composición. Me da pena no soltar nada realmente completo pero mi experiencia con chips de audio es monofonica y batallo para poner varios canales juntos, y ni hablar de las percuciones. Aquí les dejo el tema de Simon de Super Castlevania IV. Con el tiempo se que lo podré soltar más completo, pero ahora me importa soltarlo de una vez porque terminó siendo un gran ejercicio para traducir la musica directamente de un pentagrama al MUCOM88.
Me faltó el bajo de la última parte porque el que viene en la hoja musical simplemente no se escuchaba tan bien como en la versión de SNES, y como el punto del ejercicio era la traducción directa no quise meter nada que no estuviese en la hoja. Aparte de un silencio que acorté para que sonara más natural y un loop donde omití 2 notas por practicidad, todo está prácticamente igual entre el programa y el pentagrama.
Por acá la hoja musical:
Fuente: https://musescore.com/jonnymusic/theme- ... rgan-cover (contiene todavía más de la musica)
Estuve trabajando en otra nueva composición. Me da pena no soltar nada realmente completo pero mi experiencia con chips de audio es monofonica y batallo para poner varios canales juntos, y ni hablar de las percuciones. Aquí les dejo el tema de Simon de Super Castlevania IV. Con el tiempo se que lo podré soltar más completo, pero ahora me importa soltarlo de una vez porque terminó siendo un gran ejercicio para traducir la musica directamente de un pentagrama al MUCOM88.
Me faltó el bajo de la última parte porque el que viene en la hoja musical simplemente no se escuchaba tan bien como en la versión de SNES, y como el punto del ejercicio era la traducción directa no quise meter nada que no estuviese en la hoja. Aparte de un silencio que acorté para que sonara más natural y un loop donde omití 2 notas por practicidad, todo está prácticamente igual entre el programa y el pentagrama.
Código: Seleccionar todo
#title Simon Theme
#composer Taro Kudo
#author ChristleVania
#voice voice.dat
#pcm mucompcm.bin
#date 2019/1/5
#comment
; 1 = Negra (1/4) , 2 = Corchea (1/8), 4 = Fusa (1/16), etc.
; 1 + 1 = Blanca (1/2) , 1+1+1+1 = Redonda (1)
;
; Ejemplo 1: c1&c1 = Blanca
; Ejemplo 2: c1&c1&c1 = 3/4
; Ejemplo 3: c2&c2&c2&c2&c2&c2&c2&c2 = Redonda
; Ejemplo 4: a1&a2 = Negra con Puntillo
;
; | = Separador. No tiene funcion.
A |C95 o5 t240 @20 v10| g1&g1&g1&g1 & d1&d1&d1&d1 & e-1&e-1&e-1&e-1 & c1&c1&c1&c1
B |C95 o4 t240 @20 v10| g1&g1&g1&g1 & d1&d1&d1&d1 & e-1&e-1&e-1&e-1 & c1&c1&c1&c1
C |C95 o3 t240 @20 v10| g1&g1&g1&g1 & d1&d1&d1&d1 & e-1&e-1&e-1&e-1 & c1&c1&c1&c1
D |C95 o2 t240 @20 v10| g1&g1&g1&g1 & d1&d1&d1&d1 & e-1&e-1&e-1&e-1 & c1&c1&c1&c1
A |o5 @76 ySL,4,4| [dcd<g b>dcd <b>d<ab> d<gb>d dcd<g b>dcd <b>d<gb> d<gb>d]2
B |o3 v6| b1&b1&b1&b1&b1&b1&b1&b1 & >c1&c1&c1&c1 & d1&d1&d1&d1
C |o4 v6| b1&b1&b1&b1&b1&b1&b1&b1 & >c1&c1&c1&c1 & d1&d1&d1&d1
D |o5 v6| b1&b1&b1&b1&b1&b1&b1&b1 & >c1&c1&c1&c1 & d1&d1&d1&d1
A |o6 q4| [g1 a2&a4 f4&f1 a4 b-2 >c4&c1 <b-4 a2 b-2 g4 d4d4 f4g4r4 g4&g1 a2&a4 f4&f1 a2&a4 b-4&b-1 >c2d4 c4&c1 <a1]2
B |o3 @30 v7 ySL,4,4| [g1 a2&a4 f4&f1&f2r4 c4&c1 e4f4r4 g4&g2 g2g4>d4<g4 e4&e1 g2&g4 f4&f1 d2&d4 c4&c1 e1 d1 f+1]2
C [r1]32
D [r1]32
A |o5 v5| [d4d4d2 d4d4d2 d4d4d4d4&d4d4&d4d4]8 [r1]3
B |o5 v5 q4| [g4g4g2 g4g4g2 g4g4g4g4&g4g4&g4g4]8 [r1]3
C |o4 v10 @30| [<g4> d4 g2 f1 e-1 d2&d4 c+4&c+2 d2 r1 e-1 f+2&f+4 <g4&g4> d4 g2 f1 e-1 d2&d4 c+4&c+2 d2 r1 e-1 /f+1]2 f4e-4r4 [r1]3
D [r1]32
A |o6 v10 q0| d1 d4e-2 f4&f2 g2 f4 g2&g4 a-1 a-4 e-2 f4 g1&g1 e-1 f2 g4 f4&f1 c1 e-1 f2 g4 f4&f1&f1
B [r1]16
C [r1]16
D [r1]16
A d4 e2 f4&f2 g2 f4 g2&g4 a-1 a-4 e-2 f4 g1&g1 e-1 f2 g4 a4&a1 f1 g1 a2 b-4 >c4&c1&c2< r2
B |o6| <b-4> c2 d4&d2 e-2 d-4 e-2&e-4 f1 f4 c2 d4 e-1&e-1 c1 d2 e-4 f4&f1 d1 e-1 f2 g4 a4&a1&a2 r2
C [r1]16
D [r1]16
A [e-1 d2 <b-4> c4&c1 c4d4e-4f4&f1 d2 <b-4> c4&c1&c1]2
Fuente: https://musescore.com/jonnymusic/theme- ... rgan-cover (contiene todavía más de la musica)
"Games are more like artifacts than media. By this we mean that the content of a game is its behavior, not the media that streams out of it towards the player."
Jump The Koopa
@ChristleVania
Jump The Koopa
@ChristleVania