Hi all,
when running Win98 explorer.exe, I finally get this crash:
First chance exception: page fault on read access to 0x00000084 in 32-bit code (0x406cb9a3). Register dump: CS:0023 SS:002b DS:002b ES:002b FS:028f GS:0000 EIP:406cb9a3 ESP:41052560 EBP:41052560 EFLAGS:00010202( R- 00 I - - 1 ) EAX:00000021 EBX:406dc14c ECX:00000202 EDX:406dbfe6 ESI:4105290c EDI:00000e38 Stack dump: 0x41052560 (_end+0x22dc24): 41052850 406c7b8c 00000021 00000000 0x41052570 (_end+0x22dc34): 00000000 00000000 00000000 00000000 0x41052580 (_end+0x22dc44): 400d9280 40308000 0000000a 41052650 0x41052590 (_end+0x22dc54): 00000040 400d9280 41052650 40308000 0x410525a0 (_end+0x22dc64): 410525bc 400d9280 410525bc 00000016 0x410525b0 (_end+0x22dc74): 41052638 400931eb 410525bc 400d9280 0x410525c0 (_end+0x22dc84):
0051: sel=028f base=41063000 limit=00000fff 32-bit rw- Backtrace: 0 0x406cb9a3 (DOSVM_GetRMHandler+0x7(intnum=0x21) [interrupts.c:455] in winedos.dll.so) (ebp=41052560) 1 0x406c7b8c (DOSVM_CallRMInt+0x28(context=0x4105290c) [int31.c:462] in winedos.dll.so) (ebp=41052850) =>2 0x406c9b63 (DOSVM_Int31Handler+0x15f7(context=0x4105290c) [int31.c:1067] in winedos.dll.so) (ebp=410528dc) 3 0x406cafc5 (DOSVM_IntProcRelay+0x9(context=0x4105290c, data=0x406c856c) [interrupts.c:121] in winedos.dll.so) (ebp=410528e8) 4 0x406cd1ca (RELAY_RelayStub+0xe(proc=0x406cafbc, args=0x4038fcae, context=0x4105290c) [relay.c:116] in winedos.dll.so) (ebp=410528f8) 5 0x400b57f0 (KERNEL32.DLL.__wine_call_from_16_regs+0x144 in libntdll.dll.so) (ebp=41052c00) 6 0x086f:0x0146 (bp=450e) 7 0x0877:0x067d (bp=4522, far call assumed) 8 0x0877:0x07d7 (bp=4546) 9 0x07f7:0x07a9 (bp=45d6, far call assumed) 10 0x07f7:0x0a34 (bp=45e2) 11 0x07f7:0x0b54 (bp=4842) 12 0x07f7:0x0c56 (bp=485e) 13 0x07f7:0x0dbe (bp=487e) 14 0x07b7:0x0251 (bp=49ac, far call assumed) 15 0x07b7:0x0034 (bp=49b8) 16 0x073f:0x0458 (bp=49da, far call assumed) 17 0x073f:0x0411 (bp=49e4) 18 0x071f:0x0331 (bp=4b2a, far call assumed) 19 0x075f:0x0546 (bp=4cb0, far call assumed) 20 0x075f:0x007b (bp=4cc2) 21 0x079f:0x0130 (bp=4cd6, far call assumed) 22 0x0447:0x3e2c (bp=4e06, far call assumed) 23 0x02c7:0x6165 (bp=4e22, far call assumed) 24 0x029f:0x03a4 (bp=4e32, far call assumed)
0x406cb9a3 (DOSVM_GetRMHandler+0x7 [interrupts.c:455] in winedos.dll.so): movl 0x0(,%eax,4),%eax 456 }
I assume it's because the DOS memory area hasn't been unprotected/set up (grrr, this kind of problem *again*!)
Where should this call sequence have activated the DOS memory area properly?