Bienvenido Juan Carlos! Y gracias por las explicaciones aquí seguro que encuentras colegas para hablar de estos temas
Y ya nos contarás avances del ninjajar!
Noticias Mojon Twins
Moderador: na_th_an
Noticias Mojon Twins
(_\_) (_|_) (_/_) (_|_) ILLO KE HEHEHEHEHEHEEEHEHEHEH!
¡Activa tu rainbow pechónico!
¡Activa tu rainbow pechónico!
- Hark0
- Mensajes: 96
- Registrado: Mar, 28 Ene 2014, 07:42
- Ubicación: Cornellà de Llobregat - Barcelona
- Contactar:
Re: Noticias Mojon Twins
Me ha encantado la explicación!!!! Bienvenido!
Y que cada día me entere de cosas nuevas del viejo ZX!!!!
Y que cada día me entere de cosas nuevas del viejo ZX!!!!
litiopixel.blogspot.com - Desarrollo videojuegos Indie · Pixel-Art · Retroinformática · Electrónica
- jcgamestoy
- Mensajes: 6
- Registrado: Jue, 22 May 2014, 19:09
Re: Noticias Mojon Twins
$this->bbcode_second_pass_quote('na_th_an', '.').. Y sobre $C0, como es el caso de Ninjajar.
El registro I se utiliza en el modo IM2, que es el que usamos nosotros para que salte una interrupción cada 20ms y ahí llamemos al player. Es por eso que la música de Ninjajar se escucha siempre a la misma velocidad sin importar la contención del modelo donde se ejecute (incluso los clones rusos como Pentagon o Scorpion). Nuestra rutina de servicio de interrupción necesita I = $F0 para ser accesible y de ahí viene el problema.
Como siempre que paginamos/usamos las otras páginas de RAM es para obtener datos almacenados y en momentos puntuales, las interrupciones están deshabilitadas y nos podemos permitir poner momentaneamente I = 0, lo que soluciona el problema la mayor parte del tiempo. No es una solución óptima, pero sí lo suficientemente buena. Ya nos han reportado que la nieve se reduce al mínimo en hardware real
Sí es cierto lo del sample, que está en RAM1. Tampoco es algo que nos preocupe demasiado, la verdad, como para tener que andar montando pifostios y autodetectando modelos En los 128/+2 se escucha un poco más grave (y levemente más distorsionado) que en los +2A o en los Pentagon/Scorpion (que no tienen contención), pero tampoco nos molesta
¡Bienvenido al foro!
El registro I se utiliza en el modo IM2, que es el que usamos nosotros para que salte una interrupción cada 20ms y ahí llamemos al player. Es por eso que la música de Ninjajar se escucha siempre a la misma velocidad sin importar la contención del modelo donde se ejecute (incluso los clones rusos como Pentagon o Scorpion). Nuestra rutina de servicio de interrupción necesita I = $F0 para ser accesible y de ahí viene el problema.
Como siempre que paginamos/usamos las otras páginas de RAM es para obtener datos almacenados y en momentos puntuales, las interrupciones están deshabilitadas y nos podemos permitir poner momentaneamente I = 0, lo que soluciona el problema la mayor parte del tiempo. No es una solución óptima, pero sí lo suficientemente buena. Ya nos han reportado que la nieve se reduce al mínimo en hardware real
Sí es cierto lo del sample, que está en RAM1. Tampoco es algo que nos preocupe demasiado, la verdad, como para tener que andar montando pifostios y autodetectando modelos En los 128/+2 se escucha un poco más grave (y levemente más distorsionado) que en los +2A o en los Pentagon/Scorpion (que no tienen contención), pero tampoco nos molesta
¡Bienvenido al foro!
Jarll eso si tiene sentido claro en los 128k la pagina alta esta "contended" y para el modo 2 de interrupciones... es una jodienda.
Veis al final he aprendido algo nuevo. Gacias!!