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


Ignore:
Timestamp:
Jun 30, 2018, 8:27:04 AM (6 years ago)
Author:
Tomi Tilli
Message:

Flashing now works again.
Hack to get Windows 95 to work properly (MODULE_WIN95_CMOS_HACK included for 386 builds by default).
Edited makefile to produce large 386 build.
Fixed recovery time for QDI Vision VLB-IDE controllers.
No more warnings with Nasm 2.13.xx and later.
File dialog now properly restores default drive when file selection is cancelled.

Location:
trunk/Assembly_Library/Src/Menu/Dialog
Files:
2 edited

Legend:

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

    r583 r593  
    3232;       AX:     Selected item
    3333;   Corrupts registers:
    34 ;       BX, CX, DX, SI, DI
     34;       BX, CX, DX, DI
    3535;--------------------------------------------------------------------
    3636ALIGN JUMP_ALIGN
     
    3838    push    es
    3939    push    ds
    40     mov     di, bp                              ; Backup parent MENU
     40    mov     di, bp                          ; Backup parent MENU
    4141    mov     cx, DIALOG_size
    4242    eENTER_STRUCT cx
     
    5252
    5353    mov     ax, [bp+MENUINIT.wHighlightedItem]
     54    mov     si, [bp+DIALOG.fpDialogIO]      ; Restore SI
    5455    eLEAVE_STRUCT DIALOG_size
    5556    pop     ds
  • trunk/Assembly_Library/Src/Menu/Dialog/DialogFile.asm

    r592 r593  
    3232;       Nothing
    3333;   Corrupts registers:
    34 ;       AX, BX, CX, DX, SI, DI
     34;       AX, BX, CX, DX, DI
    3535;--------------------------------------------------------------------
    3636ALIGN JUMP_ALIGN
    3737DialogFile_GetFileNameWithIoInDSSI:
     38    ; We need to store default drive because user might change drive but
     39    ; then cancel the file selection. In that case the original default directory
     40    ; must be restored.
     41    call    Drive_GetDefaultToAL
     42    push    ax
     43
    3844    mov     bx, FileEventHandler
    3945    mov     BYTE [si+FILE_DIALOG_IO.bUserCancellation], TRUE
    40     jmp     Dialog_DisplayWithDialogInputInDSSIandHandlerInBX
     46    call    Dialog_DisplayWithDialogInputInDSSIandHandlerInBX
     47
     48    ; Now restore the default drive if user cancellation
     49    pop     dx
     50    cmp     BYTE [si+FILE_DIALOG_IO.bUserCancellation], TRUE
     51    je      Drive_SetDefaultFromDL
     52    ret
    4153
    4254
Note: See TracChangeset for help on using the changeset viewer.