Seguramente hemos jugado más de una vez a Dunk Shot (HAL Laboratory, 1986) en nuestro MSX, sin duda el mejor exponente del deporte de la canasta paro también el rey del parpadeo de sprites: los jugadores se quedan sin pelo o sin camiseta, y a veces alguno incluso desaparece por completo. A pesar de esta carencia técnica, bastante molesta por cierto, el juego era una joya: presentaba gráficos y sprites multicolor, acompañados de efectos sonido y música. Dunk Shot era loa experiencia más cercana a jugar un partido de baloncesto en el ordenador de casa: se enfrentaban tres jugadores por cada equipo, y además se podía modificar la configuración del juego como el cambio de los jugadores durante el partido, la estrategia de equipo o la duración del partido.
Antxiko Gorjón ha publicado un parche no oficial que soluciona el parpadeo que comenté en el párrafo anterior. Pero para ello es necesario usar un MSX2 porque el origen del parpadeo está en la limitación que tiene el MSX cuando dibuja sprites en pantalla: solo cuatro por línea, y cada jugador de Dunk Shot necesita cuatro. En cuanto coinciden en la misma horizontal, comienza la fiesta. En cambio, el MSX2 dibuja ocho, y ahí es donde el parche hace su trabajo.




El resultado, medido por el autor en emulador, arroja que antes habían 66,7 sprites sin dibujar por cada fotograma, y en MSX2 ahora solo 1,7. En el peor escenario que ha podido medir, esta pérdida se reduce de 166 a 22, sin duda una mejora sustancial.
Como resultado, los jugadores se ven completos en todo momento, además de la pelota y la canasta.
Este parche nace a partir de un desensamblado comentado del juego, llevado a cabo por el propio Antxiko que merece la pena consultar si os apetece saber todos los entresijos de funcionamiento del juego.
El parche IPS requiere una ROM del juego y el uso de cualquier herramienta de parcheo. Personalmente siempre recomiendo ROM Patcher JS de Marc Robledo.
Me alegra ver cómo nuestros juegos clásicos son mejorados con mimo para hacerlos aún mejores. Y en este caso Dunk Shot tiene un lugar especial en mi corazón.
Enlace relacionado: GitHub
