forked from KolibriOS/kolibrios
fix V86 IRQ redirecting when task switch is needed, it never worked before
git-svn-id: svn://kolibrios.org@3696 a494cfbc-eb01-0410-851d-a64ba20cac60
This commit is contained in:
parent
bd89ff2844
commit
c8f93d8d8f
@ -896,6 +896,7 @@ v86_irq2:
|
|||||||
iretd
|
iretd
|
||||||
.found:
|
.found:
|
||||||
mov cr3, eax
|
mov cr3, eax
|
||||||
|
mov esi, [ebx+APPDATA.saved_esp0]
|
||||||
sub word [esi-sizeof.v86_regs+v86_regs.esp], 6
|
sub word [esi-sizeof.v86_regs+v86_regs.esp], 6
|
||||||
mov ecx, [esi-sizeof.v86_regs+v86_regs.eip]
|
mov ecx, [esi-sizeof.v86_regs+v86_regs.eip]
|
||||||
mov word [edx], cx
|
mov word [edx], cx
|
||||||
@ -916,7 +917,7 @@ v86_irq2:
|
|||||||
call update_counters
|
call update_counters
|
||||||
lea edi, [ebx + 0x100000000 - SLOT_BASE]
|
lea edi, [ebx + 0x100000000 - SLOT_BASE]
|
||||||
shr edi, 3
|
shr edi, 3
|
||||||
add edi, TASK_DATA
|
add edi, CURRENT_TASK
|
||||||
call find_next_task.found
|
call find_next_task.found
|
||||||
call do_change_task
|
call do_change_task
|
||||||
popad
|
popad
|
||||||
|
Loading…
Reference in New Issue
Block a user