Solved

programming BIOS Memory access

Posted on 1998-06-01
5
187 Views
Last Modified: 2010-04-27
How can I access physical memory above 1meg in an adapter BIOS that I am writing?  I need to access physical memory address like 0xE0000000.
0
Comment
Question by:eby
5 Comments
 
LVL 10

Expert Comment

by:rbr
Comment Utility
Which OS and in which language?
0
 
LVL 32

Expert Comment

by:jhance
Comment Utility
Under MSDOS, you need to get the processor into protected mode to be able to access memory above 1MEG.  The usual method is to use a DOS extender that supports DPMI or VCPI.  

Under Win95, you run into the protected memory problem.  You need to map ask Windows to map the physical address space to your process.  Another approach is to use a VxD virtual device driver which runs as a protected process and has free access to any memory location.

Under NT, you probably need to write a device driver to do wht you want.


0
 

Author Comment

by:eby
Comment Utility
The question does not involve any OS.  The question was specifice to BIOS usage.  More clearly BIOS ROM.  More specific; PCI BIOS.
0
 
LVL 32

Accepted Solution

by:
jhance earned 140 total points
Comment Utility
The BIOS runs in real-mode.  As such, you will have no way to access a ROM which has been located above 1MEG.  This is why the space between 640K and 1MEG is so precious.  It's the only place where you can locate a ROM and get it to run at power on.  If you have to have more space, a common practice is to place a "bootstrap" in the < 1MEG region for you adapter to catch the POST (Power on Self Test) search for an adapter BIOS and then have your BIOS extension switch to protected mode and map the ROM BIOS to a 32-bit address.  Since you're running outside the context of a 32-bit environment, you have to build everything yourself to support protected mode.
0
 

Expert Comment

by:zealsoft
Comment Utility
Under Windows 9x/NT/2000, you can use MemAccess Library(http://www.zealsoftstudio.com/memaccess/) to access the momory and PCI BIOS.
0

Featured Post

How your wiki can always stay up-to-date

Quip doubles as a “living” wiki and a project management tool that evolves with your organization. As you finish projects in Quip, the work remains, easily accessible to all team members, new and old.
- Increase transparency
- Onboard new hires faster
- Access from mobile/offline

Join & Write a Comment

We recently endured a series of broadcast storms that caused our ISP to shut us down for brief periods of time. After going through a multitude of tests, we determined that the issue was related to Intel NIC drivers on some new HP desktop computers …
Moving your enterprise fax infrastructure from in-house fax machines and servers to the cloud makes sense — from both an efficiency and productivity standpoint. But does migrating to a cloud fax solution mean you will no longer be able to send or re…
It is a freely distributed piece of software for such tasks as photo retouching, image composition and image authoring. It works on many operating systems, in many languages.
This video shows how to remove a single email address from the Outlook 2010 Auto Suggestion memory. NOTE: For Outlook 2016 and 2013 perform the exact same steps. Open a new email: Click the New email button in Outlook. Start typing the address: …

763 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

Need Help in Real-Time?

Connect with top rated Experts

8 Experts available now in Live!

Get 1:1 Help Now