[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: CDROM access broken?
From: |
Yoshinori K. Okuji |
Subject: |
Re: CDROM access broken? |
Date: |
Mon, 5 Jul 2004 13:29:50 +0200 |
User-agent: |
KMail/1.6.1 |
On Monday 05 July 2004 10:11, Robert Millan wrote:
> I know how BIOSes basicaly work, but I don't have much idea. If you
> tell me what I should try or give me some clue, I'll be glad to help.
In this context, BIOS is just an implementation of an API. It's not very
different from using a C library in a sense. So if you can write a
normal program, you have no barrier to learn how to use BIOS. I'd
recommend you looking at Ralf Brown's Interrupt List. It's available
freely online in many different formats (such as plain text and html).
When something does not work with BIOS very well, there are two
possibilities:
1. The BIOS does not implement the API correctly (this is frequent).
2. GRUB does not use the API correctly.
Basically, GRUB is less buggy than BIOS, but you should not trust GRUB's
source code too much. In fact, we have an experince that there was a
bug related to LBA BIOS calls which hadn't been found for more than two
years.
So, check if GRUB uses the API correctly first. If so, check what your
BIOS returns to GRUB. Then, you will get some ideas. If you don't see
what is wrong, feel free to ask me how to interpret what BIOS does.
For checking, there is no great way to debug things: Read the source
code very carefully, insert grub_printf or something into the source
code, watch what GRUB says, add more debug messages, test it, add more,
test it again, try to fix it, test it again....
Okuji