Hi,
2011-08-17 10:16 keltez?ssel, SpawnHappyJake ?rta:> I know, I probably gave a lot of people heart attacks just from that title.
>
> I'm not saying that I would actually try flashing my BIOS with WINE, I
was just wondering, purely out of theoretical curiosity, if it's even
possible to flash the BIOS by initiating an "exe" BIOS flasher from
within WINE.
>
> I would suspect not, given that WINE "can't even" run Windows
drivers, and from my novice viewpoint, to do this would seem to be even lower
than a driver. That said, you never know.
>
> However, WINE does manage memory, I've heard. Doesn't an exe BIOS
flasher (when initiated from Windows) just write some stuff to RAM and send some
reboot instruction to the processor or something? If WINE can manage a
program's memory, couldn't it write the BIOS flasher stuff to memory,
and then tell the operating system to send that reboot command to hardware? Or
are all WINE processes' memory housed within WINE's allocated memory,
and thus would take special WINE development to be able to add BIOS flashing
support?
>
> If the dev team wanted to work on it, I would imagine there'd be a safe
way to try it out. Perhaps you can take a BIOS image file, copy it, and tell
QEMU or something to use the copy in "read and write" mode, install
Linux in QEMU (or whatever), put in your magic developing stuff, and try to
flash the BIOS. Of course you want to make sure you're running on an
emulated processor, not your real one. QEMU does have a -bios option to
"set the filename for the BIOS", and it looks like that's how the
folks at openfirmware are trying things out, though I don't know if QEMU
supports _writing_ back to the file.
>
> Cheers,
> Jake
there are native BIOS flashers under Linux, I wouldn't risk running
a BIOS flasher under Wine.
But two days ago, because there is no native firmware flasher for
Pioneer optical drives under Linux, and the Windows firmware
flasher failed under Wine, I tried DVRFlash on my Pioneer BDR-205
to upgrade from the factory shipped version 1.08 to 1.12.
http://dvrflash.rpc1.org/
The original flasher extracted the firmware but then the upgrade
procedure failed, maybe because the kernel filters certain ATA/SCSI
commands and I run it via Wine as my user.
Anyway, I used DVRFlash as root, and the firmware upgrade went flawlessly,
the drive works as expected. This was the command to detect the drive:
========================================# wine DVRFlash.exe 2>/dev/null
DVRFlash v2.7.7: Pioneer DVR firmware flasher
by Agent Smith, et al., Nov 2010
Commandline:
C:\BDR205\DVRFlash_v2.7.7\dvrflash_win32\DVRFlash.exe
Device parameter was not given, detecting all DVR drives:
Device : 3.0.0
Vendor : PIONEER
Model : BD-RW BDR-205
Revision : 1.12
Status : RPC-2 (region locked)
Region : none
Changes : 5 region changes remaining
4 vendor resets remaining
state is 'Region not set'
Now run DVRFlash again, from the command prompt, using
one of the device(s) listed above as first parameter
Press the Return key to exit
========================================
The "2>/dev/null" part is needed otherwise the terminal is flooded
with
"fixme:aspi:SendASPI32Command ASPI: Partially implemented SC_HA_INQUIRY for
adapter 4."
messages.
The X.Y.Z in "Device : X.Y.Z" has to be passed to DVRFlash.exe, like:
# wine DVRFlash.exe 3.0.0 S1014001.112
DVRFlash has the advantage that it doesn't care for firmware version,
so downgrades are possible with it. This isn't allowed by the official
Pioneer firmware flasher.
Best regards,
Zolt?n B?sz?rm?nyi