Solved

Accessing BIOS NVRAM ?

Posted on 2006-07-13
7
860 Views
Last Modified: 2013-11-12
Does anyone know how to access BIOS NVRAM address space?
I believe it can be done in 'Ring 0' but I'm not sure how.
I want to be able to modify a few bytes using VB6 and TVicHW52 . I'm running WIN98se.

Any help greatly appreciated.
0
Comment
Question by:aztarac
  • 2
7 Comments
 
LVL 9

Expert Comment

by:Rob_Jeffrey
ID: 17155368
0
 

Author Comment

by:aztarac
ID: 17155787
I looked at that thread before I posted my question.

The 'accepted answer' does state that the way to write is not known.

The following Microsoft link for Bios writers may offer some clues...but I dont understand it:

>Writing to CMOS NVRAM
>BIOS code should write to CMOS NVRAM by generating a system management interrupt (SMI). AML code can generate a SMI by writing a specific value to the SMI command port. AML code can pass the CMOS offset and value to be written through the NVRAM memory operation region. The BIOS SMI handles the writes to CMOS, and also updates the memory area pointed by the CMRM operation region to reflect the correct CMOS contents.

Full text:
http://www.microsoft.com/whdc/system/pnppwr/powermgmt/BIOSAML.mspx

I'm still hoping for a solution:(

0
 
LVL 9

Accepted Solution

by:
Rob_Jeffrey earned 250 total points
ID: 17156373
Right - missed that.  
Sorry - I simply skimmed over the body.

Unless you want to get into device driver (DDK) devekopment - it doesn't look easy.
The entire problem is - viruses.  Because some lousy people have written some pretty nasty things in the past there is a lot of hidden and proprietary information regarding the NVRAM these days.

What is it you are trying to do?  Perhaps we can come at it from another angle?
0
 
LVL 49

Assisted Solution

by:DanRollins
DanRollins earned 250 total points
ID: 17330346
You may be able to install a device drive that will allow access to I/O ports.  Here's one:
    http://www.driverlinx.com/DownLoad/DlPortIO.htm

This article appears to be on point:
    Pop Open a Privileged Set of APIs with Windows NT Kernel Mode Drivers
    http://www.microsoft.com/msj/0398/driver.aspx

But I agree with Rob_Jeffrey:  If you describe your ultimate goal, it might be possible to find a way to avoid this low-level grunging.  Whenever there is a legitimate need for standard programs to access low-level resources, there is often an more direct way to do it.  So what's on your mind?

-- Dan
0

Featured Post

Networking for the Cloud Era

Join Microsoft and Riverbed for a discussion and demonstration of enhancements to SteelConnect:
-One-click orchestration and cloud connectivity in Azure environments
-Tight integration of SD-WAN and WAN optimization capabilities
-Scalability and resiliency equal to a data center

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Dependencies in Software Design In software development, the idea of dependencies (http://en.wikipedia.org/wiki/Coupling_%28computer_programming%29) is an issue of some importance. This article seeks to explain what dependencies are and where they …
Introduction This question got me thinking... (http://www.experts-exchange.com/questions/28707487/GLOBALS.html) Why shouldn't we use Globals? This is a simple question without a simple answer.  How do you explain these concepts to a programmer w…
Two types of users will appreciate AOMEI Backupper Pro: 1 - Those with PCIe drives (and haven't found cloning software that works on them). 2 - Those who want a fast clone of their boot drive (no re-boots needed) and it can clone your drive wh…

809 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question