bios.cap file is only required for the recovery mode, allowing the machine to boot up loading a temporal bios from the bios.cap file instead from the motherboard flash.
I would try the flasher from your laptop official drivers/bios updates page.
however if the older update is already a wph file, it should work fine with winflash.
if you are trying to flash a older version, try the /v and /svs parameters
Quote:Phoenix WinFlash for UEFI Command Options
This section lists WinFlash command options and parameters.
Syntax
WINFLASH [options] [romfile] [@rspfile]
romfile The new BIOS image name, eg: BIOS.FD
@rspfile The response file (PFLASH.RSP by default) contains all command parameters in text format.
/? or /help or /h Displays help screen
/all Flash the entire image including the descriptor region
/bak:filename Backup ROM to a file.
/bbl Program the boot block. By default, bootblock is not updated.
/bios Flash the BIOS region
/cs Verify BIOS.FD image checksum
/cvar Clear variables
/console Console mode (only progress bar)
/desc Flash the descriptor the region
/dmctring Specify chassis manufacturer DMI string
/dmmtring Specify motherboard manufacturer DMI string
/dmstring Specify system manufacturer DMI string
/dpctring Specify chassis asset tag number
/dpmtring Specify motherboard product ID DMI string
/dpstring Specify system product ID DMI string
/dsctring Specify chassis serial number DMI string
/dsmtring Specify motherboard serial number DMI string
/dsstring Specify system serial number DMI string
/dustring Specify UUID DMI string
/dvctring Specify chassis version DMI string
/dvmtring Specify motherboard version DMI string
/dvstring Specify system version DMI string
/ec Flash the EC region
/exit Exit without rebooting
/gbe Flash the GbE region
/hash ??
/ls Reserve logos in BIOS ROM
/logo:imagefile Replace the BIOS logo with an imagefile in jpeg or bmp format.
/me Flash the ME region
/mfg Manufacturing mode. Automatically reboots without the need for pressing a key.
/mod:filename Updates the module in the BIOS with the module contained in the file (such as /MOD:vga.ffs); the rest of the BIOS image remains unchanged.
/mode=n Specify dmi mode n = {0, 1, 2, 3}
0: Just update BIOS with new file, don’t update DMI variables.
1: Just update DMI variables, keep ROM BIOS as before.
2: Update BIOS, merge ROM DMI variables with command line(default).
3: Update BIOS, merge image variables with command line.
/noflash Perform all steps that do not update the flash part
/p Production mode (minimize messages and delays)
/pfaefv:filename Loads and runs PFAE modules in specified volume file
/raw:uuid:filename Replace the RAW module content.
/remote2 Execute WinFlash without GUI, allowing other applications or other computers to call WinFlash.
/ro[=name] Read contents of flash part and save to a file.
/v Verify each block after programming it.
/vcpu:filename Update variable size CPU micocode
/vbl Show warning for Microsoft Bitlocker
/sm Skip all WinFlash messages
/swm Skip all WinFlash warning messages
/sd Skip BIOS date check.
/sn Skip BIOS part number check.
/sp Skip BIOS product code check.
/sv Skip BIOS version check.
/svs Skip BIOS same version check.
/sa Skip all BIOS checks.
/slp:filename Replace SLP marker (bin size=182 octets)
/spu:filename Replace SLP pubkey (bin size=156 octets)
/ss Use current SLP
bios.cap file is only required for the recovery mode, allowing the machine to boot up loading a temporal bios from the bios.cap file instead from the motherboard flash.
I would try the flasher from your laptop official drivers/bios updates page.
however if the older update is already a wph file, it should work fine with winflash.
if you are trying to flash a older version, try the /v and /svs parameters
Quote:Phoenix WinFlash for UEFI Command Options
This section lists WinFlash command options and parameters.
Syntax
WINFLASH [options] [romfile] [@rspfile]
romfile The new BIOS image name, eg: BIOS.FD
@rspfile The response file (PFLASH.RSP by default) contains all command parameters in text format.
/? or /help or /h Displays help screen
/all Flash the entire image including the descriptor region
/bak:filename Backup ROM to a file.
/bbl Program the boot block. By default, bootblock is not updated.
/bios Flash the BIOS region
/cs Verify BIOS.FD image checksum
/cvar Clear variables
/console Console mode (only progress bar)
/desc Flash the descriptor the region
/dmctring Specify chassis manufacturer DMI string
/dmmtring Specify motherboard manufacturer DMI string
/dmstring Specify system manufacturer DMI string
/dpctring Specify chassis asset tag number
/dpmtring Specify motherboard product ID DMI string
/dpstring Specify system product ID DMI string
/dsctring Specify chassis serial number DMI string
/dsmtring Specify motherboard serial number DMI string
/dsstring Specify system serial number DMI string
/dustring Specify UUID DMI string
/dvctring Specify chassis version DMI string
/dvmtring Specify motherboard version DMI string
/dvstring Specify system version DMI string
/ec Flash the EC region
/exit Exit without rebooting
/gbe Flash the GbE region
/hash ??
/ls Reserve logos in BIOS ROM
/logo:imagefile Replace the BIOS logo with an imagefile in jpeg or bmp format. * forsaken123 Flash the ME region
/mfg Manufacturing mode. Automatically reboots without the need for pressing a key.
/mod:filename Updates the module in the BIOS with the module contained in the file (such as /MOD:vga.ffs); the rest of the BIOS image remains unchanged.
/mode=n Specify dmi mode n = {0, 1, 2, 3}
0: Just update BIOS with new file, don’t update DMI variables.
1: Just update DMI variables, keep ROM BIOS as before.
2: Update BIOS, merge ROM DMI variables with command line(default).
3: Update BIOS, merge image variables with command line.
/noflash Perform all steps that do not update the flash part
/p Production mode (minimize messages and delays)
/pfaefv:filename Loads and runs PFAE modules in specified volume file
/raw:uuid:filename Replace the RAW module content.
/remote2 Execute WinFlash without GUI, allowing other applications or other computers to call WinFlash.
/ro[=name] Read contents of flash part and save to a file.
/v Verify each block after programming it.
/vcpu:filename Update variable size CPU micocode
/vbl Show warning for Microsoft Bitlocker
/sm Skip all WinFlash messages
/swm Skip all WinFlash warning messages
/sd Skip BIOS date check.
/sn Skip BIOS part number check.
/sp Skip BIOS product code check.
/sv Skip BIOS version check.
/svs Skip BIOS same version check.
/sa Skip all BIOS checks.
/slp:filename Replace SLP marker (bin size=182 octets)
/spu:filename Replace SLP pubkey (bin size=156 octets)
/ss Use current SLP
Posts: 523
Threads: 0
Joined: Aug 2011
Reputation:
23
what was exactly the update procedure for your system?
I mean, when updating to a newer bios, did winflash appear in the proccess?
well, you can add some other parameters, that may skip some bios checks, but its better to ensure you are doing it exactly like the normal update proccess, try flash the current or latest bios for your system, and while updating, check the command line/parameters and apps wich use it by checking the taskmanager, thats how I found my bios parameters and flasher.
I got the flasher from windows temporal files when I was doing a official update
04-11-2014, 01:38 AM (This post was last modified: 04-11-2014, 03:32 AM by forsaken123.)
the orginial bios is a installer, it extract itself to c:\bios then runs a file called swbios.exe which creates a temp folder in windows with winflash and the bios.wph, the default.rsp contains this parameters: /sd /force /silent /ipf bios ec /bkfp /file 65CN21WW.WPH adn the winflasher that is used is
This is the files to my Current bios: Command line for current Bios in default.rsp: /sd /sn /force bkfp bkoa3 /ipf bios ec /file 65CN99WW.cap
pretty much exact same thing i did but automaticly, there is no cmdprmpt showing only the winflash window in the post above, however if im right its gives me the same error as when using dosflash.exe in dos, "ERROR 233 - Only secured capsule is allowed on a SecureFlash system! Status = 1"
I see now also that the files differ from eachother, however the 65cn99ww did just fine when it flashed for the first time, could it be if the 65cn21ww.wph was converted into .cap or .bin it could work?
did a cmdprmpt with the winflash32.exe and found this with the cmd -help:
Currentbios winflash64.exe -help parameters
(04-10-2014, 04:40 PM)kasar Wrote: what was exactly the update procedure for your system?
I mean, when updating to a newer bios, did winflash appear in the proccess?
well, you can add some other parameters, that may skip some bios checks, but its better to ensure you are doing it exactly like the normal update proccess, try flash the current or latest bios for your system, and while updating, check the command line/parameters and apps wich use it by checking the taskmanager, thats how I found my bios parameters and flasher.
I got the flasher from windows temporal files when I was doing a official update
Posts: 81
Threads: 0
Joined: Jun 2012
Reputation:
11
04-12-2014, 02:31 PM (This post was last modified: 04-13-2014, 06:31 AM by kasar.)
@forsaken123
so, they switched from wph to cap after some updates, not sure if rename the file will work, so its better keep with its original software and method per each version for now.
well, relating the parameters, I wasnt just talking about the ones inside the rsp files.
that post describes the very first step for bios the L502X, first steps were obiusly extract the flasher and bios out from the exe package, and also get the flashing parameters, I acomplished this by tweak the taskmgr settings and watching the paths and folders.
its posible that it start the app with hidden or custom parameters. keep an eye on task manager after doing stuff.
@Brabbelbla
this is how mine looks
Code:
Intel (R) Flash Programming Tool. Version: 8.1.10.1286
Copyright (c) 2007 - 2012, Intel Corporation. All rights reserved.
they became 0xFF when I did the descriptor mod when desoldering the chip, changing those bytes, and soldering back, that allowed software read and write.
I was expecting that option you unlocked would also unlock those settings.
sadly it didnt worked as expected >.<
well, I dont know how those values should look after just bypass the descriptor, maybe bypassing the descriptor just bypass those settings, and even they still the same, you are able to dump or flash stuff. idk
in my case I didnt bypassed the descritor, I just altered the settings to let me do stuff.
what is also this command output for you?
Code:
fptw64.exe -D total_backup.rom
the -D parameter specify to create a dump, since no -ME or other flash part specified, it will backup the whole chip into the total_backup.rom file.
try also dump the ME region to a file
Code:
fptw64.exe -ME -D ME_backup.rom
and the descriptor
Code:
fptw64.exe -DESC -D descriptor.rom
if you are able to get a descriptor dump, then just get a hex editor, and look for this HEX string
00 00 0B 0A 00 00 0D 0C 18 01 08
then change it to
00 00 FF FF 00 00 FF FF 18 01 08
that should unlock your settings.
now the tricky part would be flash your modded descriptor.
Code:
fptw64.exe -DESC -F modded_descriptor.rom
with a normal locked descriptor this command would get some kind of access denied reply.
however, there would be a chance it would work with that bios option enabled. who knows if maybe that works .. ^^
@all
I has been away for some time on other projects, but I plan to relase a newer bios mod for the L502X wich all the new researchs that has been made here.
did you guys hex modded more the bios after this?
that is the last I did relating raid options, not sure if those options work anyway.
I also made some more unlocks at the advanced security menus, unlocking asset tag edit and the ability to disable or enable computrace after the initial settings.
however didnt touched any raid stuff, what would be the list of changes needed in order to get raid working?
I noticed lot of people interested in raid option at the NBR forums, so it would be another nice addon to the modded bios
Posts: 81
Threads: 0
Joined: Jun 2012
Reputation:
11
04-13-2014, 04:34 AM (This post was last modified: 04-13-2014, 04:49 AM by Brabbelbla.)
@kasar
Tried the fpt stuff, unfortunately it didn't work. Read access only to the descriptor, no write access. Enabling/disabling the Flash Controller Lock doesn't change that. Question remains: what does it do? No idea.
About the RAID, this post http://www.bios-mods.com/forum/Thread-UE...4#pid67504 did the trick. The unlocked settings only control your options once in the OROM. @follow_me offered to test, he said it works for a legacy setup and he was going to try a TRIM modified version.
Basically the tricky part is the boot entry. I have only tested with the RAID OROM enabled, but without a RAID volume created. The hard drives then report as (still separate) SCSI devices behind a RAID controller. With a modified UEFI shell with bcfg you have to add the device path of your RAID volumes as boot options. Legacy boot works, and I could get into UEFI Clover too. So as far as I can tell UEFI boot works, but @follow_me said that with an actual RAID volume it does not, so I don't know about it. You will need precautions (recovery disk, as first boot option) any way if you plan to UEFI boot Windows or Linux under RAID, both have the risk of [censored] up the boot entries and as you just created a RAID array, your drives are empty and you won't have a backup OS to boot to. Maybe I will get to test it sometime soon, until then and anyway for TRIM we have to wait for follow_me.
Posts: 523
Threads: 0
Joined: Aug 2011
Reputation:
23
04-13-2014, 06:58 AM (This post was last modified: 04-13-2014, 11:15 AM by kasar.)
@Brabbelbla
well, then yeah, the question is what flash controller lock option does if the flash still locked to software.
another guess, is that, with a locked descriptor,I think you are not able to flash anything to bios either, but, if you use the uefi flasher, it boot into a mode and is able to flash stuff from there.
there would be some options maybe in order to unlock descriptor:
- rework our current bios wph files, and include a modded descriptor , and then force winflash to flash it by adding some parameter?
- getting another software different than winflash to reboot the machine in flashing mode, and flash from there.
- flash from uefi shell, I noticed timewalker said he was able to flash the bios from the uefi shell, dont know exactly how but he did.
If we can find a "software" way to unlock or flash a modded descriptor, it would be nice, because not all users like to pick a soldering iron and bridge pins or desolder chips and program them externally
mmm, as far I undestood in the post you linked, you edited one of the options, ATA, to be "RAI"D (the D were removed due original ATA had only 3 characters and the file size would differ.)
so ide is value 0, ahci is 1, and raid is 2, nice find
in my case I cant test the raid setting with disks because I just have two disks on my laptop, and one is OS and other works as DATA, this is my main machine and I cant [censored] the data on those hard disks, so even RAID can be usefull, I would not be interested for myself, but having the option to enable it would be nice and other users would have the benefict of get it working (they keep asking for it at the nbr forums hehe)
well, my last question is:
how we can add the raid option without [censored] the ATA option?
I mean, to have 3 options and also have RAID instead just "RAI", something like:
by modifiing that directly, that would change of course the module size, wich is not allways good, I know the tool we use to extract it have an option to replace modules with bigger ones, using blank or unused space from the bigger package but even getting that to work, not sure if the rest of the module would get messed by having different addresses and stuff.
anyone know how that can be made?
we can try that meanwhile we wait for @follow_me input
however now I woulnt know about the strings part correct
edit: well, I know it will probably not work, but well, I have enough recovery options , yesterday the system bricked itself even not touchng anything related bios modding in months, and the system refused to power on by getting black screen and making loud fan noises, the fix were reprogram externally the chip with the programer and it got fixed, the funny part is that it screwed itself, I was just playing games on dolphin emulator before restart lol
well, I will try flashing that modded module now and report results.
EDIT2: nope, didnt worked, the entire advanced tab dissapeared from the setup menus
Posts: 81
Threads: 0
Joined: Jun 2012
Reputation:
11
04-13-2014, 09:48 AM (This post was last modified: 04-13-2014, 05:59 PM by Brabbelbla.)
I think inserting another option goes beyond our knowledge at the moment. Probably this is what jkbuha once meant, but I haven't seen it being done anywhere. So I don't know. I guess there will be many places where the size of some part of the module is stated. The PE header, maaany other different places.
What you could do relatively easily is sacrifice some other useless option (to me ATA mode is, but maybe people want to use some really old OS). For instance... adapter warnings. Then you can't disable those anymore, cry cry. Or maybe even more useless... express charge. Hidden by default and why the heck would anyone want to disable it? Anyway, as long it is on the same form, this is easy. I don't believe there are any size checks to bother you within the same form or even within the formset, only for individual statements and the formset a whole. So you just move the option to SATA Operation, give it the correct value and change the text string belonging to the original option.
Btw, the IFR extractor doesn't like zeroes being inserted in the IFR part. Haven't tested such a module but guess it doesn't work. So you have to make sure the IFR structure has the same size while not containing zeroes.
EDIT: Alright, that works. I moved RPB Baudrate option 9600 (pretty useless) to SATA Operation and edited the text string accordingly. So, as long as you are on the same formset, you are free to move anything.
Posts: 88
Threads: 0
Joined: Feb 2013
Reputation:
6
Is there any way to load custom uefi driver (replace some existing one) at system boot ?
I've tried to replace some unsed drivers like the one for flash chip I dont have , but driver isn't loaded at starup
My idea is to load ffs driver and/or, if possible, add a custom proxy driver that would be loaded at boot time and will provide features like autoadd boot menu entries, load fs drivers, patch acpi tables etc