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
Line 
1; Project name  :   XTIDE Universal BIOS
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:
12;       ES:     Same as in INTPACK
13;       DL:     Translated Drive number
14;       DS:DI:  Ptr to DPT (in RAMVARS segment)
15;       SS:BP:  Ptr to IDEPACK
16;   Parameters on INTPACK:
17;       ES:BX:  Ptr to buffer to receive 512-byte drive information
18;   Returns with INTPACK:
19;       AH:     Int 13h return status
20;       CF:     0 if succesfull, 1 if error
21;--------------------------------------------------------------------
22ALIGN JUMP_ALIGN
23AH25h_HandlerForGetDriveInformation:
24    push    bp
25
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
34    jmp     Int13h_ReturnFromHandlerAfterStoringErrorCodeFromAH
Note: See TracBrowser for help on using the repository browser.