Rev 3999 | Rev 4624 | Go to most recent revision | Show entire file | Regard whitespace | Details | Blame | Last modification | View Log | RSS feed
Rev 3999 | Rev 4291 | ||
---|---|---|---|
Line 9... | Line 9... | ||
9 | ;; KolibriOS 16-bit loader, ;; |
9 | ;; KolibriOS 16-bit loader, ;; |
10 | ;; based on bootcode for MenuetOS ;; |
10 | ;; based on bootcode for MenuetOS ;; |
11 | ;; ;; |
11 | ;; ;; |
12 | ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; |
12 | ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; |
Line 13... | Line 13... | ||
13 | 13 | ||
Line 14... | Line 14... | ||
14 | $Revision: 3999 $ |
14 | $Revision: 4291 $ |
15 | 15 | ||
16 | 16 | ||
Line 430... | Line 430... | ||
430 | mov ax, 0xB103 |
430 | mov ax, 0xB103 |
431 | mov ecx, 1*10000h + 1*100h + 0x8f |
431 | mov ecx, 1*10000h + 1*100h + 0x8f |
432 | mov [es:BOOT_IDE_PI_16], cx |
432 | mov [es:BOOT_IDE_PI_16], cx |
433 | xor si, si ; device index = 0 |
433 | xor si, si ; device index = 0 |
434 | int 0x1A |
434 | int 0x1A |
435 | jnc .found |
435 | jnc .found_1 |
436 | ; c) class 1, subclass 1, programming interface 0x85 |
436 | ; c) class 1, subclass 1, programming interface 0x85 |
437 | mov ax, 0xB103 |
437 | mov ax, 0xB103 |
438 | mov ecx, 1*10000h + 1*100h + 0x85 |
438 | mov ecx, 1*10000h + 1*100h + 0x85 |
439 | mov [es:BOOT_IDE_PI_16], cx |
439 | mov [es:BOOT_IDE_PI_16], cx |
440 | xor si, si ; device index = 0 |
440 | xor si, si ; device index = 0 |
441 | int 0x1A |
441 | int 0x1A |
442 | jnc .found |
442 | jnc .found_1 |
443 | ; d) class 1, subclass 1, programming interface 0x8A |
443 | ; d) class 1, subclass 1, programming interface 0x8A |
444 | ; This is a Parallel IDE Controller which uses IRQs 14 and 15. |
444 | ; This is a Parallel IDE Controller which uses IRQs 14 and 15. |
445 | mov ax, 0xB103 |
445 | mov ax, 0xB103 |
446 | mov ecx, 1*10000h + 1*100h + 0x8A |
446 | mov ecx, 1*10000h + 1*100h + 0x8A |
447 | mov [es:BOOT_IDE_PI_16], cx |
447 | mov [es:BOOT_IDE_PI_16], cx |
448 | xor si, si ; device index = 0 |
448 | xor si, si ; device index = 0 |
449 | int 0x1A |
449 | int 0x1A |
450 | jnc .found ; Parallel IDE Controller |
450 | jnc .found_1 ; Parallel IDE Controller |
451 | ; Controller not found! |
451 | ; Controller not found! |
452 | xor ax, ax |
452 | xor ax, ax |
453 | mov [es:BOOT_IDE_PI_16], ax |
453 | mov [es:BOOT_IDE_PI_16], ax |
454 | jmp .nopci |
454 | jmp .nopci |
455 | ;-------------------------------------- |
455 | ;-------------------------------------- |