miércoles, 11 de febrero de 2009

Tutoriales SKY: Modificacion de la BIOS de un portatil HP serie dv9500 para cambiar la Wifi

Todos los pasos en este tutorial han de seguirse al pie de la letra ya que las operaciones que vamos a llevar a cabo son sobre un elemento crítico del sistema como la BIOS y que puede provocar un fallo grave en el sistema. Este tutorial pretende ser una guía para poder añadir elementos que HP no permite de serie y que requiere una cierta habilidad y conocimientos para manejarse sin problema.

Aclaraciones previas

HP en sus BIOS de portátiles añade lo que se llama WhiteList en la que están listados solo algunos dispositivos que el portátil aceptará como válidos. Entre ellos están listadas una serie de tarjetas WIFI MiniPCI que el portátil acepta y si le metemos una tarjeta MINIPCI Express Wifi que no está en esa lista el portátil no arranca dando fallo 104 de que no soporta la tarjeta Wireless.

El truco es editar la BIOS, ir a la línea donde esta esa lis
ta de dispositivos admitidos y cambiarlos por los que queramos. Veamos cómo.

Todos los dispositivos que se instalan en los equipos tienen una serie de parámetros que los identifica. VendorID, DeviceID y SubsystemID. Son cadenas de valores en hexadecimal. Para saber estos valores, que son imprescindibles, ejecutamos MSINFO32, vamos a Red/Adaptador y buscamos los valores de la tarjeta que tenemos ahora instalada dentro del portátil.



En esta captura vemos que una tarjeta Intel WIFI ProLink 5100 tiene los siguientes datos:
Vendor: 8086 Device: 4232 Subsystem: 1201 8086

Por lo tanto tenemos que conocer los datos de los 2 dispositivos que queremos intercambiar. Yo tengo una tarjeta Intel 3945ABG que tiene los datos siguient
es: 8086 4222 135C 103C y quiero cambiarla por una Intel ProWireless 5100 que tiene los datos anteriormente mencionados, es decir, 8086 4232 1201 8086.

Entonces lo que haremos será buscar en nuestra bios la cadena que identifica a la 3945ABG y cambiaremos esos datos por los de la 5100AGN para que el portátil entonces la pueda reconocer.

Este ejemplo lo haremos con la ultima BIOS publicada por HP para la serie dv9500, en este caso la F59.

Descarga: ftp://ftp.hp.com/pub/softpaq/sp42001-42
500/sp42153.exe
Bajamos ese fichero y lo ejecutamos. Creara la carpeta c:\SWSETUP\sp42153 con estos ficheros:

Entre ellos se encuentra el fichero 30CCF59.WPH que es el de la BIOS.

Para poder editarlo necesitaremos utilizar 2 programas:
Phoenix BIOS Editor: http://w16.easy-share.com/17
00454260.html
XVI32 (Editor Hexadecimal): http://www.handshake.de/user/chmaas/delphi/download/xvi32.zip

Abrimos el Phoenix bios editor y cargamos el fiche
ro 30CCF59.WPH. Saldran un montón de ventanas. Lo minimizamos (NO LO CERRAMOS). Al leer la BIOS el programa extrae un montón de ficheros dentro de la carpeta "C:\Program Files\Phoenix Technologies Ltd\BIOS Editor\TEMP". El que contiene los datos de la tarjeta que nos interesa es el BIOSCOD4.ROM


Aclaración: Truncado de la cadena

Una aclaración necesaria es que los datos hexadecimales de los dispositivos en las bios aparecen truncados, es decir, cambiados por parejas.
Ejemplo:
Si nuestro VENDOR es 8086, dentro de la BIOS aparec
e como 86 80. Lo mismo ocurre con el DeviceID, pero no lo mismo con el Subsystem. En el caso del subsystem mi 3945ABG aparece asi:
Datos normales: 8086 4222 135C 103C
Dentro de BIOSCOD4.ROM: 8680 2242 3C10 5C13


Es decir, el subsystem va truncado por parejas y el grupo completo.


Captura donde se aprecia el valor de la Intel WIFI 3945ABG dentro de la BIOS

Pulsamos dentro del XVI32 CTRL+F o vamos a Search/Find y ponemos la cadena 86 80 22 42 3C 10 5C 13 a buscar. En el fichero aparece en el offset 2AE7 (mirad la captura de aquí arriba). Cambiamos esos valores y tecleamos los valores de la tarjeta 5100 pero truncados correctamente, es decir, pasamos de 80 86 42 32 12 01 80 86 y lo truncamos a 86 80 32 42 86 80 01 12. Tecleamos estos valores y le damos al botón SAVE.

Valores cambiados a los de una Intel Pro 5100

Ahora maximizamos el Phoenix BIOS que tenemos minimizado y lo que tenemos que hacer es hacer alguna modificación, ya que sino no nos deja el programa volver a crear la BIOS.

Yo lo que hago es, en la ventana BIOS Configuration Parameters en el menú POPDown que sale, elijo MultiBoot III y le activo el valor Boot Fail Recovery haciendo 2 clics. Vemos que aparece un asterisco. Es una opción que las ultimas BIOS de HP no tienen activado, de forma inexplicable, ya que en caso de fallo en el flaseo tener esta opción activada permitirá recuperar la BIOS.


Ahora que ya tenemos la modificación hecha creamos la BIOS yendo a File/Build BIOS…Si todo va bien saldrá una ventana que muestra que la construcción de la BIOS esta correcta y nos pedirá guardala. La vamos a guardar en la carpeta donde está el programa que se usa para flasear, es decir C:\SwSetup\sp42153\SWinFlash con el nombre BIOS.WPH (ya existe este fichero, lo sustituimos).

Ya tenemos todo listo para flasear el portátil. Cerramos XVI32 y el Phoenix BIOS Editor.
Ahora tenemos que ejecutar el programa SWinFlash.exe y flaseamos el portátil. Después de un momento apagará el portátil. Instalamos la tarjeta nueva y si todo ha ido bien Windows arrancará correctamente y tendremos que instalar los drivers para la tarjeta nueva.

lunes, 9 de febrero de 2009

Seven Things you may not know about me

Este Alex, que es un liante, me mando hace ya algún tiempo un email acerca de escribir 7 cosas que no deberías (o sí, según se mire) acerca de mí. Como soy olvidadizo para según que cosas no me había puesto al tema y aquí va:

1.- Dicen que hablo mucho dormido, a veces hasta suelto tacos en conversaciones hasta enfadado y todo.

2.- Tengo muchas cicatrices. En la frente por caerme de la cama de pequeño (tendría 2 o 3 años), una en la cabeza de un raquetazo accidental (eso dice el, yo no lo tengo tan claro jejeje) que me dió mi padre jugando al frontenis cuando era pequeño, una en la rodilla derecha de una caída en el parking del hospital de León, una en el cuello de una operación, otra en el pecho derecho también de otra operación, una donde termina la espalda y empieza el trasero, otra en un dedo (maldito superslicer, esas porquerías para cortar cosas superfacil que anuncian en la tele), y varias más inconfesables ;)

3.- Tenía la manía con el anterior coche de que cuando paraba el motor, cogía el manojo de llaves y lo tiraba de la mano derecha a la izda. Esta manía no me evitó que se me quedaran las llaves dentro en una ocasión. También, y a pesar de que el coche nuevo tiene cierre con mando, se me ha quedado la manía de esperar a que baje todo el mundo para bajar los inexistentes seguros de las puertas.

4.- Estudiando en Oviedo estuve a punto de acertar una quiniela. A falta de 10 minutos para que terminaran varios partidos tenía 14 acertados. Al final me quedé con una de 11 y no cobré nada.

5.- Tengo la teoría de que si quieres tener hijas guapas has de visitar Galicia en verano, que llueva sin parar y estar de hotel. Vuelves con bollo en el horno casi seguro.

6.- Una vez agujereé unos gayumbos blancos por varios sitios. Mis hermanos tienen la teoría que fue debido a un ataque incontrolable de aerofagia. Yo disiento.

7.- Estando en Oviedo todos los días después de comer iba a una sala de máquinas que estaba debajo de casa y me echaba una partida al Super Street Fighter 2. Costaba 50 pesetas la partida y el dueño de la sala una vez me dijo que dejara de jugar todos los dias porque la gente no se ponía en la maquina. Solía terminar el juego siempre, durando una media hora la partida. Por supuesto al dueño nunca le hice caso.

Se me quedan muchas cosas en el tintero, quiza para próximas ediciones.