Solved

Accessing BIOS NVRAM ?

Posted on 2006-07-13
7
870 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
[X]
Welcome to Experts Exchange

Add your voice to the tech community where 5M+ people just like you are talking about what matters.

  • Help others & share knowledge
  • Earn cash & points
  • Learn & ask questions
  • 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

On Demand Webinar - Networking for the Cloud Era

This webinar discusses:
-Common barriers companies experience when moving to the cloud
-How SD-WAN changes the way we look at networks
-Best practices customers should employ moving forward with cloud migration
-What happens behind the scenes of SteelConnect’s one-click button

Question has a verified solution.

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

Setting up SVN Server using Windows and Apache Purpose of the document:       This article will explain the process of how to configure SVN repository in a windows environment using APACHE web server. What is SVN? (http://subversion.tigris.org/) …
Exception Handling is in the core of any application that is able to dignify its name. In this article, I'll guide you through the process of writing a DRY (Don't Repeat Yourself) Exception Handling mechanism, using Aspect Oriented Programming.
Are you ready to implement Active Directory best practices without reading 300+ pages? You're in luck. In this webinar hosted by Skyport Systems, you gain insight into Microsoft's latest comprehensive guide, with tips on the best and easiest way…

710 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