Yesterday, I had some trouble getting a win95 bootflop (stil does not
work yet) to run and plex86 aborted due to exception 13.

this was in the kernel log:
======================================
Aug  8 22:16:18 darius kernel: cpu.cr0 = 0x60000010
Aug  8 22:16:18 darius kernel: plex86: vm_t size is 67304
Aug  8 22:16:18 darius kernel: plex86: log message(s):
Aug  8 22:16:18 darius kernel: init_monitor OK -----------------
Aug  8 22:16:18 darius kernel: nexus_size = 0x236
Aug  8 22:16:18 darius kernel:
Aug  8 22:16:19 darius kernel: plex86: log message(s):
Aug  8 22:16:19 darius kernel: plex86 panic: default case on i.b1 of
0x2B, reason=0x81                     
======================================

and this was outputted in the terminal I ran plex86 from:
======================================
Fatal monitor error caused Panic
 
Abort due to exception 13 at 74de:000017c3
 
Register dump:
 CS:74de SS:74de DS:0070 ES:8c92 FS:0000 GS:0000
 EAX:000074de EBX:00001492 ECX:000010a0 EDX:00000000
 ESI:000032d0 EDI:00008fbf EBP:00001009 ESP:000017c2 EFLAGS:00000286
 
Stack dump:
Current instruction:
 74DE.000017C3  0100                     add     dword ptr [eax], eax
 
Shutting down plugins
======================================

Looking at kernel/emulation/emulation.c in emulate_instr and in
user/decode.c there is something I don't understand:

0x2b is the instruction opcode of the instruction that causes the panic?
(/*2b*/  { INS_sub,    op(G,v),   op(E,v) } and /*2b*/  {
INS_movntps,op(W,o),   op(V,o) } in the One/TwoByteMap tables).

Looking at the stack dump, I would expect the "current instruction" to
be the faulting instruction, however this is not the case (since it
displays an add instruction).
-- 
        Best regards,
                
                Jeroen Janssen

+++
On Earth, No-one Can Hear You Say "Um".
        -- (Terry Pratchett, Only You Can Save Mankind)
+++


Reply via email to