How to get access to bios data from Win98?

Only for programmers and BIOS gurus with technical questions.
Post Reply
New visitors - please read the rules.
Posts: 2
Joined: Thu Oct 24, 2002 5:41 am

I have a computer which has BIOS settings to wake up on date specified. I can set day, hour, min and sec of wake-up then I interrupt boot process pressing <del>.

I want to set this setting from Windows98SE. So I have some questions.

1. I think this data is stored in CMOS but which range of memory in?

2. How can I get information about this range of memory with the help of functions Win API and set data what I need?

3. How can I get information about this range of memory with the help of MS debugger from command prompt and set data what I need (is there interrupt functions for access and will they work from Win98)?

I'll be glad for any advice and links on tech documentation.

best regards.
Master Flasher
Posts: 173
Joined: Sun Mar 31, 2002 2:08 pm
Location: Taka Bonerate National Park, Indonesia

I've been working with the cmos but in Win2K. In this OS I gotta make a device driver with a companion software to do the probing and patching the cmos contents :(. Anyway the chip itself located in port 70h and 71h where port 70h is the address (control) port and 71h is the data port. From windows itself you can use the WRITE_PORT_UCHAR(...) API to access it (This function found in win2K ddk, but I'm sure it must be available in win98 ddk too), anyway windows 98 is much more easier to deal with, once I've made a win32 asm program to access my mobo chipset and it works just fine, not like in win2K which is full of protection mechanism. I really sorry, I got no online sources for this, but for the win32asm you'd better go to http:\\ and for the API, you'd better find the documentation of win98DDK (I can't find this stuff after looking for it for long time :( ). Here's some description of my own similar prog in win2K:
1. The interface to interact w/ the hardware is a simple win2K device driver. Written in mixed C and asm codes, the asm codes is a replacement for the WRITE_PORT_UCHAR(..), WRITE_PORT_USHORT(..),and WRITE_PORT_ULONG(..) WIN2K driver APIs, they're much more better and versatile than the API I've mention.
2. The user interface is an ordinary windows software written in Visual C++ that communicate with the driver to poke around my PC's hardware. :)
I hope this will help you :)
Post Reply