Changeset 262 in xtideuniversalbios for trunk/XTIDE_Universal_BIOS/Src/Boot


Ignore:
Timestamp:
Feb 24, 2012, 10:28:31 AM (13 years ago)
Author:
gregli@…
google:author:
gregli@hotmail.com
Message:

More optimizations. Merged RamVars_IsFunction/DriveHandledByThisBIOS in with FindDPT_ForDriveNumber, since they are often used together, making a returned NULL DI pointer indicate a foreign drive in many places. Revamped the iteration done in the handlers for int13/0dh and int13h/0h. Added serial specific print string during drive detection.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/XTIDE_Universal_BIOS/Src/Boot/BootMenuPrint.asm

    r259 r262  
    2323    mov     bp, sp
    2424
    25     call    RamVars_IsDriveHandledByThisBIOS_And_FindDPT_ForDriveNumber
     25    call    FindDPT_ForDriveNumberInDL
    2626    jc      .notOurs
    2727
     
    111111    mov     si, g_szCapacity                            ; Setup print string now, carries through to print call
    112112
    113     xor     di, di                                      ; Zero DI for checks for our drive later on
    114     call    RamVars_IsDriveHandledByThisBIOS_And_FindDPT_ForDriveNumber
    115 
    116     test    dl, dl                                      ; are we a hard disk?
    117     js      BootMenuPrint_HardDiskRefreshInformation   
    118 
    119     test    di, di
    120     jnz     .ours                                       ; Based on CF from RamVars_IsDriveHandledByThisBIOS above
     113    call    FindDPT_ForDriveNumberInDL
     114
     115    inc     dl                                          ; are we a hard disk?
     116    dec     dl                                          ; inc/dec will set SF, without modifying CF or DL
     117    js      .HardDiskRefreshInformation
     118
     119    jnc     .ours                                       ; Based on CF from FindDPT_ForDriveNumberInDL above
    121120    call    FloppyDrive_GetType                         ; Get Floppy Drive type to BX
    122121    jmp     .around
     
    190189;--------------------------------------------------------------------
    191190ALIGN JUMP_ALIGN
    192 BootMenuPrint_HardDiskRefreshInformation:       
    193     test    di, di
    194     jz      .HardDiskMenuitemInfoForForeignDrive       
     191.HardDiskRefreshInformation:       
     192    jc      .HardDiskMenuitemInfoForForeignDrive        ; Based on CF from FindDPT_ForDriveNumberInDL (way) above
    195193
    196194.HardDiskMenuitemInfoForOurDrive:
    197     ePUSH_T ax, g_szInformation                     ; Add substring for our hard disk information
    198     call    BootMenuInfo_GetTotalSectorCount        ; Get Total LBA Size
     195    ePUSH_T ax, g_szInformation                         ; Add substring for our hard disk information
     196    call    BootMenuInfo_GetTotalSectorCount            ; Get Total LBA Size
    199197    jmp     .ConvertSectorCountInBXDXAXtoSizeAndPushForFormat
    200198       
Note: See TracChangeset for help on using the changeset viewer.