source: xtideuniversalbios/trunk/XTIDE_Universal_BIOS/Src/Handlers/Int13h/AH25h_HDrvID.asm @ 150

Last change on this file since 150 was 150, checked in by aitotat, 13 years ago

Changes to XTIDE Universal BIOS:

  • Redesigned Disk Parameter Tables.
  • Code generalizations for supporting non-IDE devices in the future.
File size: 1.0 KB
RevLine 
[88]1; Project name  :   XTIDE Universal BIOS
[3]2; Description   :   Int 13h function AH=25h, Get Drive Information.
3
4; Section containing code
5SECTION .text
6
7;--------------------------------------------------------------------
8; Int 13h function AH=25h, Get Drive Information.
9;
10; AH25h_HandlerForGetDriveInformation
11;   Parameters:
[148]12;       ES:     Same as in INTPACK
13;       DL:     Translated Drive number
14;       DS:DI:  Ptr to DPT (in RAMVARS segment)
[150]15;       SS:BP:  Ptr to IDEPACK
16;   Parameters on INTPACK:
[3]17;       ES:BX:  Ptr to buffer to receive 512-byte drive information
[150]18;   Returns with INTPACK:
[3]19;       AH:     Int 13h return status
20;       CF:     0 if succesfull, 1 if error
21;--------------------------------------------------------------------
22ALIGN JUMP_ALIGN
23AH25h_HandlerForGetDriveInformation:
[150]24    push    bp
[3]25
[150]26    mov     si, [bp+IDEPACK.intpack+INTPACK.bx]
27    call    AccessDPT_GetDriveSelectByteToAL
28    mov     bh, al
29    eMOVZX  ax, BYTE [di+DPT.bIdevarsOffset]
30    xchg    bp, ax
31    call    Device_IdentifyToBufferInESSIwithDriveSelectByteInBH
32
33    pop     bp
[148]34    jmp     Int13h_ReturnFromHandlerAfterStoringErrorCodeFromAH
Note: See TracBrowser for help on using the repository browser.