removed the "protect 386 registers" patch again, a fixed version of free-

EMM386 is available. This reduces device driver call overhead in terms of
CPU and stack usage.  Older EMM386 versions destroyed eax ebx ecx edi esi
ebp fs gs, now go_driver_entry in emm386.asm saves those registers. Only
the INIT was broken, but the execrh.asm patch protected ALL functions.


git-svn-id: https://svn.code.sf.net/p/freedos/svn/kernel/trunk@1184 6ac86273-5f31-0410-b378-82cca8765d1b
This commit is contained in:
Eric Auer 2006-05-20 20:49:59 +00:00
parent 52c9c933d8
commit 265efa8b8b

View File

@ -66,13 +66,13 @@ segment HMA_TEXT
pop di
pop si
Protect386Registers ; protect from drivers that destroy eg emm386
; Protect386Registers ; old free-EMM386 versions destroy regs in their INIT method
mov ax,[si+8] ; construct 'interrupt' address
mov [bp+4],ax ; construct interrupt address
call far[bp+4] ; call far the interrupt
Restore386Registers
; Restore386Registers ; less stack load and better performance...
sti ; damm driver turn off ints
cld ; has gone backwards