|
|
| version 1.18, 2005/03/12 12:32:54 | version 1.20, 2008/01/25 17:49:46 |
|---|---|
| Line 81 ia32_setextsize(UINT32 size) | Line 81 ia32_setextsize(UINT32 size) |
| { | { |
| if (CPU_EXTMEMSIZE != size) { | if (CPU_EXTMEMSIZE != size) { |
| if (CPU_EXTMEM) { | UINT8 *extmem; |
| _MFREE(CPU_EXTMEM); | extmem = CPU_EXTMEM; |
| CPU_EXTMEM = NULL; | if (extmem != NULL) { |
| _MFREE(extmem); | |
| extmem = NULL; | |
| } | } |
| if (size) { | if (size != 0) { |
| CPU_EXTMEM = (BYTE *)_MALLOC(size + 16, "EXTMEM"); | extmem = (UINT8 *)_MALLOC(size + 16, "EXTMEM"); |
| if (CPU_EXTMEM == NULL) { | } |
| size = 0; | if (extmem != NULL) { |
| } | ZeroMemory(extmem, size + 16); |
| ZeroMemory(CPU_EXTMEM, size + 16); | CPU_EXTMEM = extmem; |
| CPU_EXTMEMSIZE = size; | |
| CPU_EXTMEMBASE = CPU_EXTMEM - 0x100000; | |
| CPU_EXTLIMIT16 = min(size + 0x100000, 0xf00000); | |
| CPU_EXTLIMIT = size + 0x100000; | |
| } | |
| else { | |
| CPU_EXTMEM = NULL; | |
| CPU_EXTMEMSIZE = 0; | |
| CPU_EXTMEMBASE = NULL; | |
| CPU_EXTLIMIT16 = 0; | |
| CPU_EXTLIMIT = 0; | |
| } | } |
| CPU_EXTMEMSIZE = size; | |
| } | } |
| CPU_EMSPTR[0] = mem + 0xc0000; | CPU_EMSPTR[0] = mem + 0xc0000; |
| CPU_EMSPTR[1] = mem + 0xc4000; | CPU_EMSPTR[1] = mem + 0xc4000; |
| Line 179 change_vm(BOOL onoff) | Line 191 change_vm(BOOL onoff) |
| } | } |
| } | } |
| #if !defined(IA32_DONT_USE_SET_EFLAGS_FUNCTION) | |
| /* | /* |
| * flags | * flags |
| */ | */ |
| Line 223 set_eflags(UINT32 new_flags, UINT32 mask | Line 234 set_eflags(UINT32 new_flags, UINT32 mask |
| mask |= AC_FLAG|ID_FLAG; | mask |= AC_FLAG|ID_FLAG; |
| modify_eflags(new_flags, mask); | modify_eflags(new_flags, mask); |
| } | } |
| #endif /* !IA32_DONT_USE_SET_EFLAGS_FUNCTION */ |