Sonido en Altair

Avatar de Usuario
Kyp
Mensajes: 240
Registrado: 18 May 2016, 20:16

Re: Sonido en Altair

Mensaje por Kyp » 23 Jun 2017, 11:47

El interfaz lo hice yo (basándome en éste diseño: http://hw.speccy.cz/pics/ay-interface.png) y en teoría están implementados tanto los puertos de escritura como de lectura. Y tampoco creo que haga falta ningún retardo entre lectura y escritura. Igual has encontrado un fallo en el diseño o el chip AY está mal. No se. Tendré que hacer algunas pruebas.

jorgicor
Mensajes: 7
Registrado: 21 Jun 2017, 12:10

Re: Sonido en Altair

Mensaje por jorgicor » 23 Jun 2017, 15:47

Kyp, menudo curro!

Pues mira, el código de detección es muy corto:

https://github.com/jorgicor/altair/blob ... /ay_zx.asm

La rutina "detect_ay". Practicamente escribe los valores de 0 a 255 en un registro del AY y los vuelve a leer.

Lo que se me ocurre, es que me baso en que el registro es de 4 bits, es decir, que aunque le escriba 0xff, si después leo me va a devolver 0x0f. ¿Podría ser algo de eso? No parece, pero no sé...

Bueno, si algún día lo miras y quieres que te compile el juego cambiando algo de este código para probar, dímelo.

hikoki
Mensajes: 307
Registrado: 21 Feb 2016, 01:38

Re: Sonido en Altair

Mensaje por hikoki » 27 Jul 2017, 10:25

Hola. ¿Funcionan los efectos,musica ay en todos los modelos? ¿Funcionan con el emulador Specemu?
Hikaru en WoS ha comentado en este post: https://www.worldofspectrum.org/forums/ ... ent_916572
alguno de los problemas que podría haber detrás de la detección ay

jorgicor
Mensajes: 7
Registrado: 21 Jun 2017, 12:10

Re: Sonido en Altair

Mensaje por jorgicor » 27 Jul 2017, 18:41

Por ahora solo sabemos que detecta bien el AY en un +2 (probado por Kyp) y en un +2A que tengo yo con la versión física de Retroworks (que debería ser el mismo código pero no puedo confirmar), y no en un 48K con interfaz AY (probado por Kyp con su interfaz AY). En un 48K y 48K+, pues no lo detecta, como debe ser, y suena beeper (esto lo confirmo yo).

¿Por qué Specemu y no otro? En Spectaculator funciona bien con todos los modelos: en los que no tienen AY suena beeper, en los que tienen AY suena AY.

La prueba definitiva sería probarlo en todos los Spectrum reales.

Si me dais unos días, hago una versión que en vez de escribir 8 bits en el puerto del AY, solo escriba 4, por si hay algun problema con eso, y Kyp podría probar esto con su interfaz AY a ver si lo hacemos funcionar también.

O a lo mejor la detección no era posible en todos los modelos, y por eso casi todo el mundo sacaba dos versiones del juego, una para 48K y otra para 128K, aún cuando el juego cabía en un 48K. Pero en un principio no sé por qué no debería funcionar.

Responder