Blog Home  Home Feed your aggregator (RSS 2.0)  
Playable status reached - Manuel Abadia's ASP.NET stuff
 
# Saturday, 10 May 2008

This post is first in english and then in spanish.
Esta noticia está primero en inglés y luego en castellano.

Javier sent us (via ElSemi) detailed information about how the encryption process worked. However, he told us that the sheets of paper that contained the encryption info were a bit difficult to read in some places (remember that this protection was designed 15 years ago) so probably there was some mistakes in the excel file he sent us. ElSemi and I tried to add it with the information he gave us but we didn’t have success. Nicola Salmoria did an excellent work (as always) consolidating the information and obtaining the missing information. He generated a working decryption function that not only works for World Rally, but also for Squash and Thunder Hoop.

Mike Coates also completed the interface to get the data from a World Rally PCB, so he was able to supply the encrypted/decrypted data that was needed to get the specific details to decrypt World Rally properly.

Special mention to Andreas Naive too. The high level information Javier told us a few days ago was already discovered by Andreas and posted in his page a couple of months ago. Before Javier sent us detailed information about how the encryption worked I contacted Andreas Naive about the encryption and he told me that he didn’t have free time at the moment to look at it. However he told me an intuition he had about the algorithm:

"I remember that my last feeling was that to decipher each 16 bits block, it was done in 3 chunks: a first 6 bits chunk and then two 5 bits chunks, each of them based in a/some bits of the first chunk. I don't remember exactly which ones, but the first chunk was the one with a simple structure (based on the tables I published), while the other two were the ones that shown a more complex structure (and carry effects)".
He was completely right as that was how it worked the encryption that Javier sent us.
 
It is good to have geniouses around ;-)

After adding the decryption to the driver the game looks like this:

It has a few graphic glitches that will be fixed soon but it seems to be PLAYABLE ;-)

Update: more progress has been made. You can read about it here


Javier nos ha mandado (via ElSemi) información detallada sobre cómo funciona el proceso de encriptación. Sin embargo, las hojas donde tenía detallado el funcionamiento del algoritmo eran difíciles de leer en algunos sitios (ya que la protección fue diseñada hace 15 años) por lo que probablemente habría alguna errata en el fichero Excel que nos mandó.  ElSemi y yo intentamos en vano añadir la información de Javier. Nicola Salmoria ha realizado un trabajo excelente (como siempre) terminando de pulir esa información y descubrir los detalles que faltaban. El ha implementado una función de desencriptación que funciona no solo para el World Rally, sino también para el Squash y el Thunder Hoop.

Mike Coates terminó el interfaz para obtener datos de la placa del World Rally, suministrando valores encriptados y sus correspondientes valores desencriptados, que permitieron obtener los datos específicos necesarios para la correcta desencriptación del World Rally.

Mención especial a Andreas Naive. La información de alto nivel que Javier nos dio hace unos días ya había sido descubierta por Andreas, que la publicó en su página hace unos meses. Antes de que Javier nos diera la información detallada sobre cómo funcionaba la encriptación, contacté con Andreas Naive sobre el tema. Me dijo que ahora mismo no tenía tiempo disponible para mirarlo. Sin embargo, me dijo que tenía un pálpito:

“Al descifrar cada bloque de 16 bits, se hacía en tres trozos: un primer bloque de 6 bits y luego dos bloques de 5 bits, cada uno de ellos basados en un/unos bits del primer bloque. No recuerdo cuáles eran cuáles, pero el primer bloque era el que tenía una estructura más sencilla (según las tablas que publiqué), mientras que los otros dos son los que mostraban estructura más compleja (y efectos de acarreo debidos a alguna suma).”

El algoritmo que nos había mandado Javier funciona exactamente de esa forma.

Está bien estar rodeado de genios ;-)

Después de añadir el algoritmo para desencriptar los datos, el juego mostraba este aspecto:

El juego tiene algunos fallos gráficos que se corregirán pronto pero es JUGABLE (lo poco que he probado) ;-)

Update: se ha completado la emulación del World Rally. Puedes leer sobre ello aquí

Saturday, 10 May 2008 20:52:23 (Romance Daylight Time, UTC+02:00)  #    Comments [9]   Games | MAME  | 
Sunday, 11 May 2008 04:42:40 (Romance Daylight Time, UTC+02:00)
enhorabuena y gracias!
tamariz_inferno
Sunday, 11 May 2008 12:22:26 (Romance Daylight Time, UTC+02:00)
sorry i speak only english, and the other rally series works?
Luke
Sunday, 11 May 2008 13:56:17 (Romance Daylight Time, UTC+02:00)
Fantástico. Para mí, el juego de coches más esperado en el MAME. No hay palabras para agradecerlo, de verdad, así que, por favor, conformaros con un MUCHISIMAS GRACIAS!!!!
Xavi
Sunday, 11 May 2008 15:05:51 (Romance Daylight Time, UTC+02:00)
It´s even a pleasure to watch this pictures, thanks
Ceto
Sunday, 11 May 2008 16:50:37 (Romance Daylight Time, UTC+02:00)
Más sorprendente aún! Muchísimas gracias!

Even more surprising!, Thanks a lot !

fritz b. m.
Sunday, 11 May 2008 19:31:15 (Romance Daylight Time, UTC+02:00)
Por fin, despues de décadas! usando el MAME uno de los grandes va a llegar, muchas gracias a todos, fantástico trabajo.

Seguiré muy atento a los progresos ;) GENIAL!!!
|LßE
Sunday, 11 May 2008 21:40:24 (Romance Daylight Time, UTC+02:00)
Andreas es el puto amo... y ahora va a por la Seibu.

Sois lo mejor ;)
Jota.Ce
Sunday, 11 May 2008 21:54:32 (Romance Daylight Time, UTC+02:00)
fantastica noticia, uno de los juegos mas jugados en las recreativas españolas esta casi emulado pero ¿y el resto de juegos de la misma placa sera emulable? si no recuerdo mal el thunder hoop era de esa misma placa y un vicioooooooooooo
robe
Monday, 12 May 2008 11:21:53 (Romance Daylight Time, UTC+02:00)
Luke: no, we need the dallas code for each specific game.

Robe: no, necesitamos el código del dallas para cada juego.
All comments require the approval of the site owner before being displayed.
Name
E-mail
Home page

Comment (Some html is allowed: a@href@title, strike) where the @ means "attribute." For example, you can use <a href="" title=""> or <blockquote cite="Scott">.  

[Captcha]Enter the code shown (prevents robots):

Live Comment Preview
Copyright © 2017 Manuel Abadia. All rights reserved.
DasBlog 'Portal' theme by Johnny Hughes.