viernes, 1 de septiembre de 2017

Viaje al Centro de la Tierra Edición Extendida MSX (Re-Actualizado)

Hola a todos:
Después de un tiempo sin tener noticias mías, tengo el placer de presentaros algo "nuevo".
Ojo al nuevo entre comillas.  :)
Llevaba tiempo esperando si alguien se ponía a realizar la versión extendida de este juego para nuestro querido MSX, y no acababa por llegar.
No parecía tan complicado, ya que Xortrapa hacia las conversiones en una tarde... jajajajaj

Aunque ya se ha comentado, que nadie espere ni un remake, ni una edición "revolucionaria".
Para los que me conocéis, o seguís, también sabréis que tampoco iba a llegar al otro extremo y ser una conversión "directa" del Spectrum.
Aunque la idea inicial era simplemente esa. Probar unas rutinas que me construí para realizar conversiones "en una tarde" desde Spectrum.
El problema? El problema de muchos juegos de la edad de oro... lentitud respecto a la versión de Spectrum. La fase 4 y fase 5 (las nuevas), eran bastante más lentas y se hacían muy fáciles. (a parte de perder la esencia de ellas)
Gracias a la ayuda de contar con el código original de Manuel Ferreira Moreno, pude mejorar las rutinas al utilizar menos el buffer intermedio, o incluso no usarlo en ocasiones.
También se ha mejorado detalles respecto a la versión Spectrum, como el aprovechar que los MSX no tienen "color clash" al tile sino a la linea (esto igual pasa más desapercibido para muchos)
También han sido solucionados unos bug, tanto en la fase "original" 2 y 3, como en la fase de las tortugas, gracias a los fantásticos betatesters Araubi y Konamito.
La idea de todo esto es hacer una continuidad de todas las fases (por eso también se han añadido contraseñas para la fase 4 y textos que no quedaban tan bien junto con el resto)

Muchas gracias por la ayuda a Alfonso Fernández Borro por el apoyo y por permitirme llevarla a buen término.
También sirva como humilde homenaje al maestro Azpiri, que recientemente nos ha dejado.

Espero que os guste!!!

Update: Versión TSX y WAV actualizada a la 1.4. Gracias a NataliaPC, es el primer juego "nuevo" que sale en versión TSX!!! Ha costado mucho trabajo, pero se ha convertido a cargas Turbo, y a parte no da problemas con algunos ordenadores en los que no cargaba debido a las rutinas de slots (por ejemplo en mi Panasonic F1-WX). La versión CAS no ha podido actualizarse, ya que las rutinas son distintas y hacen uso de la BIOS.

Update: Versión actualizada a la 1.3. Mejoras en la gestión del joystick, y el acceso al VDP. Esto provoca que en algunos MSX muy concretos ya no de errores en los gfx. Recomendaría totalmente actualizar a esta versión. Gracias.
Añadido video del genial trabajo de Araubi comentando una partida de esta edición extendida.
Ojo Spoiler!!! jajajajaja

Agradecimientos especiales: A Tromax y Araubi por las anteriores conversiones a WAV y TSX respectivamente.

Carátula Delantera
Carátula Trasera

CAS v1.3
WAV v1.4
TSX v1.4







jueves, 25 de mayo de 2017

Nuevo Parcheo: Triple Commando (Baooum)

Agradecer como otras tantas ocasiones a Araubi por su labor de chequeo del juego. Sin él no habría llegado a realizar este parcheo. Una vez más gracias, los "genios de XORTRAPA", en esta ocasión con una producción propia....

He de decir que sigue habiendo errores, que o no se han parcheado, pensando que sería imposible acabarlo de hacerlo (por ejemplo, si se mejorara el sistema de detección de choques o de la bajada de vidas, no daría con 10 "vidas"). Otras como el "extraño" funcionamiento del marcador (hay cosas que, o no se usan, o no se nos descuentan directamente), es algo que ya pasa con el resto de versiones también. Puede que se me olvide algún "error" más, pero si veis algo, comentarme y lo hablamos...

Bueno, empiezo con todos los problemas solucionados:
1.- Para poder empezar a chequear todo el juego, tuve que ponerme con un error bastante común para acelerar los juegos en la época, aunque las instrucciones del VDP lo especifican, por ahorrar instrucciones y velocidad, se prescindía en ocasiones de las esperas entre los accesos a éste. En ocasiones, como ésta, inexplicablemente no ocurría nada. Arreglado para "no forzar".
2.- Mismos problemas que muchos juegos conversión de Spectrum, en Spectrum la dirección FFFFh es una dirección "normal" para él. En MSX, como sabéis se utiliza para cambio de slots, con lo cual, si se escribe en ella, cuelgue casi seguro (en MSX2 y adelante, normalmente). Sólo he podido parchear, haciendo que no escriba en ella, con lo cual sale un cuadrado negro abajo a la izquierda (falta ese tile). He probado a ubicar en otra parte de memoria el buffer de pantalla, pero no lo he conseguido bien (gráficos corruptos). El juego creo que no pierde más de lo que es el propio juego... jejejeje
3.- Situación idéntica al Double Dragon y Alien Syndrome con los puertos del ordenador. Dejaron OUT(FEh) usados para leer el teclado y para modificar cosas como los colores de borde pantalla desperdigados por el código. Esto producía cuelgues varios, sobre todo en ordenadores MSX2 o superiores.
4.- Cambiado el texto del menú principal al escoger personaje, en vez de Teclado 2, ahora pone Cursores (en realidad es lo que se usa)
5.- Eliminado un pixel que salía en la presentación, aparentemente se les coló.
6.- Y ya llegamos al mayor parcheo que tenía el juego. En este juego en MSX el mapa es distinto, como se comentó, hay dos pantallas que no están. No es que no estén, concretamente, si "llegamos" a una de ellas, se nos mostraría el final. En concreto es la de la parte baja del mapa a la derecha.
Si no recuerdo mal, en el juego "original", lo que ocurría es que se quedaba colgado.
Se ha parcheado esto, y ahora muestra un texto de final.
En la cara B del juego, hay una carga que no se ha usado, ya que está hecha a medias.
Como igual recordáis este juego iba a ser originariamente el Baooum, y después se cambió por Triple Commando, pues lo que hay en la cara B no es más que lo que hubiera sido el final de dicho juego.
Es un texto diferente al que hay tanto en la versión MSX, como en la versión Spectrum, y lo que iba a ser la animación final del Spectrum.
He tenido que reconstruir toda la rutina para mostrar la animación, ya que en MSX no estaba (además faltaba parte de ella), ayudándome de la versión Spectrum.
Aprovechando que tenía la versión Spectrum también, he hecho otro CAS con el texto de dicha versión.
Quedan entonces 3 versiones del CAS, al precio de 1:

BAOOUM            Animación, con texto desechado
SPECTRUM         Animación, con texto Spectrum
TRIPLE-TEXTO  Sólo texto, versión MSX

Creo que no me dejo nada.
Espero que las "disfrutéis" y os animo a acabarlo para ver los 3 finales.

BAOOUM
SPECTRUM
TRIPLE-TEXTO

domingo, 12 de marzo de 2017

Nuevo Parcheo: Milk Race

Este nuevo parcheo ha sido un poco más fácil.
También requerido por Araubi, que se ha dado cuenta del fallo, y me ha podido enviar un STA del juego antes de colgarse.

Lo que ocurría es que al llegar cierto momento del juego, se colgaba.
Revisando el código, me dí cuenta que el juego se quedaba parado en unos HALT por algún motivo. (Lo normal es que esto ocurra cuando están las interrupciones deshabilitadas, pero en esta ocasión ocurre con ellas habilitadas también).
Al perder el juego y mostrar el mensaje de GAME OVER también ocurría.
He parcheado para eliminar estos HALT conflictivos.
Las rutinas que controlan los slots no cumplen todos los requisitos de compatibilidad, pero por lo menos el juego se puede acabar en un MSX1.

Milk Race

Nuevo Parcheo: Mortadelo y Filemón

Bueno, otra "obra titánica" de la ingeniería, y una vez más gracias a los "genios de XORTRAPA" como dije con el Alien Syndrome.

También de nuevo, como con el Double Dragon y el Alien Syndrome, este CAS que ahora podéis "disfrutar" no habría sido posible sino fuera por las pruebas que Araubi ha realizado.

Bueno, empiezo con todos los problemas:
1.- Comienzo por lo que llevó a Araubi a ponerse en contacto conmigo y que nos dio algún que otro dolor de cabeza. El juego, una vez se llega a la Guardería, se corrompían los gráficos y después el juego iba mal completamente. El problema era que accedía a una posición de memoria "complicada" como es FFF0h hasta FFFFh, pero no contentos con ello, se olvidaron de poner aquí lo que debería ir, que eran las posiciones de los niños espectadores. Por lo tanto, el juego lee posiciones "falsas" y coloca a los niños fuera de la pantalla, produciendo los errores que después quedan en la VRAM. He cogido las posiciones "correctas" de la versión Spectrum y relocalizados los bytes que controlan las posiciones de los niños en otra parte de la memoria.
2.- Situación idéntica al Double Dragon y al Alien Syndrome con los puertos del ordenador. Dejaron OUT (FEh) usados para leer el teclado. Esto producía cuelgues varios, sobre todo en ordenadores MSX2 o superiores.
3.- Esta vez se han lucido todavía más, y a parte de los OUT(FEh), han dejado multitud de IN a,(FEh) que se usaban para detectar pulsaciones de teclas, etc... al dejarlos, en ciertas ocasiones, provocan bucles infinitos. Borrados todos (muchos).
4.- Algún acceso a la VRAM, no cumplía los requisitos de dejar ciclos de Z80 entre los accesos al VDP.
5.- Las listas de objetos (como todas las variables del juego) solapan parte del código. En concreto la parte del menú principal (por eso no se puede volver al menú principal al perder las vidas). Reubicado a una zona "no peligrosa", ya que provocaba errores como problemas con los disfraces.
6.- Modificados los valores para las listas de objetos. Aunque el espacio de las listas de objetos eran de 6 artículos, el juego sólo permitía 3. Cambiado a 6 artículos.
7.- El mapa de los alcantarillados estaba mal y causaba que en ciertas circunstancias se quedara en un bucle infinito. Cogido el mapa de la versión de Spectrum.
8.- Modificados algunos puntos en la presentación que se mostraban transparentes, cuando deberían ser negros.
9.- Cambiados varios textos erróneos, como JOISTICK.
10.- Cambiado el mensaje al perder las vidas de (Y/N) a (S/N) y cambiadas las teclas.
11.- Después de escoger N en este mensaje final, saltaba a una dirección errónea que provocaba un cuelgue o algo inesperado. La solución, ya que no se puede volver al menú principal sin reubicar todas las variables, se queda en un bucle infinito.
12.- Cambiado el texto "5nchufe" por "5 enchufe". Este es un error que también está en la versión Spectrum.
13.- Añadida versión de CAS para controlar con cursores.

Los controles, a parte de los cursores o QAOP y espacio son:
D:   Lista de disfraces
T:    Lista de herramientas
E:    Lista de "otros"

Revisando el código, también me he encontrado con varias teclas a las que no se hace mención en las instrucciones:
K    Activa o desactiva un truco. Con el espacio nos permite matar a las ratas en las alcantarillas.
I      Activa o desactiva los mensaje de Ibañez.

Mortadelo y Filemon (Cursores)

Mortadelo y Filemon (QAOP)