Changeset 568 in xtideuniversalbios for trunk/Assembly_Library/Src/Menu/Dialog


Ignore:
Timestamp:
Dec 21, 2014, 5:37:53 PM (10 years ago)
Author:
krille_n_@…
google:author:
krille_n_@hotmail.com
Message:

Changes:

  • SerDrive: Using named pipe mode (serdrive -p) now works under Windows XP/2000/Server 2003.
  • checksum.pl: Added a compatibility fix for 3Com 3C503 cards.
  • XTIDECFG will now scan every possible segment address to find and load the BIOS and/or its settings from EEPROM. This should simplify things for people using combined option ROMs.
  • Fixed a bug from r521 in BootSector.asm where the BIOS would not display a timeout error if it failed to load the boot sector from harddrive.
  • Fixed a bug from r541 in CompatibleDPT.asm where CompatibleDPT_CreateDeviceParameterTableExtensionToESBXfromDPTinDSSI would generate an invalid checksum in the DPTE.
  • Optimizations and other fixes.
Location:
trunk/Assembly_Library/Src/Menu/Dialog
Files:
3 edited

Legend:

Unmodified
Added
Removed
  • trunk/Assembly_Library/Src/Menu/Dialog/DialogFile.asm

    r526 r568  
    623623    mov     cx, STRING_DIALOG_IO_size
    624624    call    Memory_ReserveCXbytesFromStackToDSSI
    625     call    .InitializeStringDialogIoInDSSIforInputtingFileName
    626 
    627     CALL_MENU_LIBRARY GetStringWithIoInDSSI
    628     mov     al, [si+STRING_DIALOG_IO.bUserCancellation]
    629     add     sp, BYTE STRING_DIALOG_IO_size
    630     test    al, al      ; User cancellation?
    631     jnz     SHORT ReturnWithoutHandlingKeystroke
    632     jmp     CloseFileDialogAfterSuccessfulSelection
    633 
    634 ALIGN JUMP_ALIGN
    635 .InitializeStringDialogIoInDSSIforInputtingFileName:
     625
     626;;; InitializeStringDialogIoInDSSIforInputtingFileName
    636627    call    InitializeNullStringsToDialogInputInDSSI
    637628    mov     WORD [si+DIALOG_INPUT.fszTitle], g_szEnterNewFileOrDirectory
     
    642633    mov     [si+STRING_DIALOG_IO.fpReturnBuffer], ax
    643634    mov     [si+STRING_DIALOG_IO.fpReturnBuffer+2], es
    644     ret
     635;;;
     636
     637    CALL_MENU_LIBRARY GetStringWithIoInDSSI
     638    mov     al, [si+STRING_DIALOG_IO.bUserCancellation]
     639    add     sp, BYTE STRING_DIALOG_IO_size
     640    test    al, al      ; User cancellation?
     641    jnz     SHORT ReturnWithoutHandlingKeystroke
     642    jmp     CloseFileDialogAfterSuccessfulSelection
    645643
    646644
  • trunk/Assembly_Library/Src/Menu/Dialog/DialogString.asm

    r526 r568  
    9999    mov     cx, [si+STRING_DIALOG_IO.wBufferSize]
    100100    les     di, [si+STRING_DIALOG_IO.fpReturnBuffer]
    101     call    .GetCharacterFilterFunctionToDX
     101    mov     dx, [si+STRING_DIALOG_IO.fnCharFilter]
     102    test    dx, dx
     103    jnz     SHORT .CharacterFilterFunctionInDX
     104    mov     dx, Char_CharIsValid
    102105
     106.CharacterFilterFunctionInDX:
    103107    call    Keyboard_ReadUserInputtedStringToESDIWhilePrinting
    104108    jz      SHORT .UserCancellation
     
    108112.UserCancellation:
    109113    ret
    110 
    111 ;--------------------------------------------------------------------
    112 ; .GetCharacterFilterFunctionToDX
    113 ;   Parameters
    114 ;       DS:SI:  Ptr to STRING_DIALOG_IO
    115 ;       SS:BP:  Ptr to DIALOG
    116 ;   Returns:
    117 ;       CS:DX:  Ptr to character filter function
    118 ;   Corrupts registers:
    119 ;       Nothing
    120 ;--------------------------------------------------------------------
    121 ALIGN JUMP_ALIGN
    122 .GetCharacterFilterFunctionToDX:
    123     mov     dx, [si+STRING_DIALOG_IO.fnCharFilter]
    124     test    dx, dx
    125     jnz     SHORT .ReturnFilterFunctionInDX
    126     mov     dx, Char_CharIsValid
    127 ALIGN JUMP_ALIGN, ret
    128 .ReturnFilterFunctionInDX:
    129     ret
  • trunk/Assembly_Library/Src/Menu/Dialog/DialogWord.asm

    r526 r568  
    9393;       Nothing (User input stored to WORD_DIALOG_IO)
    9494;   Corrupts registers:
    95 ;       AX, BX, DX, SI, DI
     95;       AX, BX, CX, DX, SI, DI
    9696;--------------------------------------------------------------------
    9797ALIGN JUMP_ALIGN
     
    100100    eMOVZX  bx, [si+WORD_DIALOG_IO.bNumericBase]
    101101ALIGN JUMP_ALIGN
    102 .GetUserInputIntilValidOrCancelled:
     102.GetUserInputUntilValidOrCancelled:
    103103    call    Keyboard_ReadUserInputtedWordWhilePrinting
    104104    jz      SHORT .UserCancellation
     
    116116.InputtedWordNotInRange:
    117117    call    Keyboard_PlayBellForUnwantedKeystroke
    118     call    .ClearInputtedWordFromDialog
    119     jmp     SHORT .GetUserInputIntilValidOrCancelled
    120 
    121 ;--------------------------------------------------------------------
    122 ; .ClearInputtedWordFromDialog
    123 ;   Parameters
    124 ;       SS:BP:  Ptr to DIALOG
    125 ;   Returns:
    126 ;       Nothing
    127 ;   Corrupts registers:
    128 ;       AX, CX, DX, DI
    129 ;--------------------------------------------------------------------
    130 ALIGN JUMP_ALIGN
    131 .ClearInputtedWordFromDialog:
     118    ; Clear inputted word from dialog
    132119    CALL_DISPLAY_LIBRARY GetSoftwareCoordinatesToAX
    133120    xchg    dx, ax
     
    138125
    139126    xchg    ax, dx
    140     JMP_DISPLAY_LIBRARY SetCursorCoordinatesFromAX
    141 
     127    CALL_DISPLAY_LIBRARY SetCursorCoordinatesFromAX
     128    jmp     SHORT .GetUserInputUntilValidOrCancelled
Note: See TracChangeset for help on using the changeset viewer.