Estoy tratando de actualizar mi BIOS DELL VOSTRO 260. Estoy luchando para llegar a cualquier parte, ver más información:
Decidí simplemente extraer el flashrom directamente. No estoy intentando ejecutar el paso de parpadeo, simplemente extraer la ROM del archivo ejecutable. Entonces, si descargo el exe y trato de ejecutarlo usando dosemu, esto es lo que obtengo:
$ wget http://downloads.dell.com/FOLDER01639275M/1/MS-A10.exe
$ dosemu -dumb MS-A10.exe > log
$ cat log
SfxDos v2.11. [2012/06/25]
Extracting Files: [6174382 / 6174382] 100%
Missing SMBIOS Table
Qué significa esto ? ¿Alguien ha logrado extraer el firmware real de esos archivos ejecutables? No pude encontrar nada trabajando:
$ unrar l MS-A10.exe
UNRAR 5.00 beta 8 freeware Copyright (c) 1993-2013 Alexander Roshal
MS-A10.exe is not RAR archive
o
$ unzip -l MS-A10.exe
Archive: MS-A10.exe
End-of-central-directory signature not found. Either this file is not
a zipfile, or it constitutes one disk of a multi-part archive. In the
latter case the central directory and zipfile comment will be found on
the last disk(s) of this archive.
unzip: cannot find zipfile directory in one of MS-A10.exe or
MS-A10.exe.zip, and cannot find MS-A10.exe.ZIP, period.
Para referencia:
$ file MS-A10.exe
MS-A10.exe: MS-DOS executable
¿Cómo extraigo el archivo ROM de este exe de DOS autoextraíble?
bios
dell-vostro
malat
fuente
fuente
file
mando. Supongo que los archivos mágicos de tu distribución no son tan buenos.Respuestas:
En realidad eso fue trivial, simplemente ejecutarlo bajo vino:
La salida se encontrará en el directorio .wine:
con:
Supongo que esto tiene poco interés para cualquiera que intente hacer esta actualización de BIOS, debe tener en cuenta que usar un disco de reparación de Win7 / 32bits no es una opción aquí ). De hecho, la DLL necesaria en el tiempo de ejecución requiere que se encuentre oledlg.dll:
Al parecer, esta DLL no está presente en un disco de reparación de Win7 / 32bits.
fuente
hay un interruptor de línea de comandos para extraer la ROM (puede requerir Windows):
fuente
¿Cuál es la salida cuando ejecuta el archivo EXE con el parámetro extra "-?" ?
Puede obtener una lista de opciones de línea de comandos utilizables.
Si está hecho con una versión antigua de RAR para DOS, generalmente "-x" haría un extracto solamente, sin intentar ejecutar el intermitente BIOS inmediatamente después.
De todas formas: Nunca podrá ejecutar la utilidad flash basada en DOS desde un entorno Linux. Eso está causando el mensaje SMBios que estás viendo. Significa que no puede localizar el chip BIOS. Un emulador como dosemu no ayudará. No puede dar al comando de DOS el acceso de bajo nivel necesario al hardware.
La mejor opción sería crear un dispositivo de arranque USB o un CD de inicio con FreeDOS y ejecutar el EXE desde ahí. Eso no requerirá desempaquetar el EXE en absoluto. (Cuando se ejecute desde medios de solo lectura, deberá configurar FreeDOS para crear un disco RAM y ejecutar el EXE desde allí. Necesitará un directorio de trabajo de escritura para extraer el archivo de BIOS).
fuente