flat assembler
Message board for the users of flat assembler.
![]() |
Author |
|
zhak 24 Mar 2010, 14:34
Int 0x13 Fn 0x25 - Identify Device.
DL = drive number (80h,81h) ES:BX - 512 byte buffer for reply packet but this function is optional... will try it if it works on my PCs when i arrive home, and also if it works for all drive numbers, not only 0x80 and 0x81 edit: seems like EDD-4 defines this function as mandatory |
|||
![]() |
|
zhak 04 Apr 2010, 18:39
this function didn't work on all pcs i tried. moreover, function 48h doesn't return extended information (above offset 30 in the Resul Buffer as specified in EDD spec.). bios doesn't assign a number to optical drives unless user boots from cd in no-emulation mode... my verdict - bios sucks!
|
|||
![]() |
|
revolution 04 Apr 2010, 18:46
zhak: I think you are expecting too much from the BIOS. The 'B' really does mean what the letter stands for.
![]() Once you have you boot code loaded and running the job of the BIOS is mostly done. From that point on your code is expected to find devices and things on its own. |
|||
![]() |
|
Mac2004 20 Sep 2010, 15:37
@revolution: You got it right. In order to get the proper information one needs
to use low level methods. Regards Mac2004 |
|||
![]() |
|
cod3b453 20 Sep 2010, 17:21
I'm in the process of adding scanning for basic devices to my loader stage and found that BIOS', in general, will only return hard disks mapped to PATA ports.
I came across the EDD a while ago too and found that some BIOS' would only fill either the EDD or the xPath information - you can reconstruct one from the other in some cases. If your OS is going to run 32/64bit protected mode, you might as well write as much of it yourself as possible for reuse. |
|||
![]() |
|
egos 20 Sep 2010, 19:27
zhak wrote: function 48h doesn't return extended information (above offset 30 in the Resul Buffer as specified in EDD spec.). It does but only for new PCs. DPTE was introduced in v2. You can get port numbers from it, scan PCI for IDE controllers and check BARs of both channels. _________________ If you have seen bad English in my words, tell me what's wrong, please. |
|||
![]() |
|
< Last Thread | Next Thread > |
Forum Rules:
|
Copyright © 1999-2025, Tomasz Grysztar. Also on GitHub, YouTube.
Website powered by rwasa.