Changeset 148 in xtideuniversalbios for trunk/XTIDE_Universal_BIOS/Src/Handlers/Int13h/Common/HIRQ.asm
- Timestamp:
- Mar 19, 2011, 8:09:41 PM (14 years ago)
- google:author:
- aitotat
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/XTIDE_Universal_BIOS/Src/Handlers/Int13h/Common/HIRQ.asm
r116 r148 8 8 ; HIRQ_WaitForIRQ 9 9 ; Parameters: 10 ; DS: RAMVARS segment10 ; DS:BX: Ptr to DPT 11 11 ; Returns: 12 12 ; CF: Set if wait done by operating system … … 36 36 37 37 LOAD_BDA_SEGMENT_TO ds, ax, ! ; Zero AX 38 mov ah, OS_HOOK_DEVICE_BUSY ; Hard disk busy (AX=9000h) 38 39 cli ; Disable interrupts 39 40 cmp al, [BDA.bHDTaskFlg] ; Task flag already set? 40 41 jc SHORT .ReturnFromWaitNotify ; If so, skip OS notification 41 42 mov ah, 90h ; Hard disk busy (AX=9000h) 43 int INTV_SYSTEM_SERVICES ; OS hook, device busy 42 int BIOS_SYSTEM_INTERRUPT_15h ; OS hook, device busy 44 43 jnc SHORT .ReturnFromWaitNotify ; CF cleared, BIOS handles waiting 45 44 … … 106 105 107 106 ; Issue Int 15h, function AX=9100h (Interrupt ready) 108 mov ax, 9100h; Interrupt ready, device 0 (HD)109 int INTV_SYSTEM_SERVICES107 mov ax, OS_HOOK_DEVICE_POST<<8 ; Interrupt ready, device 0 (HD) 108 int BIOS_SYSTEM_INTERRUPT_15h 110 109 111 110 pop ax ; Restore AX
Note:
See TracChangeset
for help on using the changeset viewer.