Rev 388 | Go to most recent revision | Show entire file | Regard whitespace | Details | Blame | Last modification | View Log | RSS feed
Rev 388 | Rev 413 | ||
---|---|---|---|
Line 214... | Line 214... | ||
214 | movzx esp, sp |
214 | movzx esp, sp |
Line 215... | Line 215... | ||
215 | 215 | ||
216 | push 0 |
216 | push 0 |
217 | pop es |
217 | pop es |
- | 218 | and word [es:0x9031], 0 |
|
- | 219 | ; \begin{Mario79} |
|
- | 220 | ; find HDD IDE DMA PCI device |
|
218 | and word [es:0x9031], 0 |
221 | ; check for PCI BIOS |
219 | mov ax, 0xB101 |
222 | mov ax, 0xB101 |
220 | int 0x1A |
223 | int 0x1A |
221 | jc .nopci |
224 | jc .nopci |
222 | cmp edx, 'PCI ' |
225 | cmp edx, 'PCI ' |
- | 226 | jnz .nopci |
|
- | 227 | ; find PCI class code |
|
- | 228 | ; class 1 = mass storage |
|
- | 229 | ; subclass 1 = IDE controller |
|
223 | jnz .nopci |
230 | ; a) class 1, subclass 1, programming interface 0x80 |
224 | mov ax, 0xB103 |
231 | mov ax, 0xB103 |
225 | mov ecx, 1*10000h + 1*100h + 0x80 |
232 | mov ecx, 1*10000h + 1*100h + 0x80 |
226 | mov si, 0 ; device index = 0 |
233 | mov si, 0 ; device index = 0 |
227 | int 0x1A |
234 | int 0x1A |