Date: Tue, 27 Jul 93 13:07:57 +0100 From: buers AT dg1 DOT chemie DOT uni-konstanz DOT de (Dieter Buerssner) To: turnbull AT shako DOT sk DOT tsukuba DOT ac DOT jp Cc: djgpp AT sun DOT soe DOT clarkson DOT edu Subject: Re: Exception 33 Stephen Turnbull (?) What is Exception 33? Any ideas on fixing it that do not involve recompiling Emacs (I don't have the Japanese source)? Nemacs may be do call to dos via int86(0x21, ®s, ®s ) (0x21 == 33), but the AH register transferred via regs.h.ah is not supported by go32. You can put in some debugging code in go32/exphdlr.c in fumction i_21() to find out which dos interrupt is called. Actually such debugging code already is there commented out between #if 0 ... #endif. With this code you will know the registers contents for the interrupt. With some reference, like Ralf Brown's interrupt list, you'll find out the details of the call, including the registers. If the segment registers are not needed, supporting the interrupt by go32 might be as easy as putting in a new case statement in the switch in i_21(), which falls through to the code intr(0x21, &r); reg2tss(&r); return 0; Hope this helps Dieter