fixed V86 task switch on IRQ broken in rev. 1055
git-svn-id: svn://kolibrios.org@1082 a494cfbc-eb01-0410-851d-a64ba20cac60
This commit is contained in:
parent
25030c977d
commit
9470f6e097
@ -925,12 +925,11 @@ v86_irq2:
|
|||||||
mov cx, [eax*4+2]
|
mov cx, [eax*4+2]
|
||||||
mov word [esi-v86_regs.size+v86_regs.cs], cx
|
mov word [esi-v86_regs.size+v86_regs.cs], cx
|
||||||
and byte [esi-v86_regs.size+v86_regs.eflags+1], not 3
|
and byte [esi-v86_regs.size+v86_regs.eflags+1], not 3
|
||||||
; push ebx
|
|
||||||
call update_counters
|
call update_counters
|
||||||
; pop ebx
|
lea edi, [ebx - SLOT_BASE]
|
||||||
; sub ebx, SLOT_BASE
|
shr edi, 3
|
||||||
; shr ebx, 8
|
add edi, TASK_DATA
|
||||||
; mov esi, [CURRENT_TASK]
|
call find_next_task.found
|
||||||
call do_change_task
|
call do_change_task
|
||||||
popad
|
popad
|
||||||
iretd
|
iretd
|
||||||
|
Loading…
Reference in New Issue
Block a user