Hola,
Estoy intentando obtener información sobre el formato de los ficheros .PT3 (creados con Pro Tracker 3) y utilizados en los juegos AGD
para las máquinas ZX-Spectrum 48k y 128k, pero no lo consigo de ninguna forma
Necesito esta información para analizar los cambios necesarios para enviar estos ficheros a un módulo externo (para CoCo y Dragón)
Agradecería si alguien dispone de esta información y pudiera compartirla o indicarme donde la puedo descargar.
Muchas gracias de antemano
saludos
pere
formato de ficheros musicales .PT3
- pser1
- Mensajes: 4094
- Registrado: 08 Dic 2012 18:34
- Agradecido : 1352 veces
- Agradecimiento recibido: 1118 veces
-
- Mensajes: 1669
- Registrado: 03 Ago 2011 23:07
- Ubicación: Aluche, Madrid
- Agradecido : 29 veces
- Agradecimiento recibido: 523 veces
Re: formato de ficheros musicales .PT3
http://fileformats.archiveteam.org/wiki/Pro_Tracker_v3.xx_module ... problema: está en ruso.
Aquí hay traducción de algo, pero no sé si te servirá: http://zxpress.ru/article.php?id=9313&lng=eng
Aquí hay traducción de algo, pero no sé si te servirá: http://zxpress.ru/article.php?id=9313&lng=eng
- pser1
- Mensajes: 4094
- Registrado: 08 Dic 2012 18:34
- Agradecido : 1352 veces
- Agradecimiento recibido: 1118 veces
Re: formato de ficheros musicales .PT3
BlackHole escribió:http://fileformats.archiveteam.org/wiki/Pro_Tracker_v3.xx_module ... problema: está en ruso.
Aquí hay traducción de algo, pero no sé si te servirá: http://zxpress.ru/article.php?id=9313&lng=eng
Creo que el fichero en ruso ya lo tengo, lo malo es que al abrirlo en Windows para copiar y pegar en un traductor muestra basura
nada de caracteres cirílicos que sería lo suyo ...
De momento veré la traducción que indicas.
Muchas gracias por esta infoemación
saludos y buen fin de semana!
pere
- pser1
- Mensajes: 4094
- Registrado: 08 Dic 2012 18:34
- Agradecido : 1352 veces
- Agradecimiento recibido: 1118 veces
Re: formato de ficheros musicales .PT3
@BlackHole
la traducción es muy buena. Probablemente sea suficiente para desentrañar la estructura de datos que tengo en un fichero real .PT3
Otra cosa será ver los datos de un juego que tenga música y que también respeten esta estructura
muchas gracias por todo
saludos
pere
la traducción es muy buena. Probablemente sea suficiente para desentrañar la estructura de datos que tengo en un fichero real .PT3
Otra cosa será ver los datos de un juego que tenga música y que también respeten esta estructura
muchas gracias por todo
saludos
pere
-
- Mensajes: 5619
- Registrado: 20 Sep 2011 13:59
- Ubicación: Madrid
- Agradecido : 990 veces
- Agradecimiento recibido: 2040 veces
- Contactar:
Re: formato de ficheros musicales .PT3
El formato PT3 tiene bastante enjundia, ¿merece la pena tratar de interpretarlo?, ¿podría volcarse al DAC la información lo suficientemente rápido como para que no se ralenticen demasiado los juegos?.
En cualquier caso, aquí está otra traducción "made in Google" a ver si aporta algo...
Format Module Pro Tracker v3.6x
The offset to the areas in the module and their length in bytes are indicated.
(decimal numbers).
+0 (13) "ProTracker 3." - identification string.
+13 (17) "6" (or "5", "4", or even "3") is the number of the sub version.
It should be noted that for modules PTv3.4x and below is used
another, "asymmetric" volume table, and in modules PTv3.3x
The alternate frequency table "Pro Tracker" is used, not
coinciding with the eponymous modern!
+14 (16) "compilation of" (optional - any text of this
length).
+30 (32) module name (ASCII, lat, unused characters
filled with spaces).
+62 (4) "by" (optional - any 4 characters)
+66 (32) author's name (ASCII, lat, unused characters are clogged
spaces).
+98 (1) one space (any character).
(i.e. the first 99 bytes of the module form the corresponding string)
+99 (1) frequency table number: 0 = Pro Tracker, 1 = Sound Tracker,
2 = ASM or PSC, 3 = RealSound. The label occupies 192 bytes and contains
period values for 96 notes, starting with C-1 (BEFORE the first oct)
you). Period is the reciprocal of the frequency of the note, placed in the
corresponding registers AY. Low bytes (here and below, by one
exception, which will be indicated) are stored first. Compiler
PT saves the table corresponding to the module to the player’s body.
relative address 512. The volume table it stores in
same player body at relative address 256.
+100 (1) tempo value.
+101 (1) song end (1 = only one position in the module) - not in the player
is used.
+102 (1) song loop (0 = looping at the beginning).
+103 (2) Psa_chn = offset from the beginning of the module to the pattern table.
+105 (32 * 2) offset from the beginning of the module to the samples, starting with
left sample. Two bytes per sample. Zero sample in current
versions of the editor is not used. For all unused
samples offset is zero.
+169 (16 * 2) offset from the beginning of the module to the ornaments, starting with
zero. Two bytes per ornament. A zero ornament is a missing
ornament, so the data of this ornament (see below) is
rzhat 0,1,0 (you can use this ornament to your liking
BUT, then in a song it will not be possible to use samples without ornament
cops). For all unused ornaments, the offset is equal to
Liu
201 (?) List of positions (order). Contains pattern numbers
(0 ... 84), multiplied by 3. The table ends with the code #ff. Pro
Tracker v3.3x-v3.5x does not support more than 42 patterns.
Pro Tracker v3.6x does not support more than 46 patterns.
+ Psa_chn (? * 6) index of patterns. Contains for each of the
existing offset patterns:
++ 0 (2) to channel data block (track) A
++ 2 (2) to channel data block (track) B
++ 4 (2) before the channel data block (track) C.
Data on the noise offset (separate column in the editor) comp
channel b.
+? (? *?) blocks of data channels, that is, tracks.
The track contains the following data:
================================================= ==============
# 00 - the end of the track.
# 01, delay, Lsl, Hsl - Gliss (Slide) effect up or down. Delay
- time in the fifties of a second, after which to
note period will be added to the value of Lsl + 256 * Hsl. Bias
the player accumulates in the corresponding variable and adds
after the formation of the frequency of the note, i.e., first processes
Xia line of the ornament, and then later ...
# 02, delay, Lmax, Hmax, Lsl, Hsl - Tone Portamento effect up
or down. Delay - time in the fiftieth of a second, after
of which the value Lsl + 256 * Hsl will be added to the note period.
Lmax + 256 * Hmax - maximum displacement (unsigned), after
the accumulation of which Portamento should be stopped (in PT3.6x not
used because possible misdirection).
# 03, offset - sample offset. The sample starts playing not at first.
# 04, offset - ornament offset. The ornament starts to play not
chala
# 05, YEStime, NOtime - vibrate. note that sounds, it does not sound.
# 08, delay, Lsl, Hsl - slide envelope effect. To period value
from time to time the envelope is added Lsl + 256 * Hsl.
# 09, tempo - indication of tempo (in interrupts per line). Standard-
Ny player less than tempo = 2 does not play.
NB: effect parameters (# 0x) are not immediately after the number code
effect, and after the end of the line !!! If several effects are used
effects on one note (in fact, this is not the case), then first
Parameters of the last effect are harvested, then the last but one and so on.
more ...
# 10, smp * 2 - turn off the envelope, put the 0th ornament and
change sample number.
# 1x, Henv, Lenv, smp * 2 - change the sample number, put the 0th
ornament and turn on envelope type x-1 with a period
Lenv + 256 * Henv. When you turn on the envelope, it is initialized,
those. new period begins!
# 20- # 3f - specify the noise offset (only happens on channel B)
# 4x - indicate the ornament number x.
(the envelope does not turn off)
# 50- # Af - specify the pitch of the note and END the analysis of the current line
channel.
# B0 - turn off the Envelope.
# B1, lines - do not analyze the channel during the lines of lines.
(lines = 1 matches one line). Acts not only on
the gap between this and the next note, but further, until
indicated a different value lines!
#Bx, Henv, Lenv - the same as # 1x, but without a sample. That is just
include an envelope of type x-1 with the specified period.
#Cv - specify the volume. (V = 0 - pause and END the line analysis.)
# D0 - END the string analysis.
# D1- # Ef - specify the number of the sample.
#Fx, smp * 2 - specify the number of the ornament (x) and the number of the sample.
(envelope goes off)
================================================= ==============
+? (? * (? * 4 + 2)) - samples.
++ 0 (1) - loop
++ 1 (1) - end (1 = one-line sample)
++ 2 (? * 4) - data:
+++ 0 (1) sv + - N4 N3 N2 N1 N0 Em
+++ 1 (1) Nm ts ns Tm V3 V2 V1 V0
sv = 1 is a sign that the volume is moving up, + - = 1 corresponds to its increase
to identify; N4-0 is the frequency of the noise OR the offset of the envelope (depends on
the presence of a noise mask): an envelope offset of 0-15 - down, 16-31 -
up (N4 is interpreted as a sign); V3-0 - volume; Tn, Nm,
Em - masks of tone, noise and envelope, respectively, and if the mask is
in unit, the corresponding sound element is turned off; ts, ns = 1
- indications that the current tone or noise / envelope offset
will be remembered.
+++ 2 (2) offset period of the tone (positive - up, from
acrobat - down).
+? (? * (? + 2)) - ornaments.
++ 0 (1) - loop
++ 1 (1) - end (1 = ornament from one line)
++ 2 (?) - data: bias in semitones (0 = no bias, positive
positive displacement - up, negative - down).
waiting for additions!
Additions from 10.xi.02:
1. (Sergey Bulba): The ASM or PSC table is not related to the corresponding
editors Modules from these editors should be imported.
Rty with the Sound Tracker table. Table ASM or PSC calculated
on so that at a clock frequency of AY 1.7744 MHz notes in the editor
coincided with the same notes of the piano. (Table Real Sound
- the same, but for 1.75 MHz.)
2. The module can also use the 0th sample, if in the track it is
stored with the ornament (can be zero). Total 32 samples.
3. Checked information about Portamento, Loop and # B1.
4. Corrected information about the samples.
Update as of 24.ii.03:
5. Updated to turn off the envelope.
Update from 25.iii.03:
6. Standard PTv3.6x - 46 patterns.
7. In case of overflow the downward movement of the ornament (more precisely, when the
note number) the lowest note of C-1 is substituted. With
overflow up result not defined.
Update from 26.vii.03:
8. The above clarified the changes for PT3.6x.
9. The maximum size of the module that can be downloaded in
torus is equal to # 3300 bytes, or # 4000 bytes for the "cjf" version.
Update as of 20.iii.04:
10. PT3 + 67 has 48 patterns, but it is not guaranteed that they will be
the same in all future versions.
Update from 29.vi.04:
11. See about # 10 and # B1.
12. in PT3.69 you can specify the number of the ornament without affecting
envelope in VTII is not yet possible. all players play this.
Update from 26.viii.04:
13. on the lines of the sample, where the noise is included, the accumulated offset
the envelope is ignored.
En cualquier caso, aquí está otra traducción "made in Google" a ver si aporta algo...
Format Module Pro Tracker v3.6x
The offset to the areas in the module and their length in bytes are indicated.
(decimal numbers).
+0 (13) "ProTracker 3." - identification string.
+13 (17) "6" (or "5", "4", or even "3") is the number of the sub version.
It should be noted that for modules PTv3.4x and below is used
another, "asymmetric" volume table, and in modules PTv3.3x
The alternate frequency table "Pro Tracker" is used, not
coinciding with the eponymous modern!
+14 (16) "compilation of" (optional - any text of this
length).
+30 (32) module name (ASCII, lat, unused characters
filled with spaces).
+62 (4) "by" (optional - any 4 characters)
+66 (32) author's name (ASCII, lat, unused characters are clogged
spaces).
+98 (1) one space (any character).
(i.e. the first 99 bytes of the module form the corresponding string)
+99 (1) frequency table number: 0 = Pro Tracker, 1 = Sound Tracker,
2 = ASM or PSC, 3 = RealSound. The label occupies 192 bytes and contains
period values for 96 notes, starting with C-1 (BEFORE the first oct)
you). Period is the reciprocal of the frequency of the note, placed in the
corresponding registers AY. Low bytes (here and below, by one
exception, which will be indicated) are stored first. Compiler
PT saves the table corresponding to the module to the player’s body.
relative address 512. The volume table it stores in
same player body at relative address 256.
+100 (1) tempo value.
+101 (1) song end (1 = only one position in the module) - not in the player
is used.
+102 (1) song loop (0 = looping at the beginning).
+103 (2) Psa_chn = offset from the beginning of the module to the pattern table.
+105 (32 * 2) offset from the beginning of the module to the samples, starting with
left sample. Two bytes per sample. Zero sample in current
versions of the editor is not used. For all unused
samples offset is zero.
+169 (16 * 2) offset from the beginning of the module to the ornaments, starting with
zero. Two bytes per ornament. A zero ornament is a missing
ornament, so the data of this ornament (see below) is
rzhat 0,1,0 (you can use this ornament to your liking
BUT, then in a song it will not be possible to use samples without ornament
cops). For all unused ornaments, the offset is equal to
Liu
201 (?) List of positions (order). Contains pattern numbers
(0 ... 84), multiplied by 3. The table ends with the code #ff. Pro
Tracker v3.3x-v3.5x does not support more than 42 patterns.
Pro Tracker v3.6x does not support more than 46 patterns.
+ Psa_chn (? * 6) index of patterns. Contains for each of the
existing offset patterns:
++ 0 (2) to channel data block (track) A
++ 2 (2) to channel data block (track) B
++ 4 (2) before the channel data block (track) C.
Data on the noise offset (separate column in the editor) comp
channel b.
+? (? *?) blocks of data channels, that is, tracks.
The track contains the following data:
================================================= ==============
# 00 - the end of the track.
# 01, delay, Lsl, Hsl - Gliss (Slide) effect up or down. Delay
- time in the fifties of a second, after which to
note period will be added to the value of Lsl + 256 * Hsl. Bias
the player accumulates in the corresponding variable and adds
after the formation of the frequency of the note, i.e., first processes
Xia line of the ornament, and then later ...
# 02, delay, Lmax, Hmax, Lsl, Hsl - Tone Portamento effect up
or down. Delay - time in the fiftieth of a second, after
of which the value Lsl + 256 * Hsl will be added to the note period.
Lmax + 256 * Hmax - maximum displacement (unsigned), after
the accumulation of which Portamento should be stopped (in PT3.6x not
used because possible misdirection).
# 03, offset - sample offset. The sample starts playing not at first.
# 04, offset - ornament offset. The ornament starts to play not
chala
# 05, YEStime, NOtime - vibrate. note that sounds, it does not sound.
# 08, delay, Lsl, Hsl - slide envelope effect. To period value
from time to time the envelope is added Lsl + 256 * Hsl.
# 09, tempo - indication of tempo (in interrupts per line). Standard-
Ny player less than tempo = 2 does not play.
NB: effect parameters (# 0x) are not immediately after the number code
effect, and after the end of the line !!! If several effects are used
effects on one note (in fact, this is not the case), then first
Parameters of the last effect are harvested, then the last but one and so on.
more ...
# 10, smp * 2 - turn off the envelope, put the 0th ornament and
change sample number.
# 1x, Henv, Lenv, smp * 2 - change the sample number, put the 0th
ornament and turn on envelope type x-1 with a period
Lenv + 256 * Henv. When you turn on the envelope, it is initialized,
those. new period begins!
# 20- # 3f - specify the noise offset (only happens on channel B)
# 4x - indicate the ornament number x.
(the envelope does not turn off)
# 50- # Af - specify the pitch of the note and END the analysis of the current line
channel.
# B0 - turn off the Envelope.
# B1, lines - do not analyze the channel during the lines of lines.
(lines = 1 matches one line). Acts not only on
the gap between this and the next note, but further, until
indicated a different value lines!
#Bx, Henv, Lenv - the same as # 1x, but without a sample. That is just
include an envelope of type x-1 with the specified period.
#Cv - specify the volume. (V = 0 - pause and END the line analysis.)
# D0 - END the string analysis.
# D1- # Ef - specify the number of the sample.
#Fx, smp * 2 - specify the number of the ornament (x) and the number of the sample.
(envelope goes off)
================================================= ==============
+? (? * (? * 4 + 2)) - samples.
++ 0 (1) - loop
++ 1 (1) - end (1 = one-line sample)
++ 2 (? * 4) - data:
+++ 0 (1) sv + - N4 N3 N2 N1 N0 Em
+++ 1 (1) Nm ts ns Tm V3 V2 V1 V0
sv = 1 is a sign that the volume is moving up, + - = 1 corresponds to its increase
to identify; N4-0 is the frequency of the noise OR the offset of the envelope (depends on
the presence of a noise mask): an envelope offset of 0-15 - down, 16-31 -
up (N4 is interpreted as a sign); V3-0 - volume; Tn, Nm,
Em - masks of tone, noise and envelope, respectively, and if the mask is
in unit, the corresponding sound element is turned off; ts, ns = 1
- indications that the current tone or noise / envelope offset
will be remembered.
+++ 2 (2) offset period of the tone (positive - up, from
acrobat - down).
+? (? * (? + 2)) - ornaments.
++ 0 (1) - loop
++ 1 (1) - end (1 = ornament from one line)
++ 2 (?) - data: bias in semitones (0 = no bias, positive
positive displacement - up, negative - down).
waiting for additions!
Additions from 10.xi.02:
1. (Sergey Bulba): The ASM or PSC table is not related to the corresponding
editors Modules from these editors should be imported.
Rty with the Sound Tracker table. Table ASM or PSC calculated
on so that at a clock frequency of AY 1.7744 MHz notes in the editor
coincided with the same notes of the piano. (Table Real Sound
- the same, but for 1.75 MHz.)
2. The module can also use the 0th sample, if in the track it is
stored with the ornament (can be zero). Total 32 samples.
3. Checked information about Portamento, Loop and # B1.
4. Corrected information about the samples.
Update as of 24.ii.03:
5. Updated to turn off the envelope.
Update from 25.iii.03:
6. Standard PTv3.6x - 46 patterns.
7. In case of overflow the downward movement of the ornament (more precisely, when the
note number) the lowest note of C-1 is substituted. With
overflow up result not defined.
Update from 26.vii.03:
8. The above clarified the changes for PT3.6x.
9. The maximum size of the module that can be downloaded in
torus is equal to # 3300 bytes, or # 4000 bytes for the "cjf" version.
Update as of 20.iii.04:
10. PT3 + 67 has 48 patterns, but it is not guaranteed that they will be
the same in all future versions.
Update from 29.vi.04:
11. See about # 10 and # B1.
12. in PT3.69 you can specify the number of the ornament without affecting
envelope in VTII is not yet possible. all players play this.
Update from 26.viii.04:
13. on the lines of the sample, where the noise is included, the accumulated offset
the envelope is ignored.
- Jinks
- Mensajes: 2701
- Registrado: 09 Oct 2013 16:47
- Agradecido : 348 veces
- Agradecimiento recibido: 478 veces
- Contactar:
Re: formato de ficheros musicales .PT3
Puede que diga una tontería, pero ¿está disponible para descargar la versión del programa que introdujo ese formato?
Lo sigo porque normalmente el programa que introducía un formato incluía un fichero con la descripción de ese formato. Por ejemplo, el ZIP original del Scream Tracker 3 venía con la descripción del formato ST3, el Fast Tracker II venía con la descripción del formato XM...
Edito: Ups... no había visto la última respuesta de BlackHole...
Lo sigo porque normalmente el programa que introducía un formato incluía un fichero con la descripción de ese formato. Por ejemplo, el ZIP original del Scream Tracker 3 venía con la descripción del formato ST3, el Fast Tracker II venía con la descripción del formato XM...
Edito: Ups... no había visto la última respuesta de BlackHole...
- pser1
- Mensajes: 4094
- Registrado: 08 Dic 2012 18:34
- Agradecido : 1352 veces
- Agradecimiento recibido: 1118 veces
Re: formato de ficheros musicales .PT3
Hola José Luis,
se parece muchísimo a la traducción que yo tengo de la versión 3.5
Voy a compararlas y a ver cual se parece mas a los datos de los juegos 'reales'
No se puede enviar nada al DAC. La idea es utilizar un módulo externo, para mi gusto el CoCo-PSG de Ed Snider que lleva un YM2149
que es compatible pin a pin con el AY-3-8xxx o sea perfecto para hacer el mismo trabajo que el chip que llevan los ZX-128k
La alternativa sugerida por usuarios americanos de emplear el GMC de John W Linville que lleva un SN76489 no la veo clara
por un lado tiene muy pocos pins y por tanto no es compatible hadware con el AY-3-8xxx y encima solo tiene ROM mientras que la de
Ed Snider tienen 512k SRAM donde podriamos poner la tira de cosas!
Seguiré viendo como tratar esta información ...
Gracias a todos!
saludos
pere
se parece muchísimo a la traducción que yo tengo de la versión 3.5
Voy a compararlas y a ver cual se parece mas a los datos de los juegos 'reales'
No se puede enviar nada al DAC. La idea es utilizar un módulo externo, para mi gusto el CoCo-PSG de Ed Snider que lleva un YM2149
que es compatible pin a pin con el AY-3-8xxx o sea perfecto para hacer el mismo trabajo que el chip que llevan los ZX-128k
La alternativa sugerida por usuarios americanos de emplear el GMC de John W Linville que lleva un SN76489 no la veo clara
por un lado tiene muy pocos pins y por tanto no es compatible hadware con el AY-3-8xxx y encima solo tiene ROM mientras que la de
Ed Snider tienen 512k SRAM donde podriamos poner la tira de cosas!
Seguiré viendo como tratar esta información ...
Gracias a todos!
saludos
pere
¿Quién está conectado?
Usuarios navegando por este Foro: No hay usuarios registrados visitando el Foro y 1 invitado