Tutorial: Tu maka bajo GNU/Linux para torpes, Un paso a paso para tener tu maquina usando un SO estable y totalmente personalizable :)
D_Skywalk
icon14  view post Escrito el 10/3/2006, 13:05
Avatar

Dev, Gamming & friski friski xD

Grupo: Moderadores generales
Mensajes: 767
Location: Granada


Status: Offline: ultima azione eseguita il 31/12/2006, 13:17


Bienvenidos al tutorial sobre como tener tu maka funcionando usando software libre. Este se compondra en 3 capitulos bien diferenciados:

1 - Instalacion del sistema base.

2 - Instalacion de programas y librerias.

3 - Apendices
3.1 - Apendice A: Configuracion avanzada.
3.2 - Apendice B: Compila tu propio mame.
3.3 - Apendice C: Configura un logo de arranque personalizado.
3.4 - Apendice D: Dandole el toque de gracia.

Puedes encontrar la version mas actualizada (y facilmente imprimible :P) en mi pagina personal:
http://david.dantoine.org





Nota: Las ventajas de usar software libre son muchas, y no las voy a relatar aqui, espero que el lector avispado entienda las razones de usar software libre en lugar de software privativo, y sino siempre puedes empezar a leer cositas sobre GNU/Linux e informarte un poco y asi hacerte tu propia opinion del asunto ;·)


Para seguir este tutorial al menos necesitaras una maquina tal que:
- CPU: 686 o mayor (es decir a partir de Pentium II y/o AMD K6)
- GRAFICA: AVGA tanto 7000 o superior (en concreto yo testeare en una AVGA casera basada en una 9250)
- RED: Cualquier cosa con la que nos podamos conectar a inet (Se necesita para al menos instalar el sistema)
- LECTORA: CDROM o > (Se necesita para al menos instalar el sistema)
- PANTALLA: TV o Monitor arcade (no coment xD)
- HD: Exclusivo 20gb o mayor ¡¡SACAD CUALQUIER OTRO!! (no me resonsabilizo si formateais vuestro zuindowz actual, por ello tened conectado solo el hd que vayais a usar y sacad/desconectad cualquier otro)
Nota respecto al Disco Duro: el sistema solo necesitara 100/200 megas, lo demas es para roms, vosotros mismos sabreis que lo que necesitais.

Este tutorial intenta que aproveches al 100% tu maquina, y por lo tanto el tutorial no va a usar entorno grafico (X11) en NINGUN momento, por ello vendria bien que no te asustaran los comandos y que tuvierais un manejo basico en MSDOS. Esto no quiere decir que no haya una forma mas amigable de hacer todo esto, claro que la hay, pero: requiere mas fotos, el "picha aqui"... que muchas veces es menos preciso que dar comandos y el por que de cada uno :)

Consejos antes de entrar en faena:
- Si poneis vuestro router en modo DHCP, la configuracion en red es nula, solo tendreis que darle a OK, y poco mas :) Sino seria necesario, minimamente saber lo que es una IP y/o como configurar una tarjeta de red (ip, dns, puerta de salida) para que tenga conexion a internet.
- Preparad cafe, os hara falta xDDD

Si despues de leer todo esto, no has corrido despavorido...
¡¡enhorabuena!! estoy seguro que vas a conocer algo donde el unico limite, lo pondras tu :)
(si estas un poco asustadillo, tranquilo, no va a ser nada complejo y ademas yo os llevare de la manita)

Antes de comenzar necesitaremos una imagen del CD sistema, para este tutorial vamos a usar ubuntu:
http://www.ubuntu.com

Para este tutorial vamos a usar la version Breezy de ubuntu, que podeis conseguir en este mirror español:
http://sunsite.rediris.es/mirror/ubuntu-releases/breezy/ (recordad que es el Install CD para i386)

Grabad el CD con vuestro programa favorito a una velocidad maxima de 10x y marcad que revise los datos. Mientras se graba, para que os suenen luego, podemos aprovechar para hecharle un ojo a...

QUOTE
Nuestra pequeña lista comandos básicos Linuxeros

pwd : muestra el directorio de trabajo actual.
ls : lista todos los ficheros del directorio actual.
clear : limpia la pantalla (viene bien si usais TV y no veis las lineas inferiores)
cd [directorio] : entra en el directorio especificado.
cd .. : sale del directorio actual.
ps -aux : muestra los procesos lanzados con su número de identificación (pid)
kill -9 [pid] : mata un proceso según el número de pid indicado.
cp [fuente] [destino] : copia un fichero fuente sobre el nombre de destino (o en el directorio de destino si existe)
cp -r [dir_fuente] [dir_destino] : copia un directorio fuente sobre el nombre destino (o en el directorio de destino si existe)
tar xvfz : descompresión de un archivo tar en formato gz en el directorio actual.
tar xvfj : descompresión de un archivo tar en formato bz2 en el directorio actual.
rm [fichero] : eliminar el fichero en el directorio actual.
rm -rf [directorio]: elimina el directorio y todo su contenido.
wget [url] : permite bajar un fichero externo usando FTP o HTTP y te lo guarda en el directorio actual.
man [comando]: El manual de linux, totalmente en español os proporciona ayuda completa sobre cualquier comando.
[ALT]+[F1], [ALT+F2] ... [ALT]+[F6]: Cambia la consola actual de trabajo (multitarea).

Un tutorial por si tienes mas curiosidad: http://www.debian.org/doc/manuals/referenc...utorial.es.html

Insertar el CD y reiniciad el cd asegurandoos que teneis marcada la opcion de arrancar desde CDROM en la BIOS :D




1 - Instalacion del sistema base.

Empieza la fiesta chic@s!!

Comenzamos viendo al inicio una pantalla que nos muestra el logo de la distribucion, y debajo podeis leer un texto en ingles que, para el que no lo entienda, cuenta basicamente que en F1 tenemos la ayuda y que para instalar un servidor (es decir sin entorno grafico) escribamos "server".

Nuestra opcion va a ser esta ultima, pero antes de que escribais nada, debemos decirle al instalador que estamos usando una TV/Monitor arcade, para ello añadiremos "vga=771" para que nos permita instalar comodamente desde nuestra pantalla "poco comun" xD

Finalmente el comando quedaria:
CODE
server vga=771
(el simbolo igual lo teneis en la tecla [¿])

Pulsamos [ENTER] y comenzamos el proceso de instalacion, que vereis que no tiene mucho misterio :)

Atencion si tienes problemas con el modo de 771 que es de 800x600 podeis probar a 640x480, con el modo 769. Aunque yo he probado en mi Hantarex 9110 y no he tenido problemas, aconsejo de todas formas mover los potenciometros de Sync Horizontal y Vertical, por que tiene que haber seguro un punto en el que se os vea, aunque quizas tengais que hilar fino y combinar posiciones...

En la instalacion nos moveremos con los [Cursores], [Tabulador], [Espacio], [Enter], [Inicio], [AvPag]...

Idioma

Este sera el primer punto por el que nos preguntara la instalacion, abajo tenemos "Spanish - Español" que selecionaremos con [ENTER]. De nuevo nos pide confirmacion con "España", volvemos a pulsar [ENTER].

Una vez nos ha detectado el teclado, nos vuelve a preguntar por ultima vez, como antes pulsamos [ENTER].


Deteccion del Hardware y analisis del CD

Este paso es automatico, asi que no teneis que hacer nada mas que esperar ;)

Configuracion de la RED

Como explique antes si teneis la red configurada como DHCP, nos pedira confirmacion si los datos que ha encontrado son correctos, si lo son pulsad en [ACEPTAR], sino seleccionad la opcion de: "Configurar la red manualmente".

Direccion IP: Poned aqui la ip que querais que tenga la maka, recordad que tiene que estar dentro de vuestro rango, por ejemplo supongamos que uso el rango: 192.168.0.0, pues le pondremos una ip que sepamos que no esta ya ocupada por otra maquina... Pues, simplemente ponemos este numero; yo para el ejemplo voy a poner 192.168.0.200. (Como ves solo se cambia el numero final - 255 max.)

Mascara de Red: Tal y como esta por defecto esta bien.

Pasarela: Es la ip de vuestro router o del ordenador con la salida a internet. Yo por ejemplo voy a poner: 192.168.0.222.

Direcciones de Servidores de nombre: Normalmente los routers tambien dan DNS, yo pondre la misma, pero vosotros si preferis usar otras, todo vuestro ;) En esta ocasion repito mi: 192.168.0.222.

Nombre de la maquina: Poned el nombre que mas os guste, y os recomendaria ademas nada con "ñ" acentos, etc... con vuestro permiso yo usare "gauntlet", jejej

Particionado de Discos

Bien aqui empieza la parte seria del primer capitulo, preparar nuestro disco duro para el trabajo diario al que le someteremos.

Vamos a ver, como Metodo de particionado selecionad la opcion: [Borrar el disco completo].
Niños, no hagais esto sin la supervision de un adulto xD

El proceso sera automatico y al final nos pedira confirmacion si todo esta correcto. Ahora teneis 2 opciones:
- Podeis seguir adelante, y por lo tanto tendreis un muy buen sistema de ficheros (ext3).
- Podeis decirle que [NO] y configuraremos ReiserFS que es un sistema, en mi opinion, perfecto para nuestros propositos; ya que maneja a la perfeccion diretorios con cientos, miles (¿millones? xD) de ficheros, directorios y subdirectorios.

Pues la decision es vuestra, sino quereis complicaciones marcad la casilla [SI] y pulsad [ENTER], si os va la marcha, dejadla en [NO] pulsad [Enter]....

Paso Opcional: Configurando ReiserFS

Teneis ahora un nuevo menu, poneros encima de la particion que pone "PRIMARIA [...] ext3", pulsad [ENTER] y aparecera un nuevo menu en el que deberiamos de estar marcando la opcion: "Utilizar como: sistema ext3...", pulsamos intro de nuevo y obtenemos un menu con todos los sistemas de ficheros disponibles. En la 3a opcion tenemos "ReiserFS" simplemente seleccionadla pulsando [ENTER].

Ahora pulsamos [Enter] sobre la opcion: "Se ha terminado de definir la particion" y de nuevo en el menu inicial pulsamos [Enter] sobre la opcion: "Finalizar el particionado y...". De nuevo una ultima pregunta nos asalta y la confirmamos seleccionando la opcion [SI] :)

Instalacion de los ficheros del sistema

Este paso es automatico, es hora del cafe, seguro que lo tienes listo :D
¿como lo has visto? ¿complicado? Espero que no...

Este proceso no suele durar mas de 5 o 10 minutos, el tiempo justo para relajarnos mientras llega la ultima tanda de preguntas :lol:

Zona horaria

Mas simple imposible, seleccionad vuestra zona horaria, lo normal sera "Madrid", pero si tu nick es Macarro pues "canarias" ;P

Usuarios y contraseñas

Ahora crearemos un usuario que nos valdra para instalar programas y para uso general, en principio solo vamos a tener ese, pero mas adelante podremos crear otros si lo necesitamos, es mas; cada usuario podria tener sus propias configuraciones y/o puntaciones y ello no estropearia la configuracion de los demas usuarios/jugadores.

Vamos a crear este usuario inicial, para empezar primero nos pregunta por el...

Nombre Completo del usuario
Podria ser algo como por ejemplo: "Pepe Lopez Garcia", pero como lo nuestro es para la maca, yo simplemente pondre "Mame"; vosotros poned lo que creais mejor, si os equivocais o lo pensais mejor, simple podreis darle a [RETROCESO] y empezar este paso de nuevo :)

Usuario
Aqui debeis tener cuidado de no usar mayusculas, no es lo mismo poner como usuario: "Pepe" que "pepe". Yo usare "mame".

Contraseña
Pues alguna que recordeis y os la preguntara 2 veces :D

Configuracion de los repositorios y arranque

De nuevo estos pasos son automaticos, os sacara el CD y reiniciaremos el sistema.

Primer inicio del sistema e instalacion de paquetes

Este paso es automatico, esperaremos un rato a que termine y poco mas...

Sistema Instalado!!!
Tampoco fue para tanto, ¿no? ;)

Ultimo paso: Preparar administrador y reinicio/apagado del sistema
Antes de que pasemos al siguiente tema necesitamos activar el administrador, que aunque podriamos usar "sudo" (super-user do) para administrarlo, no quiero liaros demasiado... ya teneis suficiente con lo vuestro xD

Bien entrad con vuestro usuario que hayais creado, por ejemplo yo cree "mame". y aparecera algo como:

CODE
mame@maka:~$ _


Este es el prompt del sistema y como en MSDOS, espera a que le demos ordenes!! pongamonos a ello :D
Para activar la cuenta de root (administrador) haremos:
CODE
$ sudo passwd root
Nota: Cuando pulseis las teclas no se producira efecto en la pantalla.
Primero nos preguntara nuestra contraseña del usuario que creamos al comienzo de la instalacion y luego nos pedira (por duplicado) la del administrador.

Una vez activada saldremos del la sesion del usuario actual (en mi caso mame) pulsando [CTRL]+[D] o escribiendo logout. Para entrar como administrador usaremos como usuario: root y ya contraseña que escribisteis :)

image
Bueno aqui teneis el que va a ser nuestro entorno de trabajo, vale la imagen es de Debian, pero es que son primas hermanas :B):

Finalmente los comandos para apagar y reiniciar el equipo, como root (administrador) son:

APAGAR
CODE
# halt

REINICIAR
CODE
# reboot


(Con CTRL+ALT+SUPR tambien reiniciais la cpu, si alguna vez lo necesitais :?)




2 - Instalacion de programas y librerias.

Continuaremos ahora instalando los programas basicos para nuestra maka, que seran AdvanceMAME y AdvanceMENU, pero antes de poder instalarlos necesitaremos optimizar el nucleo del sistema, para que nos aproveche nuestra arquitectura 686 y preparar las librerias que permitiran a el emulador forzar los drivers para nuestro monitor arcade :D

Para instalar programas necesitaremos entrar como administrador del sistema, asi que hacedlo como os explique anteriormente.
Una vez dicho... Continuamos!

Optimizando el Sistema 686

Para tener todo el nucleo del sistema usando nuestra potente CPU, vamos a usar la excelente herramienta apt-get... Seguramente os suene a chino esta utilidad asi que como excepcion, vale la pena abrir un parentesis para explicar basicamente su uso:

QUOTE
Utilidades que todo buen linuxero debe manejar (I): apt-get

Esta es una potente utilidad que se encarga de bajar y configurar cada programa que instalemos. Cualquier programa de linux disponible para esa distribucion estara a vuestro alcance usando apt-get.

Su uso es muy simple:
CODE
apt-get COMANDO PROGRAMA

COMANDO: puede ser muchas cosas pero nosotros solo usaremos: install y update.
PROGRAMA: el programa que deseas instalar. Conviene saber el nombre exacto ;) Sino lo sabes siempre puedes mirar en: http://packages.ubuntu.com

Por ejemplo:
CODE
# apt-get install zsnes
¿Que haria este comando? Instalaria y configuraria zsnes en nuestro sistema, pero no solo eso; sino que si el programa necesita alguna libreria grafica especial (como SDL) tambien la bajaria (normalmente siempre nos pedira confirmacion si estas de acuerdo en instalarlas :)).

Ademas, es bueno que antes de instalar ningun programa usemos:

CODE
apt-get update


Que actualiza la lista de paquetes disponibles.

La potencia de linux y de sus comandos nos permite por ejemplo instalar varios programas de una vez, por ejemplo:

CODE
# apt-get install zsnes dgen
Que instalaria zsnes, y dgen ademas de todas las librerias que cada uno necesite ^^_

Para poder instalar svgalib necesitamos el fuente del nucleo de nuestro sistema (pero solo las cabeceras) asi que tambien las instalaremos :)

Primero pondremos al dia la lista de ficheros:

CODE
# apt-get update


Y por ultimo instalaremos el nuevo nucleo disponible:

CODE
# apt-get install linux-686 linux-headers-686


Como necesita tambien instalar otros paquetes, nos pedira confirmacion le decimos que "si" y empezara a bajar todo lo necesario, nosotros esperaremos otro ratin ;)

Una vez este bajado necesitaremos reiniciar el sistema para que a partir de ahora use nuestro nuevo nucleo 686 :)

Lo haremos con un simple:

CODE
# reboot


Compilando mi "muy especialmente modificado" SVGAlib

Nota: Quizas añada un camino opcional que permita hacer una especie de instalacion simple con un kernel base y un SVGAlib tambien base. Luego ya si alguno quisiera actualizar que hiciera estos pasos :?


Para que advanceMAME vaya fino, cual mariposilla del bosque, necesitamos instalar las librerias svgalib que le permitiran un acceso directo a nuestra tarjeta AVGA y asi forzar los modos que nuestro monitor arcade requiere. Las librerias svgalib de windows en realidad son un port del "equipo advance" para windows y personalmente a mi me dieron muchos problemas, vereis que en linux van de perlas :D

Empezaremos bajandonos el fichero comprimido con la libreria modificada:
CODE
# wget http://david.dantoine.org/ficheros/svgalib-1.9.20-4_modsky-src.tar.gz


Descomprimimos los ficheros:
CODE
# tar xvfz svgalib*.gz
Aclaracion: tar es un compresor que permite multiples formatos, por ahora sabed que existe xD

Antes de instalar las librerias necesitamos tener las utilidades basicas de programacion, para ello haremos:
CODE
# apt-get install build-essential gcc-3.4


Una vez instaladas pasamos a compilarlas e instalarlas:
CODE
# cd svgalib*
Entramos en el directorio
CODE
# make install
Compila e instala en nuestro sistema svgalib

Finalmente nos queda cargar el driver que SVGAlib ha compilado especialmente para nuestra arquitectura (686) y nucleo (2.6.12 cuando se creo este articulo). Recordad que si actualizais de nuevo vuestro nucleo (por ejemplo por uno mas nuevo) debereis de repetir estos pasos añadiendo "make clean" al inicio del proceso.

Para cargar el driver y la configuracion por defecto podemos reiniciar el pc o bien iniciar a mano el nuevo servicio. Iniciarlo estan simple como poner esta linea
CODE
# /etc/init.d/mame.sh start


QUOTE
Aclaraciones sobre el servicio mame.sh

Este es un pequeño script que he creado para este tutorial. Se os instala automaticamente al hacer el "make install" y lo podeis eliminar del arraque automaticamente haciendo "make clean" (que desinstalaria tambien todas las libs de SVGAlib).

Lo he creado por que el driver al estar aun en desarrollo, no tiene aun una forma simple de instalacion, y no os queria complicar mucho la vida, asi que este script basicamente inicia el driver y crea unos enlaces que necesita svgalib, es mas, tambien le dara un repasito los drivers de entrada (input) para que al inicio todo este preparado para jugar!

Nota para usuarios avanzados: He creado tambien una configuracion por defecto para SVGAlib pensada para monitores arcade y TVs. Si quereis hecharle un ojo o modificar algo la teneis en /etc/vga/libvga.config

Instalando (por fin) AdvanceMAME

Supongo que ya estareis hartos de tanto preambulo, os veo deseosos de ver como "tira" advmame en linux, bien pues vamos a ello! :lol:

Empezamos instalando las librerias que necesita advancemame:
CODE
# apt-get install libsdl1.2debian-alsa
# apt-get install lib freetype6
Nota: lib y freetype van juntos es un problema del foro, que no los podemos poner juntos.

Bajamos la version precompilada que he preparado para nuestro tutorial:
CODE
# wget http://david.dantoine.org/ficheros/advancemame-686_0.104.0-1_i386.deb


Y la instalamos localmente usando dpkg:
CODE
# dpkg -i advancemame-686_0.104.0-1_i386.deb


Ahora vamos a configurar muy rapidamente advancemame, solo para comprobar que todo esta correcto. Para una configuracion e instalacion detalladas, teneis los tutoriales de DOS y Windowz de Lord, exceptuando los pasos de la instalacion previa, claro.

Antes de pasar al tema vamos a bajar una rom de mame, freeware por supuesto, que he subido a mi site:
CODE
# wget http://david.dantoine.org/ficheros/robby.zip -P /usr/local/share/advance/rom
Aclaracion: la opcion -P indica el directorio donde guardara el fichero, que es el directorio donde advancemame buscara nuestras roms.

Ahora lo que debemos de hacer es salir de la cuenta de administrador y entrar como usuario normal, esto es muy importante y debeis acostumbraros a usar las cuentas de usuario para el uso normal y la de root solo para tareas de mantenimiento y poco mas...

Ejecutamos por primera vez advancemame para que genere el fichero de configuracion...
CODE
$ advmame


Ahora vamos a crear una configuracion basica con advcfg diciendole que use como profundidad por defecto 16bits (esto es muy recomendable para nuestra ATI/AVGA).
CODE
advcfg -bit 16

Seleccionamos las opciones de monitor arcade o tv (segun el caso) y finalmente centramos y guardamos (para mas detalle mirad los tutoriales de advmame.

Aviso: Al terminar el programa advcfg, no deja escribir, esto parece un problema del advcfg cuando usa el driver svgalib, pero se soluciona facilmente saliendo de la sesion con CTRL+D y volviendo a loguear.

Finalmente probamos nuestro mame recien instalado con la rom freeware, que no es ninguna maravilla pero al menos nos vale de testeo grafico y sonoro ;)
CODE
# advmame robby


QUOTE
Consejo para usuarios que hayan hecho el Apendice A (y sino a que esperas!)

Recomiendo editar el "advance.rc" con el "Midnight Commander" el fichero lo podeis encontrar dentro del directorio ".advance" y hacerle al menos los siguientes cambios:
CODE
[...]
device_color_bgr15 no
device_color_bgr16 yes
device_color_bgr24 no
device_color_bgr32 no
device_color_bgr8 no
device_color_palette8 no
device_color_yuy2 no
[...]
device_video_interlace no
[...]
misc_quiet yes
misc_safequit no

Finalmente para afinar tu advmame tendrias que empezar a currarte configuraciones con el advv para que algunos juegos no te hicieran barridos extraños y asi conseguir la perfecta emulacion que deseamos. Recomiendo leer el "modeline howto" que traduje.

Instalando AdvanceMENU

Bueno estamos ya en el paso final para tener nuestra maquina operativa, al menos basicamente ;) Recordad que de nuevo tenemos que trabajar con el admin (root)

Me gustaria advertir que advanceMENU tiene algunos problemas bajo linux si este no esta correctamente configurado, pero una vez hecho, ira como la seda :D

Bajaremos la version precompilada que he preparado para el tutorial.
Usuarios Avanzados: En principio no es necesario que compileis una version para vuestra CPU, mas que nada por que optimizar el menu, no nos va a servir de mucho, es mejor tener una version estable y poco mas

Empezamos bajando el paquete del menu:
CODE
# wget http://david.dantoine.org/ficheros/advancemenu-686_2.4.12-2_i386.deb


Y ahora lo instalamos simplmente haciendo:
CODE
# dpkg -i advancemenu-686_2.4.12-2_i386.deb


Listo, ya tenemos el advmenu disponible para nuestro usuario "mame" (en nuestro ejemplo) asi que logueamos con el y arrancamos el menu para que genere sus ficheros de configuracion:

CODE
$ advmenu


Bien ahora antes de arrancar el menu deberiamos de editar un par de lineas que por defecto estan mal configuradas y que colgarian el programa. Es recomendable hacer el apendice A para poder tener un editor decente, sino lo quereis hacer, usaremos nano, que tampoco es muy complicado de usar...
CODE
$ nano .advance/advmenu.rc


Y ahora con los cursores os moveis por el documento de texto y cambiad las opciones que os pongo para que aparezcan tal que asi:

CODE
[...]
device_color_bgr15 no
device_color_bgr16 yes
device_color_bgr24 no
device_color_bgr32 no
device_color_bgr8 no
device_color_palette8 no
device_color_yuy2 no
[...]
device_joystick raw
[...]
device_sound none (si quereis sonido poned "oss", pero NUNCA AUTO)
[...]
device_video_interlace no
[...]


Y ahora con [CTRL]+[O] guardamos (nos confirma el nombre, simplemente [ENTER]) y con [CTRL]+[X] Salimos.

Ahora ya podemos sin problema empezar a usar advcfg o advv para poner un modo correcto, de todas formas os dejo una mini seccion con una configuracion correcta para nuestra AVGA, por sino quereis pelearos con advcfg y demas xD
QUOTE
Configuracion TV/Arcade monitor by D_Skywalk

Simplemente volveis a editar el fichero anterior y añadis estas lineas:
CODE
device_video_clock 5-100 / 15.62 / 50-60
device_video_format 15620 0.727273 0.0454545 0.0909091 0.136364 0.915709 0.0114943 0.0114943 0.0613027
device_video_modeline standard_640x276 13.4563 640 664 744 856 276 278 282 303 -hsync -vsync


Y finalmente buscamos la linea que dice "display_size" y cambiamos su valor por "640" :)

Listo, ya solo nos queda arrancar el menu!
CODE
$ advmenu



Iniciando AdvanceMENU al arranque

Para iniciar el frontend al inicio del sistema vamos a necesitar dos nuevas utilidades, aunque espero que cuando tenga mas tiempo pueda hacer algun programita simple que haga aun mas facil este ultimo paso. O bueno, si alguien se anima que avise ;)

Empezamos con agetty que nos permitira substituir a nuestro viejo login por el programejo que le indiquemos :D

Asi que como root bajamos agetty:
CODE
# wget http://david.dantoine.org/ficheros/agetty_2.11z-2_i386.deb


Instalamos agetty con un simple:
CODE
# dpkg -i agetty*.deb


Ahora os presentare a skymame mi pequeño script de inicio del advmenu ;) La verdad es que es muy simple y creo que no le vendria mal algunas features, pero bueno nos vale para lo imprescindible...
Arranca advmenu y nos permite apagar con pulsar intro al cerrar advmenu :)

CODE
# wget http://david.dantoine.org/ficheros/skymame -P /sbin


Y le damos los permisos correctos para pueda ser ejecutado:

CODE
# chmod +x /sbin/skymame


Por ultimo editamos el inittab para que al inicio en lugar de ejecutar el programita que pregunta el login, carge nuestro script...

Empezamos comentando la linea que substituiremos:

CODE
#1:2345:respawn:/sbin/getty 38400 tty1

(Podeis comentar tambien los terminales 4 5 y 6, sin problemas)

Y ahora añadimos despues de la primera linea comentada:

CODE
1:2345:respawn:/sbin/agetty -n -l /sbin/skymame 38400 tty1 linux


A mi me ha quedado algo asi:
CODE
#1:2345:respawn:/sbin/getty 38400 tty1
1:2345:respawn:/sbin/agetty -n -l /sbin/skymame 38400 tty1 linux
2:23:respawn:/sbin/getty 38400 tty2
3:23:respawn:/sbin/getty 38400 tty3
#4:23:respawn:/sbin/getty 38400 tty4
#5:23:respawn:/sbin/getty 38400 tty5
#6:23:respawn:/sbin/getty 38400 tty6


Finalmente nos queda configurar un parametro que tiene mi pequeño saltamontes y es el usuario que deseais que arranque advmenu y advmame, evidentemente ese usuario es en el que debeis tener configurado ya todos los emus ^_^

CODE
# nano /sbin/skymame


El usuario por defecto es "mame", con solo cambiarlo ya lo teneis!

Listo, ahora al iniciar la maquina automaticamente aparecera advmenu y una vez cerrado aparecera un menu de mantenimiento que os permite, por ahora, reiniciar el menu o apagar el sistema... pero es muy facilmente editable ya lo vereis!
No olvideis enviarme las mejoras que le hagais!!


Despedida y... ¿Cierre?

Y llega el momento de la despedida... o nO?

La verdad para que engañaros aun nos faltan cosas que se iran ampliando en futuros tutoriales linuxeros y que ampliaran vuestros conocimientos para tener la perfecta maka que deseeis... Este tutorial solo ha pretendido poner unos buenos cimientos donde construir futuros tutoriales:
- soporte para LPT en Linux con OpenPPJOY,
- mas emuladores,
- Entornos graficos para cpus potentes,
- etc...

Espero que todo este tutorial os haya resultado util ya que: Muchos padawans han muerto para... eeh, bueno no :lol: pero alguna neurona si que ha caido :P

Recordad enviarme vuestras impresiones, mejoras o sugerencias a mi correo:
dantoine (en) gmail (punto) com




3 Apendices

En las siguientes secciones vamos a intentar afinar muchas cosas que no son totalmente imprescibles para tu maka, pero que no os vendran mal si quereis hacer un uso de: "no solo juego" e incluso lo pasareis como enanos si os gusta el "cacharreo informatico" ;D

3.1Apendice A: Configuracion avanzada

Configurar idioma correctamente

Ubuntu nos configura el sistema en español, pero ciertas utilidades no soportan aun perfectamente la configuracion por defecto que ubuntu nos propone en principio, asi que la vamos a cambiar:

CODE
# dpkg-reconfigure locales
Aclaracion: este programa permite volver a configurar programas ya instalados

Primero nos aparecera una gran lista de idiomas, en principio solo deberiais de dejar marcadas estas dos:
CODE
es_ES.ISO-8859-1
es_ES.ISO-8859-15@euro


En la siguiente pantalla nos preguntara cual queremos usar, yo os recomiendo la del "euro" :)
CODE
es_ES.ISO-8859-15@euro
Y listo ya tenemos nuestro idioma en un modo un poco mas compatible (aunque menos internacional). Para que los cambios tengan efecto reiniciad el sistema.

Instalando de utilidades imprescindibles (y actualizado de repositorios)

Si os apetece trastear un rato el linux y os sentis perdidos, un poco perdidos, vamos a instalar una utilidad que os ayudara en este nuevo mundillo linuxero: Midnight Commander. Esta utilidad nos permitara editar ficheros, copiar y demas operaciones muy facilmente ^^_

Para instalarla vamos a hacer 3 simples pasos:

En este primer paso vamos a añadir algunos nuevos lugares donde nuestro linux podra encontrar nuevas aplicaciones, para nuestro gozo y disfrute :D

Vamos a empezar bajandonos mi lista recomendada de repositorios:
CODE
# wget http://david.dantoine.org/ficheros/repositorios.txt
Aclaracion: wget se encargara de bajar nuestros ficheros y guardarlos en el directorio que nos encontremos. Como veis su uso es muy simple.

Una vez bajado vamos substituir la informacion antigua, para que apt-get conozca los nuevos repositorios :)
CODE
# cat repositorios.txt > /etc/apt/sources.list
Nota: si os fijais con que pongais "rep" y pulseis tabulador la el nombre del fichero se completara solo.
Nota 2: cat es un hermano mayor del type de msdos, por si alguno lo conoce.

De nuevo actualizamos apt-get con:
CODE
# apt-get update
Nota: Si algun repositorio os diera error, volved a ejecutarlo otra vez, a veces los servidores se saturan y pasan de nuestra peticion xD

Y por ultimo instalamos Midnight Commander:
CODE
# apt-get install mc


Para ejecutar el programa solo debeis teclear:
CODE
# mc

image
Seguro que a alguno le recuerda a cierta utilidad de norton...


Accediendo remotamente al sistema

Para acceder remotamente al sistema vamos a usar un protocolo seguro SSH. Nos permitira entrar y administrar la maquina remotamente, y esto es muy util sobretodo en nuestras maquinas que en principio no estan pensadas (ni acondicionadas) para un mantenimiento "in situ" :)

Si usas Linux o MAC seguramente ya tendras instalado el software necesario en tu maquina, pero si usas Windowz puedes bajarte Putty o cualquier cliente ssh que encuentres por google. Simplemente poneis la IP del pc a conectar y marcais SSH :)

Pero claro antes de todo esto, deberemos de instalarlo, vamos a ello!
CODE
# apt-get install ssh


Listo! ^^_


3.2 - Apendice B: Compila tu propio mame.
Nota: Antes de empezar se recomienda haber completado el Apendice A.

Con la intencion de que este tutorial valga para un futuro, no muy lejano la verdad, viendo la rapidez de versiones que publican el MAME-TEAM; voy a explicar como facilmente compilaros vuestras versiones de MAME, adaptadas a vuestras necesidades :)

La verdad que uno oye la palabra compilar y ya se cree que esta puede ser una tarea compleja, y en parte llevaria razon quien lo pensara, pero eso seria si quisieramos hacer cambios en el codigo o añadir drivers... pero vereis como tener al dia vuestro MAME optimizado para vuestra CPU es poco menos que un paseo ;)

Empezaremos bajandonos la ultima version, cuando se hizo este tutorial teniamos disponible la release 0.104 de advancemame:
CODE
# wget http://ovh.dl.sourceforge.net/sourceforge/advancemame/advancemame-0.104.0.tar.gz
Nota: esto se podria hacer mas facil usando Lynx por ejemplo, un navegador web de consola ¿como lo veis?
Nota2: Cambiad el "104" por la version que desees usar de advanceMAME.

Ahora dejaremos a apt-get la tarea de instalarnos las librerias de desarrollo necesarias para llevar a buen puerto nuestra tarea :D
CODE
# apt-get install nasm libsdl1.2-dev
Nota: Se instalaran unos 41 paquetes, pero no os asusteis por el espacio que os puedan ocupar, ya que no llega a mas 10megas, heheh.

CODE
# apt-get install lib freetype6-dev
Advertencia: no dejeis el espacio entre "lib" y "freetype6-dev" ya que van juntos, por alguna razon el foro me los renombra si los uno - hablare con Macarro...

El siguiente paso va a ser descomprimir advancemame y entrar en su directorio:
CODE
# tar xvfz advancemame*.gz
# cd advancemame*


Ahora con un simple comando vamos a dejar que un script configure nuestro mame basicamente:
CODE
./configure
No se si se bien con esta letra del foro, pero los dos primeros caracteres son: "punto" y "barra".

Una vez configurado el siguiente paso es opcional:
QUOTE
Para aquellos que quiera afinar su configuracion de CPU pueden editar con "mc" el fichero"Makefile" donde unas lineas mas abajo se puede leer:
CODE
CONF_CFLAGS_OPT= -march=....
Aclaracion: Las CFLAGS es la forma que tenemos para activar las optimizaciones que como usuarios deseamos que tengan nuestros binarios.

Y la pregunta que os formulareis ahora ¿como sabemos cual es la mejor opcion para nuestra CPU?
Pues dadle las gracias a los chicos de gentoo por facilitarnos la vida (y no tener que marearnos por google) con su fantastico wiki, donde tienen una lista por CPUs y los flags recomendados: http://gentoo-wiki.com/Safe_Cflags
Nota: sino sabeis la familia exacta de vuestra cpu podeis hacer un "cat /proc/cpuinfo" como indica el wiki y ya tendreis todos los datos necesarios!

Ademas tambien ganaremos un poco mas de velocidad si cambiamos -02 por -03, a costa de un pequeño aumento de tamaño en los binarios :)

Hay otro flag de optimizacion para los drivers que tengan partes en ASM (si es que aun queda algo en mame en ASM), es añadiendo en la linea de los flags ASM "-O9999".
Probadlo si quereis y luego nos contais si habeis notado alguna mejoria.

Como ejemplo os dejo mi configuracion de CFLAGS para mi Celeron a 2ghz:
CODE
CONF_CFLAGS_OPT= -march=pentium4 -fomit-frame-pointer -O3 -fno-merge-constants -Wall -Wno-sign-compare -Wno-unused
Nota: El -pipe solo tiene efectos al compilar, no tiene nada que ver con el propio ejecutable asi que, rara vez lo suelo usar.

Con estos CFLAGS y la configuracion por defecto de advmame (mas los cambios recomendados anteriormente) consigo 400fps de media en el Street Fighter II: Champion Edition - sf2ce. Para comprobar vosotros como de veloz os va, pulsad: F10 (throttle) y luego F11 (mostrar fps).

Una vez esta todo configurado ya solo queda teclear:
CODE
# make
Nota: durante este proceso os saldran algunos avisos, no os preocupeis es totalmente normal... :P

Una vez mas a ser pacientes ya que la compilacion puede durar facilmente mas de media hora, es un buen momento de tomarnos un respiro mientras el proceso finaliza :)

Una vez haya terminado, solo nos queda instalarlo:
CODE
# make install


3.3 - Apendice C: Configura un logo de arranque personalizado.

[ Esta seccion se queda para futuras investigaciones ;) ]

3.4 - Apendice D: Dandole el toque de gracia.
Quizas algunas partes de este apendice requieren algo de experiencia linuxera, si metes la gamba xD

Voy a dar un par de mini consejos de como mejorar el arranque de la maquina, para que este sea mas veloz :)

Primero vamos a quitar todo lo que no sea imprescindible para la maca del arranque...
CODE
# update-rc.d -f ntpdate
# update-rc.d -f console-screen.sh remove
# update-rc.d -f mdadm-raid remove
# update-rc.d -f mdadm remove
# update-rc.d -f pcmcia remove
# update-rc.d -f lvm remove
# update-rc.d -f evms remove
# update-rc.d -f rsync remove


Podeis hacer lo mismo con ssh, y si alguna vez necesitais entrar remotamente lo iniciais manualmente con /etc/init.d/ssh start

Ahora para que el arranque de los ultimos servicios se carguen sin esperas, editamos el script de inicio:

CODE
# nano /etc/init.d/rc


Y buscamos la linea que pone
CODE
startup $i start


Y le añadimos al final "&" para que obtengamos:
CODE
startup $i start &


Tambien podemos darle cañita al sistema con hdparm, en principio comprobamos si tenemos el dma activo en nuestro disco duro...

CODE
# hdparm -d /dev/hda

Siendo "hda" la unidad de tu disco duro, normalmente es "hda" o "hdb".

Si no lo teneis activadlo:
CODE
# hdparm -d1 /dev/hda

podeis añadir este comando por ejemplo al mame.sh del inicio para que lo haga cada vez o si quereis hacerlo mejor, configurad el hdparm.conf que teneis en /etc.

¡E..E...E..Esto es todo amigos! :lol:




WIP:
- Finalizado!!! ¿un repasillo? :D

Modificado por D_Skywalk - 17/4/2006, 21:39
Mikonos
view post Escrito el 10/3/2006, 13:20
Avatar

Restless in Peace

Grupo: Moderadores generales
Mensajes: 5869
Location: Alcobendas (Madrid)


Status: Offline: ultima azione eseguita il 15/1/2007, 12:07


Magno proyecto! Aquí estaré para animarte aunque no sea usuario de Linux.

Saludos
D_Skywalk
view post Escrito el 10/3/2006, 13:31
Avatar

Dev, Gamming & friski friski xD

Grupo: Moderadores generales
Mensajes: 767
Location: Granada


Status: Offline: ultima azione eseguita il 31/12/2006, 13:17


Gracias Mikonos! pero espero tambien que al menos a los que nunca lo habeis tocado, os pique la curiosidad y que al menos alguno intente prepararse su maka de esta forma, que no por ser diferente ha de ser mas compleja smile.gif

Es mas, como he comentado, voy a intentar hacerlo lo mas facil y simple que pueda, e incluso explicare (en la medida de lo posible) cada comando, para que entendais por que y como se hace cada cosa y sea asi el empujoncito necesario para que vosotros mismos continueis con vuestra personalizacion makera smile.gif

Un Saludo apañeros, en pocas horas empiezo este: "paso a paso" biggrin.gif
sebastia2000
view post Escrito el 10/3/2006, 13:36
Avatar

...voy a empezar a presumir de maca ;-)

Grupo: Member
Mensajes: 351
Location: Un poblet de la Marina


Status: Offline: ultima azione eseguita il 15/1/2007, 12:11


Aquí estamos a ver si salta la liebre.

con ansia, ansia....
Mikonos
view post Escrito el 10/3/2006, 13:50
Avatar

Restless in Peace

Grupo: Moderadores generales
Mensajes: 5869
Location: Alcobendas (Madrid)


Status: Offline: ultima azione eseguita il 15/1/2007, 12:07


Vale, me has convencido, lo probaré, pero has de tener paciencia conmigo, ando liadísimo para embarcarme en nuevos procesos de aprendizaje y exploración. Aunque todo sea que consiga un ordenador extra pronto y me meto de cabeza.

Saludos
Magod
view post Escrito el 10/3/2006, 14:36
Avatar

Supermarciano Doctorado

Grupo: Member
Mensajes: 948


Status: Offline: ultima azione eseguita il 15/1/2007, 20:12


Ya he puesto a bajar la distribución de ubuntu y los fuentes del advancemame y advancemenu para compilarlos con esta distribución.

Estaremos atentos al tutorial. tongue.gif
D_Skywalk
view post Escrito el 10/3/2006, 16:54
Avatar

Dev, Gamming & friski friski xD

Grupo: Moderadores generales
Mensajes: 767
Location: Granada


Status: Offline: ultima azione eseguita il 31/12/2006, 13:17


Espera Magod, que a lo mejor usamos Ubuntu-Dapper (la nueva version), estoy haciendo una prueba con ella y para el monitor arcade va genial smile.gif

Termino la prueba y os cuento, si quieres tener las dos bajadas aqui tienes el link:
Link eliminado ATM

Un Saludo y a ver si para la noche empezamos, al final vamos hoy a por las maderas... A VER SI POR FIN NOS LAS CORTAN!!! xDD

Modificado por D_Skywalk - 11/3/2006, 03:17
Lord Hiryu
view post Escrito el 10/3/2006, 17:59
Avatar

Master of Stick Of Pain!!!! I wanna Rock!!!!!!! And 80's Porn Star too!!!!!

Grupo: Moderadores generales
Mensajes: 4740
Location: Por Murcia,Barna,Madrid y Valencia más o menos


Status: Offline: ultima azione eseguita il 16/1/2007, 13:14


Yo de momento ya estoy bajando esa version D_Skywalk, la Ubuntu-Dapper.
Un saludo.
Magod
view post Escrito el 10/3/2006, 19:41
Avatar

Supermarciano Doctorado

Grupo: Member
Mensajes: 948


Status: Offline: ultima azione eseguita il 15/1/2007, 20:12


Bueno pues pongo a bajar ambas....
koskorron
view post Escrito el 10/3/2006, 21:43
Avatar

Supermarciano

Grupo: Member
Mensajes: 310


Status: Offline: ultima azione eseguita il 16/11/2006, 11:34


Marchando 2 de ubuntu!! me apunto

P.D. para los que tenemos windows y SOLO querais ver como se intala sin tener que sacar HD's ni cambiar nada os recominedo el VMWARE que permite crear maquinas virtuales. De esta forma podreis seguir el tutorial sin tener que modificar nada de la maquina y sin miedo a perder informacion.

Un salu2
Macarro
view post Escrito el 10/3/2006, 22:07
Avatar

El karma existe... por desgracia.

Grupo: Moderadores generales
Mensajes: 8657


Status: Offline: ultima azione eseguita il 15/1/2007, 20:10


Mi desvirgamiento linuxero fue a manos de kubuntu y su instalación es sencillísima, mucho más que la de windows. Y nada más terminar (tardó mucho menos que windows, y vamos 2-0) todo funcionaba perfectamente y con lo básico instalado: navegador internet, mensajería, etc...

3-0 y eso para un novato total biggrin.gif biggrin.gif biggrin.gif
Magod
view post Escrito el 10/3/2006, 22:19
Avatar

Supermarciano Doctorado

Grupo: Member
Mensajes: 948


Status: Offline: ultima azione eseguita il 15/1/2007, 20:12


Ya tengo la mia bajada, inicialmente tambien tenía pensado hacer las pruebas con vmware para cacharrear con el advmame y advmenu.

Si quereis barajos vmware workstation 5.5, sacando a la mula de paseo.

El vmware player os vale para cargar las maquinas virtuales previamente creadas (es gratis), pero no podeis crearlas. Así que como he dicho, necesitais el workstation.

Voy a ver que sale.... mientras esperamos.

Saludetes- tongue.gif

D_Skywalk
view post Escrito el 10/3/2006, 23:13
Avatar

Dev, Gamming & friski friski xD

Grupo: Moderadores generales
Mensajes: 767
Location: Granada


Status: Offline: ultima azione eseguita il 31/12/2006, 13:17


Ya estoy por aqui, estoy terminando la instalacion de la dapper, a ver que sale smile.gif

Por ahora parece que me ha instalado las X y no deberia de haberlo hecho (estoy instalando en modo server).

A ver si instala todo, pruebo mi advmame/menu y ya compruebo que todo va bien biggrin.gif

Un Saludo
Pd: magod VMWare no te vale para testear estas cosas a tan bajo nivel, ten encuenta que el driver de la emulacion de VMWare es especial... p.ej: para MSDOS creo que emula una S3 :?

Ppd: Ciertamente si solo quereis ver la instalacion como dice koskorron, con vmware podeis hacer el desvirguamiento sin peligro wink.gif Gracias tio por el apunte biggrin.gif

Modificado por D_Skywalk - 11/3/2006, 03:19
D_Skywalk
view post Escrito el 11/3/2006, 00:07
Avatar

Dev, Gamming & friski friski xD

Grupo: Moderadores generales
Mensajes: 767
Location: Granada


Status: Offline: ultima azione eseguita il 31/12/2006, 13:17


Estoy probando a instalar el nuevo nucleo del sistema para 686, la verdad que no se si usarlo ya que os mete tambien el entorno grafico, pero bueno... la verdad que viene bastante apañadito por si alguno quiere luego trastear mas emuladores y demas biggrin.gif

Un Saludo
Pd: y ahora resulta que si me deja poner 2 post... esto es de locura xDD


Ok, empieza el tinglado, por ahora paso de la dapper, al ser una version beta (la final no sale hasta abril) nos instala las X11 (para testeo y demas) y no quiero despistaros mucho del proposito inicial: "hacerlo facil" biggrin.gif

Perdonad por haberos hecho bajar la dapper :/




Bueno, son las 3AM y ya esta el capitulo de la instalacion terminado. Agradeceria vuestros comentarios de como os fue la instalacion y si os surgio alguna duda smile.gif

Good night!!

Modificado por D_Skywalk - 11/3/2006, 03:11
Lord Hiryu
view post Escrito el 11/3/2006, 13:29
Avatar

Master of Stick Of Pain!!!! I wanna Rock!!!!!!! And 80's Porn Star too!!!!!

Grupo: Moderadores generales
Mensajes: 4740
Location: Por Murcia,Barna,Madrid y Valencia más o menos


Status: Offline: ultima azione eseguita il 16/1/2007, 13:14


Yo hay una cosa que no entiendo. Bajé primero la UBUNTU que decia que ocupaba 600 y pico megas, y resulta que el fichero Rar, sólo ocupa 18 con algo megas. En cambio la Dapper, si que me ocupa 600 y pico.

Tanto dá.....me la bajo del nuevo enlace.smile.gif

Otra cosa, es necesario el modem?¿?¿.....o una tarjeta de red?¿?

Un saludo.
306 respuesta(s) desde el 10/3/2006, 13:05