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

Tutorial: Configuración emulador “ZINC” sin uso de frontend

« Older   Newer »
  Share  
view post Posted on 22/11/2011, 21:27     +1   -1
Avatar

Restless in Peace

Group:
Administrator
Posts:
42,894
Location:
Alcobendas (Madrid)

Status:


Tutorial: Configuración emulador “ZINC” sin uso de frontend

INTRODUCCIÓN

Por lo general las interfaces gráficas ayudan a configurar de manera rápida y amigable los emuladores, pero en caso de dar un fallos nos dejan parados y sin saber cómo repararlo, es por eso y por el hecho de encontrar escasa información del emulador ZINC en español (casi únicamente existe el tutorial de Mikonos) que decido a realizar este documento y vean cómo configurar cada cosa manualmente y corregir los errores que puedan ir surgiendo.


DESCARGA ZINC Y ACLARACIONES

Primero lo que hay que descargar:

Emulador Zinc 1.1, los plugins de vídeo(opengl, d3d y glide) y plugins de controles. Yo he usado “Winterblast's Input Plugin 1.6”.

www.emulator-zone.com/doc.php/arcade/zinc.html

El “Wrapper” para Zinc.
www.mediafire.com/?wzplfia8xwx17bo

La estructura de carpetas que utilicé para este tutorial es la siguiente:
tutozinccarpetas


COMANDOS DEL EMULADOR

Primero explicaré las opciones que nos da por defecto Zinc para poder configurarlo. Yo sólo he utilizado algunas, pero más de alguno sabrá cómo aprovechar el resto. Esto lo he sacado sencillamente del archivo “readme” que acompaña al emulador, agregando algunas experiencias mías.

--help: Muestra la ayuda

--list-games: Lista todos los juegos que soporta el emulador

--list-sets: Lista las rom que soporta el emulador

--version: Muestra información de la versión del emulador

--verify: Debería verificar el rom. Realmente no he utilizado nunca esta opción.

--use-config-file="nombre archivo": Aquí podemos crear un archivo de configuraciones generales que utilizara Zinc para cargar los juegos. Es muy útil, pues nos permite ahorrar tiempo permitiendo cargar opciones distintas para cada juego y evitando crear configuraciones nuevas para juegos que utilizan la misma.

--use-renderer-cfg-file="nombre archivo": Este comando nos permite cargar la configuración de vídeo desde un archivo. Es similar a la anterior pero para las opciones de vídeo.

--roms-directory="ruta rom": En esta opción configuráis las carpetas de las roms.

--use-sound=<yes|no>: Se explica solo, activa o desactiva el sonido.

--renderer="nombre archivo.znc": Aquí pondremos ruta y nombre del plugin de vídeo que utilizaremos.

--rotate=<value>: Esta opción nos permite rotar la pantalla. Los valores son:

0: sin rotación. 1 = gira la pantalla 90 grados en el sentido del reloj.
2 = gira 180 grados. 3 = gira 270 grados en el sentido del reloj.

--controller=<value>: Supongo que aquí debería ir la ruta del plugin del control. Yo sencillamente he puesto puesto el archivo “controller.znc” directo en el directorio de emulador Zinc.

--use-controller-cfg-file="nombre archivo.cfg": Aquí especificaremos la ruta y nombre del archivo con las configuraciones del control.

--sound-filter-enable=<yes|no>: Habilita el filtro de sonido. En teoría debería aumentar la calidad del sonido, pero a su vez utilizaría algo más de recursos. No lo he probado. Por defecto esta deshabilitado.

--sound-filter-cutoff=<value>: Define la frecuencia del filtro de sonido. Por defecto es 22050.

--sound-surround-lite-enable=<yes|no>: Nunca lo he activado por lo que esto es traducción literal del “readme.txt”. Por defecto: NO. Habilita "Lite-Surround". Pruébenlo y escuchen.

--sound-surround_lite-multiplier=<value>: Por defecto: 40. Ajusta qué tan poderoso es el “Lite-surround”.

--sound-stereo-exciter=<yes|no>: Por defecto: No. Habilita "stereo exciter". No he utilizado esta opción y la traducción es algo rara. Al parecer mejora el efecto del audio en estéreo dependiendo de la posición de los personajes.

--use-slow-geometry=<yes|no>: Por defecto: No. Habilita la utilización de un cálculo optimizado para las geometrías de los cuerpos en 3D, mejora la imagen, pero utiliza muchos más recursos. Los efectos no son visibles en todos los juegos. Mi recomendación es activarla si les parece que algo anda mal en el juego o si podría mejorar algo. Si el juego corre bien, déjenlo desactivado.

Nota: Todas las rutas y nombres de archivos para las opciones deben ir sin comillas y sin espacios entre los nombres. Ejemplo: --roms-directory=D:\juegos\roms

Para terminar de explicar la parte de cómo funciona el emulador Zinc, diré que es como lanzar las roms. Por lo general la dinámica para lanzar juegos con un emulador es "emulador.exe nombrerom.extensión", en el caso de Zinc, si bien este reconoce las roms con el mismo nombre que Mame, para poder lanzarlas se debe hacer con un numero. Ejemplo, para lanzar el juego “Star Gladiator” seria "zinc.exe 1".

Zinc en su versión 1.1 corre exactamente 71 juegos, por lo que la numeración va del 1 al 71, ésto dificulta su utilización en los frontends obligando a configurar juego por juego este número. Éesto es solucionable con el “zincwrapper” que e agregado al principio, el cual nos permite utilizar el zinc 1.1 tal cual si fuera Mame con la siguiente expresión: "zincwrapper.exe nombrerom" y él se encargara de lanzar Zinc con el número correspondiente al juego y el archivo de configuración (en el caso del “Wrapper” lo he llamado “zinc.cfg”).


CONFIGURACIÓN DE BOTONES

Para poder configurar los botones deberán descargar el plugin "Winterblast's Input Plugin 1.6". en el Zip van 4 archivos “controller.znc”, que es el plugin; “controller.cfg”, que es el archivo donde se configuran los botones; y el “dik_codes.txt”, que es un archivo que les ayudará a poder configurar los botones en caso de querer usar un teclado (o algún dispositivo que lo emule) para jugar.

El archivo “controller.znc” debe ser copiado en la raíz de la carpeta, junto con el “exe” del emulador. Cuando abráis el archivo “controller.cfg” se darán cuenta de que trae un montón de texto explicativo de cómo utilizarlo. Las partes importantes son las que no empiezan con ";".

El siguiente código indica que hacer en caso de que haya un error con los controles y genera un archivo en la ruta especificada a modo de reporte.
CODE
[general]
;file to output controller messages and errors
output="c:\wbout.txt"
;indicate if controller will fail or not if a config error occured
noerror=1


Configuraciones de botones comunes para todos los juegos. Por defecto son el test con la tecla "F3" y servicio con "F2".
CODE
[all]
;F3
test=k3d
;F2
services=k3c


Aquí podemos guardar las "hotkeys" o "macros", que son combinaciones de botones y movimientos en una sola tecla.
CODE
[combos]
;hadoken from left
1=d,,dr,,rb3
;hadoken from right
2=d,,dl,,lb3


Configuración de botones para el primer player. En este caso está configurado para ser utilizado con un control de PC de 8 botones.
CODE
[player1]
;example for ZN1 player 1 with joy1
;useMM=1  ;allow player 1 to use WinMM joystick instead of DirectX
coin=j1b8
start=j1b7
right=j1right
left=j1left
down=j1down
up=j1up
btn1=j1b5
btn2=j1b6
btn3=j1b4
btn4=j1b3
btn5=j1b1
btn6=j1b2
c1=
c2=


Mismo caso para el jugador 2.
CODE
[player2]
;example for ZN1 player 2 with joy2
coin=
start=j2b7
right=j2right
left=j2left
down=j2down
up=j2up
btn1=j2b5
btn2=j2b6
btn3=j2b4
btn4=j2b3
btn5=j2b1
btn6=j2b6
c1=
c2=


Para poder configurar los botones de Zinc en el teclado deberán colocar su valor hexadecimal. Según el archivo “dik_codes.txt”, anteponiendo una “k”. Ejemplo: Para asignar arriba, abajo, izquierda y derecha al control 1 y que las teclas sean “w, s, a y d” respectivamente, sería así.
CODE
[player1]
up=k11                                #define DIK_W               0x11
down=k1F                                #define DIK_S               0x1F
left=k1E                                #define DIK_A               0x1E
right=k20                                #define DIK_D               0x20


En cambio, para configurarlos como joystick seria j "número control" + b "número botón del control" y las direcciones serían j "número control"+ la dirección en inglés, quedando, por ejemplo, para el botón 1 del control 1 así: "j1b1"; y para la dirección arriba del control 1: "j1up".

Por número de control se entiende el número de dispositivo que le ha asignado Windows al control, por lo que si configuran un control como player 1 y otro como player 2, y luego desconectan los controles y conectas el segundo control primero y viceversa, tendrán las configuraciones cambiadas. ¡Ojo con eso!


CONFIGURACIONES DE VÍDEO

Para configurar el vídeo primero deberán bajar alguno de los plugins de la pagina del emulador los archivos “.znc”, ya sea el “D3D”, “OpenGL” o “Glide”. Pueden ponerlos en la raíz con el emulador o en carpetas aparte, como lo he hecho yo, que he puesto una carpeta para cada uno y luego deberán configurar su respectivo archivo “.cfg”.

Para los casos de los plugins gráficos “OpenGL” y “D3D” se encontrarán con un archivo “renderer.cfg” similar a éste (hay algunas cosas que por más que los active, no noto que hagna nada, por lo que dejo la descripción en inglés, a ver si alguien lo entiende mejor).
CODE
; ogl/d3d renderer settings

XSize                        = 1360        ; Ancho de la pantalla en píxeles.
YSize                        = 768        ; Alto de la pantalla en píxeles.
FullScreen                = 1           ; 1 para activar el fullscreen/0 para modo ventana.
ColorDepth                = 32    ; Profundidad de color, soporta 16 o 32 como valores solamente
ScanLines                = 0           ; 0 para sin scanlines/ 1 para scanlines negras/ 2 para scanlines blancas.
Filtering                = 0           ; Filtros para las texturas. Puede ser un número entre el 0 y el 3.
Blending                = 0         ; Enhanced color blend: ogl: 0/1; D3D: 0-2.
Dithering                = 0         ; Dithering: 0/1 (only needed in 16 bit color depths)
ShowFPS                        = 1         ; 1 muestra los frames por segundo/ 0 No muestra los frames
FrameLimitation                 = 1         ; 1 para limitar la cantidad de frames/0 Sin límite.
FrameSkipping                = 1         ; 1 para activar el salto de frames/0 Salto de frames desactivado.
FramerateDetection        = 1         ; Auto framerate detection: 0/1
FramerateManual                = 100         ; Limitamos el máximo de frames por segundo.
TextureType                = 0         ; Textures: 0=card's default, 1=4 bit, 2=5bit, 3=8bit
TextureCaching          = 0     ; Caching type: 0-3, def=2, mode 3 is not available on most cards.
EnableKeys              = 0     ; Enable renderer keys: 0/1, def=1 (enables keys for the fps menu/pause).
FastExcel               = 0     ; En 1 activa un hack de velocidad para los "excel" de las roms “Street Fighter EX's”.


Para poder usar “Glide” necesitan una tarjeta de vídeo compatible. El listado viene en el archivo de configuración, aun así es el siguiente:

3dfx Voodoo Graphics [various manufacturers produced these cards]
3dfx Voodoo Rush [various manufacturers produced these cards]
3dfx Voodoo² [various manufacturers produced these cards]
3dfx Voodoo Banshee [various manufacturers produced these cards]
3dfx Voodoo³
3dfx Voodoo4
3dfx Voodoo5

Y el archivo de configuración es así:
CODE
; WinZiNc Glide Renderer settings

Resolution                = 7         ; Resolucion del juego. Viene predefinidas por un número en el “.txt”.
Filtering                = 0        ; Texture filtering: 0-2 - see readme
ShowFPS                        = 1         ; 1 para mostrar los frames/ 0 Para ocultarlos.
FrameLimitation                 = 1         ; 1 Para limitar los frames/ 0 Para no limitar.
FrameSkipping                = 1         ; 1 para activar el salto de frames/ 0 Desactivado.
FramerateDetection        = 1         ; Auto framerate detection: 0/1
FramerateManual                = 100         ; Limita el máximo de frames. Va entre 1 y 255.
Key_Filtering                = 0x23        ; Key used to toggle texture filtering - see readme
Key_ShowFPS                = 0x2D        ; Key used to toggle FPS display - see readme
Key_FrameLimitation        = 0x22        ; Key used to toggle frame limit - see readme
Key_FrameSkipping        = 0x21        ; Key used to toggle frame skipping - see readme
Key_FramerateDetection        = 0x24        ; Key used to toggle auto framerate detection - see readme



CREADO UN ARCHIVO DE CONFIGURACIONES GENERALES

Tras haber configurado los controles y el vídeo, debemos crear un archivo de configuraciones donde le indicaremos al emulador la ruta donde se encuentran las roms, los plugin de vídeo, archivos de configuraciones que acabamos de crear y todos los comandos que queramos utilizar de los listados expuestos al principio de este tutorial.

Para crearlo sólo deben crear un nuevo archivo de texto, abrirlo con “notepad” y escribir las configuraciones que más os sean; guardar, cerrarlo y cambiarle la extencion de “.txt” a “.cfg”. A modo de ejemplo dejaré el que utilizo en el momento en que he decidido crear este tutorial y que he llamado "zinc.cfg":
CODE
--roms-directory=D:\juegos\roms
--renderer=d3d\renderer.znc
--use-controller-cfg-file=controller.cfg
--use-renderer-cfg-file=d3d.cfg


Como veis, le he indicado dónde están las roms, el directorio del plugin de vídeo “D3D” (es una carpeta dentro del mismo emulador, por eso la ruta solamente es "d3d\renderer.znc"), mi archivo de configuración de controles y de vídeo. Como he dicho anteriormente, pueden agregar todas las opciones del primer listado que estimen convenientes a este archivo.

Ahora, para poder utilizarlo debemos agregarlo en el “wrapper” editando el archivo “lconfig.ini” con un editor de texto y colocar un espacio después del número del juego y la siguiente línea: "--use-config-file=zinc.cfg", donde “zinc.cfg” será el nombre de vuestro archivo de configuraciones generales.


Espero esto pueda ser de ayuda para alguien y de paso puedan dejar sus emuladores mejor configurados y más limpios para sus front-ends.


Saludos


- Por Kiltrocrazy -

Edited by Mikonos - 22/11/2011, 21:49
 
Web  Top
chorny
view post Posted on 22/11/2011, 21:46     +1   -1




Muy interesante. Me va a servir pero bastante la verdad. Muchas gracias a Kiltrocrazy por el tutorial y a mikonos la maquetación.
 
Top
killo kabuto
view post Posted on 22/11/2011, 22:22     +1   -1




Otro emulador destripado y bien esplicado, hasta yo lo entiendo.

Gracias y un sañudo.
 
Top
view post Posted on 22/11/2011, 23:17     +1   -1
Avatar


Group:
Member
Posts:
203

Status:


Genial kiltro buen trabajo, este emulador es una gran alternativa al mame ya que algunos juegos 3d no van bien con mame
 
Top
view post Posted on 23/11/2011, 02:44     +1   -1
Avatar


Group:
Member
Posts:
119
Location:
Concepción, Chile

Status:


Vale gracias kiltro, buen aporte.
 
Contacts  Top
view post Posted on 23/11/2011, 05:46     +1   -1
Avatar


Group:
Member
Posts:
401
Location:
Concepcion, Chile

Status:


:O que emoción mi segunda publicación en zona arcade, aunque debo decir que también es la mas pobre que e visto en este sitio, debí haber tomado mas fotos por ultimo de lo que hacia cada cosa haber si lo actualizo un día.
 
Top
Igorallen
view post Posted on 23/11/2011, 12:23     +1   -1




Gracias por el aporte kiltocrazy!
Estoy contigo en que le faltan imágenes al documento, con buenas imágenes creo que es mucho más gráfico y más interesante de leer. Además de un simple vistazo la gente que no conozca este emulador, se haría a la idea de los pedazo juegos que es capaz de emular, y por lo tanto se pondría a aplicar el tutorial de la misma.

A pesar de todo, gracias por el esfuerzo que supone trabajarse un tutorial. ;)

Un saludo!!!
 
Top
chorny
view post Posted on 23/11/2011, 16:36     +1   -1




Ya lo he probado y genial hasta que en un par de juegos no cogía las teclas y no se a que puede deberse :S

Saludos.
 
Top
view post Posted on 23/11/2011, 17:43     +1   -1
Avatar


Group:
Member
Posts:
401
Location:
Concepcion, Chile

Status:


que juegos chorny? para probar y que puede ser.
 
Top
chorny
view post Posted on 23/11/2011, 17:44     +1   -1




QUOTE (kiltrocrazy @ 23/11/2011, 17:43) 
que juegos chorny? para probar y que puede ser.

De los que he probado los Tekken y el Soul Edge. Es extraño porque funciona a la perfección con los demás menos con estos :S

Saludos y gracias.
 
Top
view post Posted on 23/11/2011, 23:44     +1   -1
Avatar


Group:
Member
Posts:
2,025
Location:
Sevilla

Status:


Felicidades por el tuto, kiltro. Pedazo de aporte al foro. emoticon_cincin

Saludos.
 
Top
view post Posted on 24/11/2011, 03:25     +1   -1
Avatar


Group:
Member
Posts:
401
Location:
Concepcion, Chile

Status:


QUOTE (chorny @ 23/11/2011, 17:44) 
De los que he probado los Tekken y el Soul Edge. Es extraño porque funciona a la perfección con los demás menos con estos :S

Saludos y gracias.

La verdad es que creo que esos juegos tienen una configuracion especial, utilizan 4 botones los 2 cierto, ¿ serán de la misma placa? ahora estoy estudiando para un certamen y haciendo un informe ademas del trabajo, pero a penas me haga un tiempo lo pruebo ;).

mientras escribía mire el archivo de configuración de los controles y encontré esto,sabia que había visto lo del tekken y soul edge

CODE
; for S11 works well with tekken2, souledge
; seems btn1 to btn8 do nothing
;[player1]
;coin=j1b6
;start=j1b5
;right=j1right
;left=j1left
;down=j1down
;up=j1up
;btn9=k20
;btn10=k21
;btn11=k22
;btn12=k2e
;btn13=k2f


deberás crear otro archivo de configuración de controles para esos juegos sacandole los ";" en esta parte y poniendosela a la otra quedando algo asi
CODE
; for S11 works well with tekken2, souledge
; seems btn1 to btn8 do nothing
;[player1]
coin=j1b6
start=j1b5
right=j1right
left=j1left
down=j1down
up=j1up
btn9=k20
btn10=k21
btn11=k22
btn12=k2e
btn13=k2f

[player1]
;example for ZN1 player 1 with joy1
;useMM=1  ;allow player 1 to use WinMM joystick instead of DirectX
;coin=j1b8
;start=j1b7
;right=j1right
;left=j1left
;down=j1down
;up=j1up
;btn1=j1b5
;btn2=j1b6
;btn3=j1b4
;btn4=j1b3
;btn5=j1b1
;btn6=j1b2
;c1=
;c2=
 
Top
chorny
view post Posted on 24/11/2011, 11:51     +1   -1




Asi si funciona pero tengo otra pregunta que no se si parece tonta o no. Yo creo dos archivos controllers.cfg distintos pero ¿como le digo yo ahora que el tekken y el soul edge cojan esos y no los otros?

Gracias por tu ayuda.

Saludos.
 
Top
view post Posted on 24/11/2011, 13:23     +1   -1
Avatar


Group:
Member
Posts:
401
Location:
Concepcion, Chile

Status:


tendrias que crear otro archivo de configuracion para el zinc por ejemplo
CODE
--roms-directory=D:\juegos\roms
--renderer=d3d\renderer.znc
--use-controller-cfg-file=controlesTekken.cfg
--use-renderer-cfg-file=d3d.cfg


y en el wrapper donde esta la rom cambias esta linea "--use-config-file=zinc.cfg" por --use-config-file=confTekken.cfg

Estoy viendo que mas haya del update de las imágenes puse muy a la ligera el tema de la configuración de botones, puesto que zinc tiene 3 configuraciones de botones distintos :P.

Edited by kiltrocrazy - 24/11/2011, 13:40
 
Top
chorny
view post Posted on 24/11/2011, 15:26     +1   -1




QUOTE (kiltrocrazy @ 24/11/2011, 13:23) 
tendrias que crear otro archivo de configuracion para el zinc por ejemplo
CODE
--roms-directory=D:\juegos\roms
--renderer=d3d\renderer.znc
--use-controller-cfg-file=controlesTekken.cfg
--use-renderer-cfg-file=d3d.cfg


y en el wrapper donde esta la rom cambias esta linea "--use-config-file=zinc.cfg" por --use-config-file=confTekken.cfg

Estoy viendo que mas haya del update de las imágenes puse muy a la ligera el tema de la configuración de botones, puesto que zinc tiene 3 configuraciones de botones distintos :P.

Pues lo tendré que mirar bien, ya que uso el Pack de hyperspin de gregogame y los demás colaboradores.

Muchas gracias por tu ayuda.

Saludos.
 
Top
18 replies since 22/11/2011, 21:27   2895 views
  Share