Título: PT3 player y C-BIOS Publicado por: burguera en 28 de Noviembre de 2011, 02:04:28 pm Integrando el replayer de PT3 y SFX de SapphiRe con mi proyecto (desarrollo sobre sjasm) me encuentro con un algo curioso y molesto. De momento uso los temas de Caos Begins. Pues bien, al final del primer movimiento (o como se llame) del tema del castillo hay un efecto en una nota. Supongo que el efecto tendrá un nombre... lo que hace es, en lugar de cambiar "bruscamente" de nota lo hace suavemente.
Al reproducirlo ya noté que ese efecto no se oía, pero tampoco le di importancia. Eso es usando una BIOS "normal" (MSX Japanese en blueMSX). Sin embargo, al pasar a C-BIOS, el programa se cuelga justamente al llegar a esa nota. Estoy usando el replayer PT3 con "fixed table". Veo que la versión con "all tables" incluye el comentario "This version also allows the use of PT3 commands" Y supongo que eso significará que la versión "fixed table" no permite "PT3 commands". Y supongo que ese efecto será un "PT3 command". Imagino que el cuelgue vendrá de ahí, no? Probaré con la versión "all tables", pero... a santo de qué una BIOS "normal" se lo traga y la C-BIOS no? Título: Re: PT3 player y C-BIOS Publicado por: burguera en 28 de Noviembre de 2011, 03:00:27 pm Pues nada, que con la otra versión pasa lo mismo. Con la C-BIOS se me cuelga al llegar a un punto concreto del tema musical.
Mirandolo con el Vortex, veo que se cuelga al llegar a un punto donde, en el canal B aparece Código: A-5 .... 31.7 Quitando el 31.7 en el Vortex Tracker, el replayer ya no se cuelga. ¿Alguna idea? Más que nada porque es muy cómodo usar el replayer de SapphiRe con los SFX integrados. Si no hay solución, veré como puedo adaptar el código que usé en el Caos. Título: Re: PT3 player y C-BIOS Publicado por: SapphiRe_MSX en 28 de Noviembre de 2011, 03:01:24 pm Pues no tiene mucho sentido que dependa de la BIOS, ya que el código no la usa en absoluto. Por otro lado, si mal no recuerdo, ambas versiones admiten comandos PT3, así que no se qué puede estar pasando.
Título: Re: PT3 player y C-BIOS Publicado por: burguera en 28 de Noviembre de 2011, 03:45:30 pm Pufff... a la próxima mejor me callo, que se ve que estoy fino fino. A ver... problema resuelto, al menos sobre un ejemplo mínimo que me he montado. Es culpa mía! Por bruto!
Para pasar de sintaxis asMSX a sjasm había, entre otras cosas, hecho un buscar y cambiar de corchetes por paréntesis. Y justamente en el código original está esta línea: Código: LD HL,((SPCCOMS+$DF20) % 65536) Que en sintáxis asMSX es LD HL, nn pero en sintaxis sjasm es LD HL, (nn). Y se ve que esta línea estará implicada en procesar comandos PT3. So: perdón! Otra cosilla, por curiosity. En el fuente asMSX hay alguna línea tal que: Código: .db $0704*2 Esto, obviamente, supera los 8 bits. Se supone que esto se queda con el byte de menos peso, ¿no? EDITO: Lo de que funcionara con una BIOS y con la otra no... a saber. Igual ese error provocaba algún salto a una zona baja de memoria y en una BIOS se enredaba y en otra no. Título: Re: PT3 player y C-BIOS Publicado por: SapphiRe_MSX en 28 de Noviembre de 2011, 05:22:32 pm Otra cosilla, por curiosity. En el fuente asMSX hay alguna línea tal que: Código: .db $0704*2 Esto, obviamente, supera los 8 bits. Se supone que esto se queda con el byte de menos peso, ¿no? La línea completa a la que aludes es Código: .db $0704*2/256,($0704*2 % 256) que produce números de 8 bits... Me extrañaba, ya que a mí nunca me ha dado errores de compilación (ni warnings). Título: Re: PT3 player y C-BIOS Publicado por: burguera en 28 de Noviembre de 2011, 05:53:30 pm En el fichero descargado de tu web aparecen varias líneas tal que:
Código: .db $066D*2/256,$066D*2 Entiendo por lo que dices que asMSX lo coge sin problemas pero que en sjasm necesito especificar el módulo 256, no? Antes lo había hecho a mano, mejor así. Por cierto: gracias a ti y a todos los implicados por preparar un player de PT3 y SFX tan cuco y fácil de utilizar. Título: Re: PT3 player y C-BIOS Publicado por: Huey en 29 de Noviembre de 2011, 09:43:48 am Código: .db $066D*2/256,$066D*2 I use Código: LD HL, (SPCCOMS+$DF20) % 65536 ; Adapted from original Speccy version (saves 6 bytes) in my sjasm replayer.Título: Re: PT3 player y C-BIOS Publicado por: SapphiRe_MSX en 29 de Noviembre de 2011, 11:36:37 am Por cierto: gracias a ti y a todos los implicados por preparar un player de PT3 y SFX tan cuco y fácil de utilizar. Siempre es un placer :D Tras sacar KNT también habrá disponible un replayer de Protracker (FM), con soporte para FM-Pac, Music-Module, Moonsound y la tarjeta OPL3. Como siempre todo listo para ser usado :D |