Zona Arcade. Construye, Restaura y Decora tu Máquina Arcade y Pinball.

Tutorial: Compilación de Mame 0.128 - Personalizar y optimizar Mame en nuestro ordenador

« Older   Newer »
  Share  
-shark-
view post Posted on 26/10/2008, 19:40 by: -shark-     +1   -1




Tutorial: Compilación de Mame 0.128 para eliminar pantallas de advertencia, guardar 'scores' y optimizarlo para nuestro procesador.

1.- Introducción

NOTA: Antes de nada, recordaros que "Mamecompiler" es una herramienta que ha creado Headkaze y ha puesto a la disposicion de todo aquel que la necesite en el foro de Arcadecontrol, por lo que mi objetivo con este tutorial es enseñaros cómo se utiliza. El mérito es realmente suyo y no mío.

Tal vez haya personas que no sepan qué significa "compilar", por lo que el título de este tutorial no levantará mucho su interés si no llegan a entrar para leerlo. A grandes rasgos, diremos que cuando se desarrolla una aplicación, como es, por ejemplo, MAME, éste se hace a base de escribir instrucciones en un determinado lenguaje de programación, estas intrucciones son propias de un sistema de programación, valga la redundancia, y sirven para describir lo que una aplicación va a realizar o cómo se va a comportar durante su ejecución.

Estas líneas 'legibles' que teclean los programadores o desarrollo del programa forman el código fuente, pero, una vez terminado, hay que convertir este lenguaje de programación (lenguaje de alto nivel) a un lenguaje que el PC sepa ejecutar, normalmente código máquina, el cual no sería igual de 'legible' y editable como lo es el código fuente. Este proceso de conversión de un lenguaje a otro es el que se denomina 'compilación'.

No merece la pena entrar en detalle en el proceso de compilación, realmente, para lo queremos hacer, no nos aporta nada.

La compilación Mame tiene como objetivo, por parte del aficionado a este emulador, poder optimizar la aplicación con el ordenador doméstico que se tenga, y además eliminar todas aquellas pantallas previas informativas que se suceden cuando ejecutamos un juego.

Como ventajas de este proceso está el hecho de que podremos extraer un mayor rendimiento a juegos que pudieran ir demasiado justos en nuestro ordenador de no hacer esto y, si tenemos una máquina recreativa, el poder saltarnos las pantallas informativas, contribuirá notablemente a alcanzar una mayor sensación arcade con la misma.

Con el código libre de MAME podríamos hacer muchos cambios, incluso participar en el proyecto si fuesemos capaces, pero a nivel de jugón vamos a tunear el codigo de MAME para personalizarlo a nuestras necesidades. En concreto haremos lo siguiente:

  • Evitar las tan molestas pantallas antes de que se ejecute el juego.

  • Poder guardar nuestras Records.

  • Poder optimizar mame en función del equipo (procesador) que tengamos.


  • 2.- ¿Qué vamos a necesitar?

    Para conseguir nuestra compilación personalizada de Mame, vamos a necesitar una serie de programas de código libre y ficheros que podéis descargar de los siguientes enlaces:

    Software necesario (indispensable para compilar MAME):

  • Mamecompiler. V1.17 (Pagina de origen)

  • Hidiff0128 (página de origen)

  • Source de mame 0.128

  • Microsoft .NET Framework, versión 2.0.

  • Highscore (página de origen)


  • Software opcional (aplicación que nos ayudará a saber qué CPU tenemos y sus características. Más adelante veremos cómo utilizarlo):
  • Cpu-z (página de origen)


  • ¡Vale!, pues si ya lo tenemos todo... ¡manos a la obra!.

    3.- Preparando el terreno para la compilación...

    Antes de empezar hay que instalar y preparar el software que hemos descargado. Seguiremos la siguiente lista de pasos:

    Paso 1: Instalamos Microsoft .NET Framework, versión 2.0: (si no el mamecompiler no se abrirá nunca) seguimos el asistente con todas las opciones por defecto

    Paso 2: Instalamos mamecompiler: Durante el proceso de instalación te pedirá una ruta para el programa, elegimos la que queramos. aunque la que te da por defecto está muy bien, es en "C:", y pilla muy a mano.

    Paso 3: Añadir Hidiff0.128: Ahora nos toca poner el fichero "hidiff0.128" en su sitio correspondiente, que debería ser en una carpeta que se llama "patches" dentro de "Mingw" (si has dejado predefinida la ruta al instalar mamecompiler es “C:MinGWpatches”).

    NOTA: Cuando hacéis clic sobre el enlace anterior de Hidiff0128 (un poco más arriba), os habréis dado cuenta que abre automáticamente una nueva ventana de Internet Explorer con todo el contenido del fichero. Para guardarlo haz clic en Página->Guardar como... Busca la ubicación "C:MinGWpaches" y pon como nombre de fichero 'hi_128.diff' (borra la extensión .txt) y en 'Tipo', despliega el cuadro combinado y pon 'Todos los archivos':

    image

    Paso 4: Añadir MAME 0.128: Por ultimo nos queda por poner la carpeta mame 0.128 dentro de la carpeta source “C:MinGWsource”, no olvidéis que hay que descomprimir el fichero que os habéis bajado, vamos que tiene que quedar así.

    image

    Bueno, pues ya lo tenemos todo instalado, vamos a arrancar "Mame Compiler". Si lo habéis hecho todo bien se os lanzara un programa como este:

    image

    Ya nos queda poco.

    Vamos a dejar las rutas para más tarde y vamos a centrarnos en las 'opciones de compilación'. Concretamente empezaremos por optimizar MAME para nuestro procesador.

    Lo primero que haremos será desplegar la pestaña 'Optimize for' (donde pone none), y nos saldra algo así.

    image

    Evidentemente, deberiamos saber qué procesador tenemos, pero os puede pasar como a mí, que tenía claro que mi procesador era un pentium 4 32bits, pero no sabia si era +SSE3 o -SSE3. Por este motivo hemos descargado "Cpu-z". Busca donde lo hayas descargado y ejecútalo. Nada más arrancar testeará nuestro equipo y nos saldrá una imagen parecida a esta:

    image

    Como podéis comprobar, nos da toda la información que vamos a necesitar y mucha más:

  • El tipo de procesador: 'Name'

  • Las instrucciones que soporta: 'Instructions'

  • El número de núcleos: 'Cores'

  • Más información que en este caso no nos hace falta.


  • En la imagen superior vemos que las instrucciones son mmx,sse,sse2 y sse3, este procesador es un p4 (de los buenos), soporta todas las instrucciones, (esta información no la dan los vendedores y es de las mas importantes, ya que el rendimiento es mucho mejor), por lo que si vuestro procesador P4 soporta la instrucción sse3 marcaréis +sse3 y, en caso contrario, -sse3.

    NOTA: Los 2 porcesadores Motorola G4 son procesadores de Mac, Los dos últimos de IBM G3 y G5 son porcesadores de servidores (a ver quien es el guapo que mete un G5 en la maca para jugar al Pang). Con el resto de tecnologías no creo que vayáis a tener problemas por lo que no os las comento para no alargar el tema de forma innecesaria.

    Ahora que ya hemos averiguado qué procesador e instrucciones tenemos, y además lo hemos marcado en el desplegable, seguiremos con nuestra tarea de configuración. En la siguiente imagen os he señalado la parte en la que nos centraremos ahora:

    image

    Como véis, en mi caso, de las tres primeras opciones ('64-bit Processor', 'Dual Core' y 'Quad Core') no me vale ninguna, ya que como hemos comprobado en en cpu-z mi procesador no cumple ninguno de esos requisitos.

    Mame UI: La dejaremos tambien desmarcada ya que estamos compilando mame y no mame ui (mame32) (Lo haremos en la segunda parte de este tutorial)

    Debug: Creo que es para depurar el código fuente, por lo que la marcamos tambien.

    Clean Compile: (esta paso de traducir), la marcamos tambien.

    Disable Warnings as Error: Esta última opción debemos marcarla si vamos a compilar una version inferior a la 0.118, pero como no es nuestro caso, no la marcaremos (¡Ojo!, si intentais compilar una version inferior a la 0.118 y no esta marcada esta opción, no se va a compilar bien Mame)

    Ahora vamos con las rutas:

    Estas son las rutas que aparecen predefinidas:

    image

  • En la primera ('MinGW Folder') nos pregunta donde esta instalado MinGW, si cuando instalastéis mamecompiler aceptasteis las instalación por defecto, tendréis que dejarla como está, de lo contrario poned el sitio donde decidisteis instalarlo pulsando el botón de los tres puntos suspensivos de la derecha.


  • En la segunda ruta nos pregunta dónde esta el SRC de Mame ('Mame Source Folder'), que si recordáis, lo pusimos en "C:MinGWsourcemame0128", por lo que pulsamos el botón de la derecha y le indicamos dónde esta.


  • Y por último, nos pregunta dónde están los parches que vamos a aplicar ('Diff Patch File'). En nuestro caso, si recordáis, lo pusimos en "C:MinGWpatches", por lo que pulsamos el botón de su derecha y lo buscamos.


  • Una vez que lo tenemos todo seleccionado, apretaremos el botón 'Apply Patch' y veremos en el marco negro el proceso de aplicación del parche con nuestras modificaciones


  • image

    Y, por último, presionamos 'GO!'. Este proceso tarda bastante. Dejad el ordenador trabajando, ya que puede durar entre media hora y dos horas, según el equipo.

    Bueno y con esto ya tendríamos nuestro pastel en el horno, solo nos faltaría esperar a que se haga.

    Una vez que termine el proceso, y si lo hemos hecho todo bien, debemos obtener un resultado como este (os indico también el botón 'GO!', aunque la captura corresponde al final del proceso):

    image

    Vamos ahora a la carpeta "soure" ("C:MinGWsource"), donde habíamos dejado los ficheros mamedev y, ¡¡sorpresa!!, hay un montón de ficheros más, pues ese es nuestro Mame. Copiamos o cortamos la carpeta y la ponemos ya en su sitio definitivo.

    Debes de haber obtenido algo así:

    image

    Ya tenemos compilado y optimizado nuestro mame, pero nos falta un par de cosas:

    1. Tenemos que crear un carpeta denominada "hi" dentro de nuestra carpeta mame0128

    2. Pondremos dentro de la carpeta mame0128 el fichero que nos bajamos de los records "hiscoredat", (recordar que tiene que ser descomprimido).

    3. Crearemos las carpetas de roms snap y samples.


    Ahora sí, ya hemos completado todo el proceso.


    - Por Uhepa -

    Edited by Mikonos - 14/1/2009, 19:28
     
    Top
    36 replies since 26/10/2008, 19:40   17601 views
      Share