Rev 1635 | Rev 2130 | Go to most recent revision | Show entire file | Regard whitespace | Details | Blame | Last modification | View Log | RSS feed
Rev 1635 | Rev 1638 | ||
---|---|---|---|
Line 3... | Line 3... | ||
3 | ;; Copyright (C) KolibriOS team 2007-2008. All rights reserved. ;; |
3 | ;; Copyright (C) KolibriOS team 2007-2008. All rights reserved. ;; |
4 | ;; Distributed under terms of the GNU General Public License ;; |
4 | ;; Distributed under terms of the GNU General Public License ;; |
5 | ;; ;; |
5 | ;; ;; |
6 | ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; |
6 | ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; |
Line 7... | Line 7... | ||
7 | 7 | ||
Line 8... | Line 8... | ||
8 | $Revision: 1448 $ |
8 | $Revision: 1638 $ |
9 | 9 | ||
Line 10... | Line 10... | ||
10 | ; Virtual-8086 mode manager |
10 | ; Virtual-8086 mode manager |
Line 326... | Line 326... | ||
326 | rep movsd |
326 | rep movsd |
Line 327... | Line 327... | ||
327 | 327 | ||
328 | cmp edx, -1 |
328 | cmp edx, -1 |
329 | jz .noirqhook |
329 | jz .noirqhook |
330 | uglobal |
330 | uglobal |
331 | v86_irqhooks rd 16*2 |
331 | v86_irqhooks rd IRQ_RESERVE * 2 |
332 | endg |
332 | endg |
333 | cmp [v86_irqhooks+edx*8], 0 |
333 | cmp [v86_irqhooks+edx*8], 0 |
334 | jz @f |
334 | jz @f |
335 | cmp [v86_irqhooks+edx*8], eax |
335 | cmp [v86_irqhooks+edx*8], eax |
Line 896... | Line 896... | ||
896 | pop eax |
896 | pop eax |
897 | .cont2: |
897 | .cont2: |
898 | pop ecx |
898 | pop ecx |
899 | .cont: |
899 | .cont: |
900 | loop .scan |
900 | loop .scan |
- | 901 | ||
901 | mov al, 20h |
902 | mov eax, edi |
902 | out 20h, al |
- | |
903 | cmp edi, 8 |
- | |
904 | jb @f |
903 | call IRQ_EOI |
905 | out 0A0h, al |
- | |
906 | @@: |
904 | |
907 | popad |
905 | popad |
908 | iretd |
906 | iretd |
909 | .found: |
907 | .found: |
910 | mov cr3, eax |
908 | mov cr3, eax |
911 | sub word [esi-v86_regs.size+v86_regs.esp], 6 |
909 | sub word [esi-v86_regs.size+v86_regs.esp], 6 |