Acer Aspire 9500 sin teclado
Un conocido cercano me contó que tenía un problema verdaderamente extraño con su ordenador. Es un portátil, un Acer Aspire 9500, grande y pesado, que presentaba un comportamiento exasperante: el teclado dejaba de funcionar en cuanto entraba en Windows XP.
Tenía acceso al BIOS con él, por lo que no parecía un problema hardware, y se las podía apañar con un teclado externo, vía USB. Habían intentado varias veces reinstalar desde el principio el sistema operativo, incluso formateando el disco a bajo nivel, pero nada de nada; el teclado desaparecía en cuanto WinXP mostraba su pantalla de arranque.
Como coincidimos todas las mañanas en el bar y es buen chico, le dije que me pasase la máquina y que le echaría un vistazo, seguro de que no habían reinstalado tanto como decía, y que bastaría con echarle un vistazo desde GNU/Linux para arreglar el asunto. Pues no, tampoco, en cuanto arrancaba una Knoppix el teclado volvía a desaparecer.
Angel y yo estuvimos haciendo pruebas y él dió con la solución: desactivar
el ACPI en el arranque usando el parámetro acpi=off
.
En WinXP la cosa pintaba mal, primero por mi inexperiencia con los entresijos del arranque en dicho entorno, y segundo porque no conseguía encontrar en la red ningún parámetro mágico con el que desactivar dicho ACPI. Y sí, si existe un método utilizando el disco de instalación, pero al no tener a mano un teclado USB no me parecía práctico.
Tras pensar un buen rato en ello a Angel se le ocurrió que el código del
ACPI
podía estar corrupto (dado que ese PC ha funcionado con normalidad
anteriormente), y que la solución para ello podría ser:
- Entrar en el
BIOS
y cargar los valores de fábrica, los más seguros. Lo hicimos y nada, seguía igual. ElBIOS
, todo hay que decirlo, es de esos escuetos que apenas de dejan tocar nada, como mucho el órden de arranque en las unidades. - Reinstalar el firmware del ordenador. Esta operación es bastante más complicada y la describo abajo.
- Restaurar la máquina al estado de fábrica, empleando los programas que
para ello residen en una partición oculta del sistema. Una operación
sencilla de realizar (empleando
Alt+F10
con Windows funcionando) y que deja el sistema como nuevo.
... Y no da buenos resultados porque el portátil se niega a funcionar si no es con un teclado externo. :-(
En este punto, y visto que no encuentro más información en la red sobre ello, voy a recomendar al propietario que lo lleve a un servicio técnico puesto que no hay manera de modificarlo.
Investigando más me he encontrado con un problema mucho más habitual de lo que uno pudiera pensar: DSDT corrupto ó incorrecto. Al parecer, dentro de
ACPI
existen varias tablas que proporcionan información al sistema y que pueden venir de fábrica con valores erróneos, ó sufrir algún tipo de corrupción de datos a posteriori. He visto en muchos sitios cómo alterar esas tablas, pero nada sobre qué cambiar en ellas, al menos nada que yo pueda entender.
Actualización: 7 de Marzo de 2008
He recopilado algo más de información sobre lo que le pasó a la máquina. Por lo visto la desaparición del teclado y el ratón fueron consecutivas; primero dejó de funcionar el teclado, mientras se usaba, y luego el ratón. ¿ Un virus ? Pues tal vez ...
Voy a intentar aplicar una solución mediante el uso del disco de instalación de WinXP que tal vez arregle algo de verdad.
Reinstalando el firmware
Son varios pasos, cada uno de ellos con sus correspondientes humillaciones y problemas, por este orden:
- Descargar la última versión del
firmware
de la máquina del archivo oficial y descomprimirla. - Arrancar la máquina con una knoppix y el
ACPI
desactivado. - Dado que tenemos la red configurada para aceptar nuevas máquinas en
cualquier momento (DHCP vamos), conectar el portátil a la red, montar el
disco
C:
y transferir vía rsync todos los archivos del flasheador deAcer
. - Reiniciar la máquina en --msdos--, aunque para ello tengamos antes que:
- Descargar si no se tiene ya una versión en CD de freedos.
- Copiarla a CD.
- Arrancar el ordenador con ella.
- Acceder a la unidad
C:
- Cambiar a la carpeta donde tengamos los archivos para actualizar y ejecutar
el flasheador, en este caso
FLASH.BAT
. Visto y no visto el programa efectúa su trabajo, indica que no hay error y reinicia.
Enlaces varios
Información que he ido reuniendo y que puede darme pistas para posteriores encuentros con estos problemas basura:
- Cómo arreglar problemas ACPI en Gentoo
- Proyecto ACPI en Linux
- Silenciando ventiladores en un HP Compaq para Windows XP