diff --git a/memory/Makefile.in b/memory/Makefile.in index 5157bf003aac20a736b5042f8703ec600b5914f0..a1bce2694e3351763c6dab51a0cfc09c60db746d 100644 --- a/memory/Makefile.in +++ b/memory/Makefile.in @@ -10,6 +10,7 @@ C_SRCS = \ environ.c \ global.c \ heap.c \ + instr.c \ ldt.c \ local.c \ selector.c \ diff --git a/miscemu/instr.c b/memory/instr.c similarity index 99% rename from miscemu/instr.c rename to memory/instr.c index be4728584abb5d448f8d49e9ae5b009c3536fead..c586cf406365b18231b407609c3070859d9ee835 100644 --- a/miscemu/instr.c +++ b/memory/instr.c @@ -17,6 +17,7 @@ DECLARE_DEBUG_CHANNEL(int) DECLARE_DEBUG_CHANNEL(io) +#ifdef __i386__ #define IS_V86(context) (EFL_sig(context)&V86_FLAG) #define IS_SEL_32(context,seg) \ @@ -630,14 +631,14 @@ BOOL INSTR_EmulateInstruction( SIGCONTEXT *context ) DS_sig(context) = seg; EIP_sig(context) += prefixlen + len + 1; return TRUE; - case 4: #ifdef FS_sig + case 4: FS_sig(context) = seg; EIP_sig(context) += prefixlen + len + 1; return TRUE; #endif - case 5: #ifdef GS_sig + case 5: GS_sig(context) = seg; EIP_sig(context) += prefixlen + len + 1; return TRUE; @@ -815,8 +816,7 @@ BOOL INSTR_EmulateInstruction( SIGCONTEXT *context ) EIP_sig(context) = OFFSETOF( gpHandler ); return TRUE; } - - MESSAGE("Unexpected Windows program segfault" - " - opcode = %x\n", *instr); return FALSE; /* Unable to emulate it */ } + +#endif /* __i386__ */ diff --git a/miscemu/Makefile.in b/miscemu/Makefile.in index dcfdbbe53686e8f59165ad90fa19f6da50e3cd56..75542b4dfcecbc2a781a16ea58e4367cdcd06c31 100644 --- a/miscemu/Makefile.in +++ b/miscemu/Makefile.in @@ -7,7 +7,6 @@ MODULE = miscemu C_SRCS = \ emulate.c \ - instr.c \ main.c all: $(MODULE).o