Saludos desde Argentina

By pastbytes

Resident (36)

pastbytes さんの画像

15-09-2016, 10:49

Estoy registrado desde hace poco mas de un año pero recien ahora me decido a participar. Me registre despues de ver que se mencionaba a mi sintetizador de voz TAVMSX, proyecto que quedo sin terminar y que espero un dia de estos poder actualizar y dejar en una version final.
No puedo decir que haya empezado en la informatica con el MSX, porque mi primer ordenador fue un Commodore 64, que tuve hasta 1991, y luego a diferencia de la mayoria de los usuarios de 8 bits pase al Amiga en lugar de comprarme un PC. Pero ya desde mi epoca de los 8 bits tuve la oportunidad de usar y programar algunas cosas en los Spectrum 48K y MSX1, aunque solo en BASIC.
Ya en los 2000s, comenzando exactamente en ese año, compre un Amiga 4000T, que ya era algo retro entonces, y eso fue la perdicion, porque me desperto una nostalgia de lo retro que no sabia que tenia. LOL!
Desde ahi rapidamente fui comprando ordenadores de 8 bits que en su momento no pude tener, y por supuesto los Spectrum y MSX tenian que estar en la lista.
Despues de acumular una buena coleccion de ordenadores y algunos perifericos, me di cuenta de que muchas de estas cosas quedaban sin usar, por lo que me propuse programar en todos al menos una vez, y asi es que termine desarrollando lo que despues fue el TAVMSX, que a su vez se desarrollo a partir de la version para Spectrum, y esta fue una version reducida por soft de mi chip sintetizador de voz de entonces, el HR2.
Se puede decir que los TAVx fueron mi primer proyecto en asm de Z80, ya que jamas habia programado para ese procesador, mas alla de un par de ejercicios en papel alrededor de 1991 cuando estudiaba para tecnico electronico. Y como primer proyecto, el codigo no es muy bueno, y digo esto sin ser experto, ya que siendolo se debe ver peor. LOL!
Por aqui los MSX2 son muy raros y caros, por lo que solo dispongo de dos MSX1: un Talent DPC-200 con unidad de disco de 5,25" (360K) y un SVI-728.
Actualmente tengo un proyecto de hard y soft para presentar, mi modesto sintetizador de voz y sonido HR4, pero como hay cosas que exceden mis conocimientos del MSX probablemente necesite la colaboracion de alguien para modificar o hacer algunas pequeñas rutinas en asm. Ya abrire otro hilo al respecto.

ログイン/登録して投稿

By htdreams

Champion (298)

htdreams さんの画像

15-09-2016, 20:38

Buenas!

Ya vi por aquí el post sobre el sintetizador de voz, la verdad es que me sorprende que te hayas metido en un proyecto semejante solo por cacharrear, es impresionante :-)

Bienvenido!

By pastbytes

Resident (36)

pastbytes さんの画像

20-09-2016, 10:33

Gracias por la bienvenida. La verdad es que este tema de la sintesis de voz es algo que me impacto en su momento, supongo que como a todos cuando veiamos ese tipo de cosas en series o peliculas. Pero mas me impacto probar en persona el sintetizador de voz SAM en mi Commodore 64 en los 80s, y luego escuchar otro para MSX en lo de un amigo. El Commodore 64 tiene unos cuantos juegos de los 80s con voces digitalizadas, pero ya como programador me intrigaba eso de poder generar voz en tiempo real (sin tener palabras digitalizadas), aunque la informacion tecnica disponible en ese momento era muy poca y dificil de conseguir.

Tal como lo que paso con lo de empezar a comprar los ordenadores que antes no pude tener, ocurrio con la sintesis de voz, un dia hace 11 años probando unas rutinas para generar tonos con un PIC, recorde que en su momento queria generar voz por programa y no disponia de la informacion. Aunque todavia no tenia informacion sobre sintesis de voz en castellano (si habia bastante informacion para hablar ingles), las cosas habian progresado al punto de simplificar mucho el desarrollo, ahora habia captura y edicion de audio, PCs potentes, microcontroladores mas rapidos que cualquier ordenador de 8 bits de los 80s, asi que esto un poco compensaba el hecho de tener que empezar desde cero. Y aunque esto fue hace 11 años, la verdad es que pasaron años en lo que no hubo progreso y otros en los que casi no hice nada, recien a partir de 2011 cuando hice los ports a ordenadores de 8 bits se podria decir que empezo el verdadero desarrollo, porque le empece a dedicar mas tiempo.

Y los sintetizadores TAV, la verdad es que empezaron casi como una broma, hechas muy rapidamente y con poca esperanza de que sonaran bien, me sorprendi al escuchar que no estaban tan mal. Si la primera version para Commodore no me hubiera convencido, tal vez ni siquiera habria hecho las otras.
La version para Commodore es la mejor por una simple razon, esta sincronizado el sonido con la generacion del video, por lo que genera sonido estable a 7812 muestras por segundo gracias a la asistencia del hard. Las versiones para Z80 no tienen una frecuencia estable porque esto requiere conocer bien los tiempos de ejecucion de las instrucciones del Z80, y como dije era mi primer proyecto en asm de Z80, mi conocimiento era poco y como sabia que el tiempo que le podria dedicar era limitado, le di mas importancia a abarcar mas plataformas que a lograr una mejor precision en el sonido.

Hace tiempo tengo pendiente poner al dia esos sintetizadores de voz y publicar el codigo fuente en asm para que cualquiera los pueda usar en sus programas, la ventaja de este sintetizador es que ya se sabe que hay versiones para varios ordenadores, lo que facilita hacer juegos multiplaforma con voz. El lenguaje fonetico es el mismo en todas las versiones, y a su vez este lenguaje es un subconjunto de los comandos del sintetizador HR4. Si un dia de estos me hago un tiempo para actualizar estos sintetizadores, publicare el codigo y seguramente voy a necesitar que alguien le haga algunos ajustes, como estabilizar la frecuencia de muestreo del sonido, o hacer que se reubique de acuerdo a la cantidad de memoria disponible en el sistema.

By htdreams

Champion (298)

htdreams さんの画像

16-09-2016, 06:01

Vaya, muy interesante :-) me alucina ver que en equipos con 64ks hay cabida para un sintetizador de voz, ¿consume muchos recursos? sí que conozco casos de voz en los equipos de 8 bits, pero creo que son todos digitalizaciones, con lo que realmente el mayor consumo es de memoria...

By pastbytes

Resident (36)

pastbytes さんの画像

20-09-2016, 10:34

En Commodore 64 el sintetizador completo cabe en 4K, esto incluye el parser para el micro lenguaje fonetico que tiene, sin eso seria menos. En las versiones para Z80 me termino ocupando mas de 5K, que como no conozco muy bien el procesador asumo que es debido a que no esta bien optimizado, tal vez se pueda reducir a algo parecido al de la version para C64.

El sintetizador SAM que usaba en los 80s esta disponible en varias plataformas para 6502 (Apple II, Commodore 64, Commodore Plus/4, Atari 8 bits), y no esta basado en digitalizacion, me parece que usa sintesis por formantes. La gente que lo hizo despues hizo el sintetizador de los primeros MacOS y del Amiga.
Mis sintetizadores en cambio usan un sistema hibrido, algunos sonidos son digitalizados, otros son generados por programa (en particular todo lo que tiene ruido, como S, SH, CH, F), y tambien hay sonidos que tienen un poco de las dos cosas. Como en los 8 bits no conviene usar mucha memoria, la parte digitalizada se redujo todo lo posible, y se reutilizan partes de ondas para ahorrar espacio, por eso me sorprendio que aun asi sonara bien.
No se que sistema usaria el sintetizador para MSX que escuche en los 80s, ya ni me acuerdo cual era.

Por si alguien quiere probar alguna version de TAV, aqui se pueden descargar todas: http://www.pastbytes.com/apps/tav/descargas.html
Son programas bastante rusticos porque como explique antes fueron un pequeño experimento, si se hicieran bien tendrian que sonar igual o mejor que la version para C64 que es la original.

By mesiasmsx

Prophet (3454)

mesiasmsx さんの画像

20-09-2016, 10:34

!Bienvenido!

By Panzer-

Paragon (1041)

Panzer- さんの画像

20-09-2016, 23:59

Bienvenido.
Me fascina tu proyecto...
Un saludo...