<p>Elyes HAOUAS has uploaded this change for <strong>review</strong>.</p><p><a href="https://review.coreboot.org/26364">View Change</a></p><pre style="font-family: monospace,monospace; white-space: pre-wrap;">device/oprom/x86emu/*.h: Fix coding style<br><br>Change-Id: Ief5cc4178095bb617f770e6c078770a8f1af0133<br>Signed-off-by: Elyes HAOUAS <ehaouas@noos.fr><br>---<br>M src/device/oprom/x86emu/debug.h<br>M src/device/oprom/x86emu/decode.h<br>M src/device/oprom/x86emu/fpu.h<br>M src/device/oprom/x86emu/ops.h<br>M src/device/oprom/x86emu/prim_asm.h<br>M src/device/oprom/x86emu/prim_ops.c<br>M src/device/oprom/x86emu/prim_ops.h<br>M src/device/oprom/x86emu/x86emui.h<br>8 files changed, 1,157 insertions(+), 1,162 deletions(-)<br><br></pre><pre style="font-family: monospace,monospace; white-space: pre-wrap;">git pull ssh://review.coreboot.org:29418/coreboot refs/changes/64/26364/1</pre><pre style="font-family: monospace,monospace; white-space: pre-wrap;"><span>diff --git a/src/device/oprom/x86emu/debug.h b/src/device/oprom/x86emu/debug.h</span><br><span>index f89d5ab..a2316ba 100644</span><br><span>--- a/src/device/oprom/x86emu/debug.h</span><br><span>+++ b/src/device/oprom/x86emu/debug.h</span><br><span>@@ -1,10 +1,10 @@</span><br><span> /****************************************************************************</span><br><span> *</span><br><span style="color: hsl(0, 100%, 40%);">-*                                          Realmode X86 Emulator Library</span><br><span style="color: hsl(120, 100%, 40%);">+*                        Realmode X86 Emulator Library</span><br><span> *</span><br><span style="color: hsl(0, 100%, 40%);">-*             Copyright (C) 1996-1999 SciTech Software, Inc.</span><br><span style="color: hsl(0, 100%, 40%);">-*                                      Copyright (C) David Mosberger-Tang</span><br><span style="color: hsl(0, 100%, 40%);">-*                                           Copyright (C) 1999 Egbert Eich</span><br><span style="color: hsl(120, 100%, 40%);">+*            Copyright (C) 1996-1999 SciTech Software, Inc.</span><br><span style="color: hsl(120, 100%, 40%);">+*               Copyright (C) David Mosberger-Tang</span><br><span style="color: hsl(120, 100%, 40%);">+*           Copyright (C) 1999 Egbert Eich</span><br><span> *</span><br><span> *  ========================================================================</span><br><span> *</span><br><span>@@ -28,11 +28,11 @@</span><br><span> *</span><br><span> *  ========================================================================</span><br><span> *</span><br><span style="color: hsl(0, 100%, 40%);">-* Language:               ANSI C</span><br><span style="color: hsl(120, 100%, 40%);">+* Language:     ANSI C</span><br><span> * Environment:        Any</span><br><span style="color: hsl(0, 100%, 40%);">-* Developer:    Kendall Bennett</span><br><span style="color: hsl(120, 100%, 40%);">+* Developer:        Kendall Bennett</span><br><span> *</span><br><span style="color: hsl(0, 100%, 40%);">-* Description:  Header file for debug definitions.</span><br><span style="color: hsl(120, 100%, 40%);">+* Description:  Header file for debug definitions.</span><br><span> *</span><br><span> ****************************************************************************/</span><br><span> </span><br><span>@@ -46,72 +46,72 @@</span><br><span> </span><br><span> /* checks to be enabled for "runtime" */</span><br><span> </span><br><span style="color: hsl(0, 100%, 40%);">-#define CHECK_IP_FETCH_F                0x1</span><br><span style="color: hsl(0, 100%, 40%);">-#define CHECK_SP_ACCESS_F               0x2</span><br><span style="color: hsl(0, 100%, 40%);">-#define CHECK_MEM_ACCESS_F              0x4 /*using regular linear pointer */</span><br><span style="color: hsl(0, 100%, 40%);">-#define CHECK_DATA_ACCESS_F             0x8 /*using segment:offset*/</span><br><span style="color: hsl(120, 100%, 40%);">+#define CHECK_IP_FETCH_F       0x1</span><br><span style="color: hsl(120, 100%, 40%);">+#define CHECK_SP_ACCESS_F  0x2</span><br><span style="color: hsl(120, 100%, 40%);">+#define CHECK_MEM_ACCESS_F 0x4     /*using regular linear pointer */</span><br><span style="color: hsl(120, 100%, 40%);">+#define CHECK_DATA_ACCESS_F  0x8     /*using segment:offset */</span><br><span> </span><br><span> #ifdef DEBUG</span><br><span style="color: hsl(0, 100%, 40%);">-# define CHECK_IP_FETCH()                  (M.x86.check & CHECK_IP_FETCH_F)</span><br><span style="color: hsl(0, 100%, 40%);">-# define CHECK_SP_ACCESS()                  (M.x86.check & CHECK_SP_ACCESS_F)</span><br><span style="color: hsl(0, 100%, 40%);">-# define CHECK_MEM_ACCESS()                (M.x86.check & CHECK_MEM_ACCESS_F)</span><br><span style="color: hsl(0, 100%, 40%);">-# define CHECK_DATA_ACCESS()              (M.x86.check & CHECK_DATA_ACCESS_F)</span><br><span style="color: hsl(120, 100%, 40%);">+#define CHECK_IP_FETCH()       (M.x86.check & CHECK_IP_FETCH_F)</span><br><span style="color: hsl(120, 100%, 40%);">+#define CHECK_SP_ACCESS() (M.x86.check & CHECK_SP_ACCESS_F)</span><br><span style="color: hsl(120, 100%, 40%);">+#define CHECK_MEM_ACCESS()       (M.x86.check & CHECK_MEM_ACCESS_F)</span><br><span style="color: hsl(120, 100%, 40%);">+#define CHECK_DATA_ACCESS()     (M.x86.check & CHECK_DATA_ACCESS_F)</span><br><span> #else</span><br><span style="color: hsl(0, 100%, 40%);">-# define CHECK_IP_FETCH()</span><br><span style="color: hsl(0, 100%, 40%);">-# define CHECK_SP_ACCESS()</span><br><span style="color: hsl(0, 100%, 40%);">-# define CHECK_MEM_ACCESS()</span><br><span style="color: hsl(0, 100%, 40%);">-# define CHECK_DATA_ACCESS()</span><br><span style="color: hsl(120, 100%, 40%);">+#define CHECK_IP_FETCH()</span><br><span style="color: hsl(120, 100%, 40%);">+#define CHECK_SP_ACCESS()</span><br><span style="color: hsl(120, 100%, 40%);">+#define CHECK_MEM_ACCESS()</span><br><span style="color: hsl(120, 100%, 40%);">+#define CHECK_DATA_ACCESS()</span><br><span> #endif</span><br><span> </span><br><span> #ifdef DEBUG</span><br><span style="color: hsl(0, 100%, 40%);">-# define DEBUG_INSTRUMENT()       (M.x86.debug & DEBUG_INSTRUMENT_F)</span><br><span style="color: hsl(0, 100%, 40%);">-# define DEBUG_DECODE()           (M.x86.debug & DEBUG_DECODE_F)</span><br><span style="color: hsl(0, 100%, 40%);">-# define DEBUG_TRACE()                (M.x86.debug & DEBUG_TRACE_F)</span><br><span style="color: hsl(0, 100%, 40%);">-# define DEBUG_STEP()                  (M.x86.debug & DEBUG_STEP_F)</span><br><span style="color: hsl(0, 100%, 40%);">-# define DEBUG_DISASSEMBLE()    (M.x86.debug & DEBUG_DISASSEMBLE_F)</span><br><span style="color: hsl(0, 100%, 40%);">-# define DEBUG_BREAK()           (M.x86.debug & DEBUG_BREAK_F)</span><br><span style="color: hsl(0, 100%, 40%);">-# define DEBUG_SVC()                   (M.x86.debug & DEBUG_SVC_F)</span><br><span style="color: hsl(0, 100%, 40%);">-# define DEBUG_SAVE_IP_CS()     (M.x86.debug & DEBUG_SAVE_IP_CS_F)</span><br><span style="color: hsl(120, 100%, 40%);">+#define DEBUG_INSTRUMENT()       (M.x86.debug & DEBUG_INSTRUMENT_F)</span><br><span style="color: hsl(120, 100%, 40%);">+#define DEBUG_DECODE()          (M.x86.debug & DEBUG_DECODE_F)</span><br><span style="color: hsl(120, 100%, 40%);">+#define DEBUG_TRACE()               (M.x86.debug & DEBUG_TRACE_F)</span><br><span style="color: hsl(120, 100%, 40%);">+#define DEBUG_STEP()         (M.x86.debug & DEBUG_STEP_F)</span><br><span style="color: hsl(120, 100%, 40%);">+#define DEBUG_DISASSEMBLE()   (M.x86.debug & DEBUG_DISASSEMBLE_F)</span><br><span style="color: hsl(120, 100%, 40%);">+#define DEBUG_BREAK()          (M.x86.debug & DEBUG_BREAK_F)</span><br><span style="color: hsl(120, 100%, 40%);">+#define DEBUG_SVC()          (M.x86.debug & DEBUG_SVC_F)</span><br><span style="color: hsl(120, 100%, 40%);">+#define DEBUG_SAVE_IP_CS()     (M.x86.debug & DEBUG_SAVE_IP_CS_F)</span><br><span> </span><br><span style="color: hsl(0, 100%, 40%);">-# define DEBUG_FS()                   (M.x86.debug & DEBUG_FS_F)</span><br><span style="color: hsl(0, 100%, 40%);">-# define DEBUG_PROC()             (M.x86.debug & DEBUG_PROC_F)</span><br><span style="color: hsl(0, 100%, 40%);">-# define DEBUG_SYSINT()         (M.x86.debug & DEBUG_SYSINT_F)</span><br><span style="color: hsl(0, 100%, 40%);">-# define DEBUG_TRACECALL()            (M.x86.debug & DEBUG_TRACECALL_F)</span><br><span style="color: hsl(0, 100%, 40%);">-# define DEBUG_TRACECALLREGS()     (M.x86.debug & DEBUG_TRACECALL_REGS_F)</span><br><span style="color: hsl(0, 100%, 40%);">-# define DEBUG_TRACEJMP()       (M.x86.debug & DEBUG_TRACEJMP_F)</span><br><span style="color: hsl(0, 100%, 40%);">-# define DEBUG_TRACEJMPREGS()   (M.x86.debug & DEBUG_TRACEJMP_REGS_F)</span><br><span style="color: hsl(0, 100%, 40%);">-# define DEBUG_SYS()             (M.x86.debug & DEBUG_SYS_F)</span><br><span style="color: hsl(0, 100%, 40%);">-# define DEBUG_MEM_TRACE()       (M.x86.debug & DEBUG_MEM_TRACE_F)</span><br><span style="color: hsl(0, 100%, 40%);">-# define DEBUG_IO_TRACE()          (M.x86.debug & DEBUG_IO_TRACE_F)</span><br><span style="color: hsl(0, 100%, 40%);">-# define DEBUG_DECODE_NOPRINT() (M.x86.debug & DEBUG_DECODE_NOPRINT_F)</span><br><span style="color: hsl(120, 100%, 40%);">+#define DEBUG_FS()              (M.x86.debug & DEBUG_FS_F)</span><br><span style="color: hsl(120, 100%, 40%);">+#define DEBUG_PROC()            (M.x86.debug & DEBUG_PROC_F)</span><br><span style="color: hsl(120, 100%, 40%);">+#define DEBUG_SYSINT()                (M.x86.debug & DEBUG_SYSINT_F)</span><br><span style="color: hsl(120, 100%, 40%);">+#define DEBUG_TRACECALL()   (M.x86.debug & DEBUG_TRACECALL_F)</span><br><span style="color: hsl(120, 100%, 40%);">+#define DEBUG_TRACECALLREGS()    (M.x86.debug & DEBUG_TRACECALL_REGS_F)</span><br><span style="color: hsl(120, 100%, 40%);">+#define DEBUG_TRACEJMP()    (M.x86.debug & DEBUG_TRACEJMP_F)</span><br><span style="color: hsl(120, 100%, 40%);">+#define DEBUG_TRACEJMPREGS()      (M.x86.debug & DEBUG_TRACEJMP_REGS_F)</span><br><span style="color: hsl(120, 100%, 40%);">+#define DEBUG_SYS()          (M.x86.debug & DEBUG_SYS_F)</span><br><span style="color: hsl(120, 100%, 40%);">+#define DEBUG_MEM_TRACE()      (M.x86.debug & DEBUG_MEM_TRACE_F)</span><br><span style="color: hsl(120, 100%, 40%);">+#define DEBUG_IO_TRACE() (M.x86.debug & DEBUG_IO_TRACE_F)</span><br><span style="color: hsl(120, 100%, 40%);">+#define DEBUG_DECODE_NOPRINT()    (M.x86.debug & DEBUG_DECODE_NOPRINT_F)</span><br><span> #else</span><br><span style="color: hsl(0, 100%, 40%);">-# define DEBUG_INSTRUMENT()          0</span><br><span style="color: hsl(0, 100%, 40%);">-# define DEBUG_DECODE()                0</span><br><span style="color: hsl(0, 100%, 40%);">-# define DEBUG_TRACE()                 0</span><br><span style="color: hsl(0, 100%, 40%);">-# define DEBUG_STEP()                  0</span><br><span style="color: hsl(0, 100%, 40%);">-# define DEBUG_DISASSEMBLE()           0</span><br><span style="color: hsl(0, 100%, 40%);">-# define DEBUG_BREAK()                 0</span><br><span style="color: hsl(0, 100%, 40%);">-# define DEBUG_SVC()                   0</span><br><span style="color: hsl(0, 100%, 40%);">-# define DEBUG_SAVE_IP_CS()     0</span><br><span style="color: hsl(0, 100%, 40%);">-# define DEBUG_FS()                   0</span><br><span style="color: hsl(0, 100%, 40%);">-# define DEBUG_PROC()                  0</span><br><span style="color: hsl(0, 100%, 40%);">-# define DEBUG_SYSINT()                0</span><br><span style="color: hsl(0, 100%, 40%);">-# define DEBUG_TRACECALL()             0</span><br><span style="color: hsl(0, 100%, 40%);">-# define DEBUG_TRACECALLREGS()         0</span><br><span style="color: hsl(0, 100%, 40%);">-# define DEBUG_TRACEJMP()       0</span><br><span style="color: hsl(0, 100%, 40%);">-# define DEBUG_TRACEJMPREGS()   0</span><br><span style="color: hsl(0, 100%, 40%);">-# define DEBUG_SYS()                 0</span><br><span style="color: hsl(0, 100%, 40%);">-# define DEBUG_MEM_TRACE()             0</span><br><span style="color: hsl(0, 100%, 40%);">-# define DEBUG_IO_TRACE()              0</span><br><span style="color: hsl(0, 100%, 40%);">-# define DEBUG_DECODE_NOPRINT() 0</span><br><span style="color: hsl(120, 100%, 40%);">+#define DEBUG_INSTRUMENT()  0</span><br><span style="color: hsl(120, 100%, 40%);">+#define DEBUG_DECODE()               0</span><br><span style="color: hsl(120, 100%, 40%);">+#define DEBUG_TRACE()                0</span><br><span style="color: hsl(120, 100%, 40%);">+#define DEBUG_STEP()         0</span><br><span style="color: hsl(120, 100%, 40%);">+#define DEBUG_DISASSEMBLE()  0</span><br><span style="color: hsl(120, 100%, 40%);">+#define DEBUG_BREAK()                0</span><br><span style="color: hsl(120, 100%, 40%);">+#define DEBUG_SVC()          0</span><br><span style="color: hsl(120, 100%, 40%);">+#define DEBUG_SAVE_IP_CS()   0</span><br><span style="color: hsl(120, 100%, 40%);">+#define DEBUG_FS()           0</span><br><span style="color: hsl(120, 100%, 40%);">+#define DEBUG_PROC()         0</span><br><span style="color: hsl(120, 100%, 40%);">+#define DEBUG_SYSINT()               0</span><br><span style="color: hsl(120, 100%, 40%);">+#define DEBUG_TRACECALL()    0</span><br><span style="color: hsl(120, 100%, 40%);">+#define DEBUG_TRACECALLREGS()        0</span><br><span style="color: hsl(120, 100%, 40%);">+#define DEBUG_TRACEJMP()     0</span><br><span style="color: hsl(120, 100%, 40%);">+#define DEBUG_TRACEJMPREGS() 0</span><br><span style="color: hsl(120, 100%, 40%);">+#define DEBUG_SYS()          0</span><br><span style="color: hsl(120, 100%, 40%);">+#define DEBUG_MEM_TRACE()    0</span><br><span style="color: hsl(120, 100%, 40%);">+#define DEBUG_IO_TRACE()     0</span><br><span style="color: hsl(120, 100%, 40%);">+#define DEBUG_DECODE_NOPRINT()       0</span><br><span> #endif</span><br><span> </span><br><span> #ifdef DEBUG</span><br><span> </span><br><span style="color: hsl(0, 100%, 40%);">-# define DECODE_PRINTF(x)            if (DEBUG_DECODE()) \</span><br><span style="color: hsl(0, 100%, 40%);">-                                                                   x86emu_decode_printf(x)</span><br><span style="color: hsl(0, 100%, 40%);">-# define DECODE_PRINTF2(x,y)     if (DEBUG_DECODE()) \</span><br><span style="color: hsl(0, 100%, 40%);">-                                                                   x86emu_decode_printf2(x,y)</span><br><span style="color: hsl(120, 100%, 40%);">+#define DECODE_PRINTF(x)    if (DEBUG_DECODE()) \</span><br><span style="color: hsl(120, 100%, 40%);">+                                 x86emu_decode_printf(x)</span><br><span style="color: hsl(120, 100%, 40%);">+#define DECODE_PRINTF2(x, y)   if (DEBUG_DECODE()) \</span><br><span style="color: hsl(120, 100%, 40%);">+                                 x86emu_decode_printf2(x, y)</span><br><span> </span><br><span> /*</span><br><span>  * The following allow us to look at the bytes of an instruction.  The</span><br><span>@@ -119,74 +119,74 @@</span><br><span>  * the decoding process.  The SAVE_IP_CS is called initially when the</span><br><span>  * major opcode of the instruction is accessed.</span><br><span>  */</span><br><span style="color: hsl(0, 100%, 40%);">-#define INC_DECODED_INST_LEN(x)                       \</span><br><span style="color: hsl(0, 100%, 40%);">-       if (DEBUG_DECODE())                             \</span><br><span style="color: hsl(120, 100%, 40%);">+#define INC_DECODED_INST_LEN(x)                      \</span><br><span style="color: hsl(120, 100%, 40%);">+     if (DEBUG_DECODE())                     \</span><br><span>            x86emu_inc_decoded_inst_len(x)</span><br><span> </span><br><span style="color: hsl(0, 100%, 40%);">-#define SAVE_IP_CS(x,y)                                                       \</span><br><span style="color: hsl(0, 100%, 40%);">-       if (DEBUG_DECODE() | DEBUG_TRACECALL() | DEBUG_BREAK() \</span><br><span style="color: hsl(0, 100%, 40%);">-              | DEBUG_IO_TRACE() | DEBUG_SAVE_IP_CS()) { \</span><br><span style="color: hsl(0, 100%, 40%);">-              M.x86.saved_cs = x;                                             \</span><br><span style="color: hsl(0, 100%, 40%);">-               M.x86.saved_ip = y;                                             \</span><br><span style="color: hsl(120, 100%, 40%);">+#define SAVE_IP_CS(x, y)                                     \</span><br><span style="color: hsl(120, 100%, 40%);">+     if (DEBUG_DECODE() | DEBUG_TRACECALL() | DEBUG_BREAK()  \</span><br><span style="color: hsl(120, 100%, 40%);">+         | DEBUG_IO_TRACE() | DEBUG_SAVE_IP_CS()) {          \</span><br><span style="color: hsl(120, 100%, 40%);">+             M.x86.saved_cs = x;                             \</span><br><span style="color: hsl(120, 100%, 40%);">+             M.x86.saved_ip = y;                             \</span><br><span>    }</span><br><span> #else</span><br><span style="color: hsl(0, 100%, 40%);">-# define INC_DECODED_INST_LEN(x)</span><br><span style="color: hsl(0, 100%, 40%);">-# define DECODE_PRINTF(x)</span><br><span style="color: hsl(0, 100%, 40%);">-# define DECODE_PRINTF2(x,y)</span><br><span style="color: hsl(0, 100%, 40%);">-# define SAVE_IP_CS(x,y)</span><br><span style="color: hsl(120, 100%, 40%);">+#define INC_DECODED_INST_LEN(x)</span><br><span style="color: hsl(120, 100%, 40%);">+#define DECODE_PRINTF(x)</span><br><span style="color: hsl(120, 100%, 40%);">+#define DECODE_PRINTF2(x, y)</span><br><span style="color: hsl(120, 100%, 40%);">+#define SAVE_IP_CS(x, y)</span><br><span> #endif</span><br><span> </span><br><span> #ifdef DEBUG</span><br><span style="color: hsl(0, 100%, 40%);">-#define TRACE_REGS()                                            \</span><br><span style="color: hsl(0, 100%, 40%);">-       if (DEBUG_DISASSEMBLE()) {                                      \</span><br><span style="color: hsl(0, 100%, 40%);">-               x86emu_just_disassemble();                              \</span><br><span style="color: hsl(0, 100%, 40%);">-               goto EndOfTheInstructionProcedure;                      \</span><br><span style="color: hsl(0, 100%, 40%);">-       }                                                       \</span><br><span style="color: hsl(120, 100%, 40%);">+#define TRACE_REGS()                                         \</span><br><span style="color: hsl(120, 100%, 40%);">+     if (DEBUG_DISASSEMBLE()) {                              \</span><br><span style="color: hsl(120, 100%, 40%);">+             x86emu_just_disassemble();                      \</span><br><span style="color: hsl(120, 100%, 40%);">+             goto EndOfTheInstructionProcedure;              \</span><br><span style="color: hsl(120, 100%, 40%);">+     }                                                       \</span><br><span>    if (DEBUG_TRACE() || DEBUG_DECODE()) X86EMU_trace_regs()</span><br><span> #else</span><br><span style="color: hsl(0, 100%, 40%);">-# define TRACE_REGS()</span><br><span style="color: hsl(120, 100%, 40%);">+#define TRACE_REGS()</span><br><span> #endif</span><br><span> </span><br><span> #ifdef DEBUG</span><br><span style="color: hsl(0, 100%, 40%);">-# define SINGLE_STEP()                if (DEBUG_STEP()) x86emu_single_step()</span><br><span style="color: hsl(120, 100%, 40%);">+#define SINGLE_STEP()           if (DEBUG_STEP()) x86emu_single_step()</span><br><span> #else</span><br><span style="color: hsl(0, 100%, 40%);">-# define SINGLE_STEP()</span><br><span style="color: hsl(120, 100%, 40%);">+#define SINGLE_STEP()</span><br><span> #endif</span><br><span> </span><br><span> #define TRACE_AND_STEP()  \</span><br><span style="color: hsl(0, 100%, 40%);">-       TRACE_REGS();                   \</span><br><span style="color: hsl(120, 100%, 40%);">+     TRACE_REGS();           \</span><br><span>    SINGLE_STEP()</span><br><span> </span><br><span> #ifdef DEBUG</span><br><span style="color: hsl(0, 100%, 40%);">-# define START_OF_INSTR()</span><br><span style="color: hsl(0, 100%, 40%);">-# define END_OF_INSTR()               EndOfTheInstructionProcedure: x86emu_end_instr();</span><br><span style="color: hsl(0, 100%, 40%);">-# define END_OF_INSTR_NO_TRACE()       x86emu_end_instr();</span><br><span style="color: hsl(120, 100%, 40%);">+#define START_OF_INSTR()</span><br><span style="color: hsl(120, 100%, 40%);">+#define END_OF_INSTR()           EndOfTheInstructionProcedure : x86emu_end_instr();</span><br><span style="color: hsl(120, 100%, 40%);">+#define END_OF_INSTR_NO_TRACE()     x86emu_end_instr();</span><br><span> #else</span><br><span style="color: hsl(0, 100%, 40%);">-# define START_OF_INSTR()</span><br><span style="color: hsl(0, 100%, 40%);">-# define END_OF_INSTR()</span><br><span style="color: hsl(0, 100%, 40%);">-# define END_OF_INSTR_NO_TRACE()</span><br><span style="color: hsl(120, 100%, 40%);">+#define START_OF_INSTR()</span><br><span style="color: hsl(120, 100%, 40%);">+#define END_OF_INSTR()</span><br><span style="color: hsl(120, 100%, 40%);">+#define END_OF_INSTR_NO_TRACE()</span><br><span> #endif</span><br><span> </span><br><span> #ifdef DEBUG</span><br><span style="color: hsl(0, 100%, 40%);">-# define  CALL_TRACE(u,v,w,x,s)                                 \</span><br><span style="color: hsl(0, 100%, 40%);">-  if (DEBUG_TRACECALLREGS())                                                                      \</span><br><span style="color: hsl(0, 100%, 40%);">-               x86emu_dump_regs();                                     \</span><br><span style="color: hsl(0, 100%, 40%);">-       if (DEBUG_TRACECALL())                                          \</span><br><span style="color: hsl(0, 100%, 40%);">-               printf("%04x:%04x: CALL %s%04x:%04x\n", u , v, s, w, x);</span><br><span style="color: hsl(0, 100%, 40%);">-# define RETURN_TRACE(u,v,w,x,s)                                    \</span><br><span style="color: hsl(0, 100%, 40%);">- if (DEBUG_TRACECALLREGS())                                                                      \</span><br><span style="color: hsl(0, 100%, 40%);">-               x86emu_dump_regs();                                     \</span><br><span style="color: hsl(0, 100%, 40%);">-       if (DEBUG_TRACECALL())                                          \</span><br><span style="color: hsl(0, 100%, 40%);">-               printf("%04x:%04x: RET %s %04x:%04x\n",u,v,s,w,x);</span><br><span style="color: hsl(0, 100%, 40%);">-# define  JMP_TRACE(u,v,w,x,s)                                 \</span><br><span style="color: hsl(0, 100%, 40%);">-   if (DEBUG_TRACEJMPREGS()) \</span><br><span style="color: hsl(0, 100%, 40%);">-      x86emu_dump_regs(); \</span><br><span style="color: hsl(0, 100%, 40%);">-   if (DEBUG_TRACEJMP()) \</span><br><span style="color: hsl(0, 100%, 40%);">-      printf("%04x:%04x: JMP %s%04x:%04x\n", u , v, s, w, x);</span><br><span style="color: hsl(120, 100%, 40%);">+#define  CALL_TRACE(u, v, w, x, s)                                      \</span><br><span style="color: hsl(120, 100%, 40%);">+     if (DEBUG_TRACECALLREGS())                                      \</span><br><span style="color: hsl(120, 100%, 40%);">+             x86emu_dump_regs();                                     \</span><br><span style="color: hsl(120, 100%, 40%);">+     if (DEBUG_TRACECALL())                                          \</span><br><span style="color: hsl(120, 100%, 40%);">+             printf("%04x:%04x: CALL %s%04x:%04x\n", u, v, s, w, x);</span><br><span style="color: hsl(120, 100%, 40%);">+#define RETURN_TRACE(u, v, w, x, s)  \</span><br><span style="color: hsl(120, 100%, 40%);">+     if (DEBUG_TRACECALLREGS())      \</span><br><span style="color: hsl(120, 100%, 40%);">+             x86emu_dump_regs();     \</span><br><span style="color: hsl(120, 100%, 40%);">+     if (DEBUG_TRACECALL())          \</span><br><span style="color: hsl(120, 100%, 40%);">+             printf("%04x:%04x: RET %s %04x:%04x\n", u, v, s, w, x);</span><br><span style="color: hsl(120, 100%, 40%);">+#define  JMP_TRACE(u, v, w, x, s)    \</span><br><span style="color: hsl(120, 100%, 40%);">+     if (DEBUG_TRACEJMPREGS())       \</span><br><span style="color: hsl(120, 100%, 40%);">+             x86emu_dump_regs();     \</span><br><span style="color: hsl(120, 100%, 40%);">+     if (DEBUG_TRACEJMP())   \</span><br><span style="color: hsl(120, 100%, 40%);">+             printf("%04x:%04x: JMP %s%04x:%04x\n", u, v, s, w, x);</span><br><span> #else</span><br><span style="color: hsl(0, 100%, 40%);">-# define CALL_TRACE(u,v,w,x,s)</span><br><span style="color: hsl(0, 100%, 40%);">-# define RETURN_TRACE(u,v,w,x,s)</span><br><span style="color: hsl(0, 100%, 40%);">-# define  JMP_TRACE(u,v,w,x,s)</span><br><span style="color: hsl(120, 100%, 40%);">+#define CALL_TRACE(u, v, w, x, s)</span><br><span style="color: hsl(120, 100%, 40%);">+#define RETURN_TRACE(u, v, w, x, s)</span><br><span style="color: hsl(120, 100%, 40%);">+#define  JMP_TRACE(u, v, w, x, s)</span><br><span> #endif</span><br><span> </span><br><span> #ifdef DEBUG</span><br><span>@@ -203,29 +203,28 @@</span><br><span> </span><br><span> /*-------------------------- Function Prototypes --------------------------*/</span><br><span> </span><br><span style="color: hsl(0, 100%, 40%);">-#ifdef  __cplusplus</span><br><span style="color: hsl(0, 100%, 40%);">-extern "C" {                                /* Use "C" linkage when in C++ mode */</span><br><span style="color: hsl(120, 100%, 40%);">+#ifdef __cplusplus</span><br><span style="color: hsl(120, 100%, 40%);">+extern "C" {            /* Use "C" linkage when in C++ mode */</span><br><span> #endif</span><br><span> </span><br><span style="color: hsl(0, 100%, 40%);">-void x86emu_inc_decoded_inst_len (int x);</span><br><span style="color: hsl(0, 100%, 40%);">-void x86emu_decode_printf (const char *x);</span><br><span style="color: hsl(0, 100%, 40%);">-void x86emu_decode_printf2 (const char *x, int y);</span><br><span style="color: hsl(0, 100%, 40%);">-void x86emu_just_disassemble (void);</span><br><span style="color: hsl(0, 100%, 40%);">-void x86emu_single_step (void);</span><br><span style="color: hsl(0, 100%, 40%);">-void x86emu_end_instr (void);</span><br><span style="color: hsl(0, 100%, 40%);">-void x86emu_dump_regs (void);</span><br><span style="color: hsl(0, 100%, 40%);">-void x86emu_dump_xregs (void);</span><br><span style="color: hsl(0, 100%, 40%);">-void x86emu_print_int_vect (u16 iv);</span><br><span style="color: hsl(0, 100%, 40%);">-void x86emu_instrument_instruction (void);</span><br><span style="color: hsl(0, 100%, 40%);">-void x86emu_check_ip_access (void);</span><br><span style="color: hsl(0, 100%, 40%);">-void x86emu_check_sp_access (void);</span><br><span style="color: hsl(0, 100%, 40%);">-void x86emu_check_mem_access (u32 p);</span><br><span style="color: hsl(0, 100%, 40%);">-void x86emu_check_data_access (uint s, uint o);</span><br><span style="color: hsl(120, 100%, 40%);">+        void x86emu_inc_decoded_inst_len(int x);</span><br><span style="color: hsl(120, 100%, 40%);">+      void x86emu_decode_printf(const char *x);</span><br><span style="color: hsl(120, 100%, 40%);">+     void x86emu_decode_printf2(const char *x, int y);</span><br><span style="color: hsl(120, 100%, 40%);">+     void x86emu_just_disassemble(void);</span><br><span style="color: hsl(120, 100%, 40%);">+   void x86emu_single_step(void);</span><br><span style="color: hsl(120, 100%, 40%);">+        void x86emu_end_instr(void);</span><br><span style="color: hsl(120, 100%, 40%);">+  void x86emu_dump_regs(void);</span><br><span style="color: hsl(120, 100%, 40%);">+  void x86emu_dump_xregs(void);</span><br><span style="color: hsl(120, 100%, 40%);">+ void x86emu_print_int_vect(u16 iv);</span><br><span style="color: hsl(120, 100%, 40%);">+   void x86emu_instrument_instruction(void);</span><br><span style="color: hsl(120, 100%, 40%);">+     void x86emu_check_ip_access(void);</span><br><span style="color: hsl(120, 100%, 40%);">+    void x86emu_check_sp_access(void);</span><br><span style="color: hsl(120, 100%, 40%);">+    void x86emu_check_mem_access(u32 p);</span><br><span style="color: hsl(120, 100%, 40%);">+  void x86emu_check_data_access(uint s, uint o);</span><br><span> </span><br><span style="color: hsl(0, 100%, 40%);">-void disassemble_forward (u16 seg, u16 off, int n);</span><br><span style="color: hsl(120, 100%, 40%);">+ void disassemble_forward(u16 seg, u16 off, int n);</span><br><span> </span><br><span style="color: hsl(0, 100%, 40%);">-#ifdef  __cplusplus</span><br><span style="color: hsl(0, 100%, 40%);">-}                                              /* End of "C" linkage for C++         */</span><br><span style="color: hsl(120, 100%, 40%);">+#ifdef __cplusplus</span><br><span style="color: hsl(120, 100%, 40%);">+} /* End of "C" linkage for C++           */</span><br><span> #endif</span><br><span style="color: hsl(0, 100%, 40%);">-</span><br><span> #endif /* __X86EMU_DEBUG_H */</span><br><span>diff --git a/src/device/oprom/x86emu/decode.h b/src/device/oprom/x86emu/decode.h</span><br><span>index 99ed7f6..f8722c8 100644</span><br><span>--- a/src/device/oprom/x86emu/decode.h</span><br><span>+++ b/src/device/oprom/x86emu/decode.h</span><br><span>@@ -1,10 +1,10 @@</span><br><span> /****************************************************************************</span><br><span> *</span><br><span style="color: hsl(0, 100%, 40%);">-*                                               Realmode X86 Emulator Library</span><br><span style="color: hsl(120, 100%, 40%);">+*                        Realmode X86 Emulator Library</span><br><span> *</span><br><span style="color: hsl(0, 100%, 40%);">-*             Copyright (C) 1996-1999 SciTech Software, Inc.</span><br><span style="color: hsl(0, 100%, 40%);">-*                                      Copyright (C) David Mosberger-Tang</span><br><span style="color: hsl(0, 100%, 40%);">-*                                           Copyright (C) 1999 Egbert Eich</span><br><span style="color: hsl(120, 100%, 40%);">+*            Copyright (C) 1996-1999 SciTech Software, Inc.</span><br><span style="color: hsl(120, 100%, 40%);">+*               Copyright (C) David Mosberger-Tang</span><br><span style="color: hsl(120, 100%, 40%);">+*           Copyright (C) 1999 Egbert Eich</span><br><span> *</span><br><span> *  ========================================================================</span><br><span> *</span><br><span>@@ -28,11 +28,11 @@</span><br><span> *</span><br><span> *  ========================================================================</span><br><span> *</span><br><span style="color: hsl(0, 100%, 40%);">-* Language:               ANSI C</span><br><span style="color: hsl(120, 100%, 40%);">+* Language:     ANSI C</span><br><span> * Environment:        Any</span><br><span style="color: hsl(0, 100%, 40%);">-* Developer:    Kendall Bennett</span><br><span style="color: hsl(120, 100%, 40%);">+* Developer:        Kendall Bennett</span><br><span> *</span><br><span style="color: hsl(0, 100%, 40%);">-* Description:  Header file for instruction decoding logic.</span><br><span style="color: hsl(120, 100%, 40%);">+* Description: Header file for instruction decoding logic.</span><br><span> *</span><br><span> ****************************************************************************/</span><br><span> </span><br><span>@@ -43,46 +43,45 @@</span><br><span> </span><br><span> /* Instruction Decoding Stuff */</span><br><span> </span><br><span style="color: hsl(0, 100%, 40%);">-#define FETCH_DECODE_MODRM(mod,rh,rl)    fetch_decode_modrm(&mod,&rh,&rl)</span><br><span style="color: hsl(0, 100%, 40%);">-#define DECODE_RM_BYTE_REGISTER(r)          decode_rm_byte_register(r)</span><br><span style="color: hsl(0, 100%, 40%);">-#define DECODE_RM_WORD_REGISTER(r)            decode_rm_word_register(r)</span><br><span style="color: hsl(0, 100%, 40%);">-#define DECODE_RM_LONG_REGISTER(r)            decode_rm_long_register(r)</span><br><span style="color: hsl(0, 100%, 40%);">-#define DECODE_CLEAR_SEGOVR()                 M.x86.mode &= ~SYSMODE_CLRMASK</span><br><span style="color: hsl(120, 100%, 40%);">+#define FETCH_DECODE_MODRM(mod, rh, rl)     fetch_decode_modrm(&mod, &rh, &rl)</span><br><span style="color: hsl(120, 100%, 40%);">+#define DECODE_RM_BYTE_REGISTER(r)      decode_rm_byte_register(r)</span><br><span style="color: hsl(120, 100%, 40%);">+#define DECODE_RM_WORD_REGISTER(r)  decode_rm_word_register(r)</span><br><span style="color: hsl(120, 100%, 40%);">+#define DECODE_RM_LONG_REGISTER(r)  decode_rm_long_register(r)</span><br><span style="color: hsl(120, 100%, 40%);">+#define DECODE_CLEAR_SEGOVR()               M.x86.mode &= ~SYSMODE_CLRMASK</span><br><span> </span><br><span> /*-------------------------- Function Prototypes --------------------------*/</span><br><span> </span><br><span style="color: hsl(0, 100%, 40%);">-#ifdef  __cplusplus</span><br><span style="color: hsl(0, 100%, 40%);">-extern "C" {                                    /* Use "C" linkage when in C++ mode */</span><br><span style="color: hsl(120, 100%, 40%);">+#ifdef __cplusplus</span><br><span style="color: hsl(120, 100%, 40%);">+extern "C" {            /* Use "C" linkage when in C++ mode */</span><br><span> #endif</span><br><span> </span><br><span style="color: hsl(0, 100%, 40%);">-void      x86emu_intr_raise (u8 type);</span><br><span style="color: hsl(0, 100%, 40%);">-void    fetch_decode_modrm (int *mod,int *regh,int *regl);</span><br><span style="color: hsl(0, 100%, 40%);">-u8      fetch_byte_imm (void);</span><br><span style="color: hsl(0, 100%, 40%);">-u16     fetch_word_imm (void);</span><br><span style="color: hsl(0, 100%, 40%);">-u32     fetch_long_imm (void);</span><br><span style="color: hsl(0, 100%, 40%);">-u8      fetch_data_byte (uint offset);</span><br><span style="color: hsl(0, 100%, 40%);">-u8      fetch_data_byte_abs (uint segment, uint offset);</span><br><span style="color: hsl(0, 100%, 40%);">-u16     fetch_data_word (uint offset);</span><br><span style="color: hsl(0, 100%, 40%);">-u16     fetch_data_word_abs (uint segment, uint offset);</span><br><span style="color: hsl(0, 100%, 40%);">-u32     fetch_data_long (uint offset);</span><br><span style="color: hsl(0, 100%, 40%);">-u32     fetch_data_long_abs (uint segment, uint offset);</span><br><span style="color: hsl(0, 100%, 40%);">-void    store_data_byte (uint offset, u8 val);</span><br><span style="color: hsl(0, 100%, 40%);">-void    store_data_byte_abs (uint segment, uint offset, u8 val);</span><br><span style="color: hsl(0, 100%, 40%);">-void    store_data_word (uint offset, u16 val);</span><br><span style="color: hsl(0, 100%, 40%);">-void    store_data_word_abs (uint segment, uint offset, u16 val);</span><br><span style="color: hsl(0, 100%, 40%);">-void    store_data_long (uint offset, u32 val);</span><br><span style="color: hsl(0, 100%, 40%);">-void    store_data_long_abs (uint segment, uint offset, u32 val);</span><br><span style="color: hsl(0, 100%, 40%);">-u8*     decode_rm_byte_register(int reg);</span><br><span style="color: hsl(0, 100%, 40%);">-u16*   decode_rm_word_register(int reg);</span><br><span style="color: hsl(0, 100%, 40%);">-u32*   decode_rm_long_register(int reg);</span><br><span style="color: hsl(0, 100%, 40%);">-u16*   decode_rm_seg_register(int reg);</span><br><span style="color: hsl(0, 100%, 40%);">-unsigned decode_rm00_address(int rm);</span><br><span style="color: hsl(0, 100%, 40%);">-unsigned decode_rm01_address(int rm);</span><br><span style="color: hsl(0, 100%, 40%);">-unsigned decode_rm10_address(int rm);</span><br><span style="color: hsl(0, 100%, 40%);">-unsigned decode_rmXX_address(int mod, int rm);</span><br><span style="color: hsl(120, 100%, 40%);">+ void x86emu_intr_raise(u8 type);</span><br><span style="color: hsl(120, 100%, 40%);">+      void fetch_decode_modrm(int *mod, int *regh, int *regl);</span><br><span style="color: hsl(120, 100%, 40%);">+      u8 fetch_byte_imm(void);</span><br><span style="color: hsl(120, 100%, 40%);">+      u16 fetch_word_imm(void);</span><br><span style="color: hsl(120, 100%, 40%);">+     u32 fetch_long_imm(void);</span><br><span style="color: hsl(120, 100%, 40%);">+     u8 fetch_data_byte(uint offset);</span><br><span style="color: hsl(120, 100%, 40%);">+      u8 fetch_data_byte_abs(uint segment, uint offset);</span><br><span style="color: hsl(120, 100%, 40%);">+    u16 fetch_data_word(uint offset);</span><br><span style="color: hsl(120, 100%, 40%);">+     u16 fetch_data_word_abs(uint segment, uint offset);</span><br><span style="color: hsl(120, 100%, 40%);">+   u32 fetch_data_long(uint offset);</span><br><span style="color: hsl(120, 100%, 40%);">+     u32 fetch_data_long_abs(uint segment, uint offset);</span><br><span style="color: hsl(120, 100%, 40%);">+   void store_data_byte(uint offset, u8 val);</span><br><span style="color: hsl(120, 100%, 40%);">+    void store_data_byte_abs(uint segment, uint offset, u8 val);</span><br><span style="color: hsl(120, 100%, 40%);">+  void store_data_word(uint offset, u16 val);</span><br><span style="color: hsl(120, 100%, 40%);">+   void store_data_word_abs(uint segment, uint offset, u16 val);</span><br><span style="color: hsl(120, 100%, 40%);">+ void store_data_long(uint offset, u32 val);</span><br><span style="color: hsl(120, 100%, 40%);">+   void store_data_long_abs(uint segment, uint offset, u32 val);</span><br><span style="color: hsl(120, 100%, 40%);">+ u8 *decode_rm_byte_register(int reg);</span><br><span style="color: hsl(120, 100%, 40%);">+ u16 *decode_rm_word_register(int reg);</span><br><span style="color: hsl(120, 100%, 40%);">+        u32 *decode_rm_long_register(int reg);</span><br><span style="color: hsl(120, 100%, 40%);">+        u16 *decode_rm_seg_register(int reg);</span><br><span style="color: hsl(120, 100%, 40%);">+ unsigned decode_rm00_address(int rm);</span><br><span style="color: hsl(120, 100%, 40%);">+ unsigned decode_rm01_address(int rm);</span><br><span style="color: hsl(120, 100%, 40%);">+ unsigned decode_rm10_address(int rm);</span><br><span style="color: hsl(120, 100%, 40%);">+ unsigned decode_rmXX_address(int mod, int rm);</span><br><span> </span><br><span style="color: hsl(0, 100%, 40%);">-#ifdef  __cplusplus</span><br><span style="color: hsl(0, 100%, 40%);">-}                                          /* End of "C" linkage for C++         */</span><br><span style="color: hsl(120, 100%, 40%);">+#ifdef __cplusplus</span><br><span style="color: hsl(120, 100%, 40%);">+} /* End of "C" linkage for C++           */</span><br><span> #endif</span><br><span style="color: hsl(0, 100%, 40%);">-</span><br><span> #endif /* __X86EMU_DECODE_H */</span><br><span>diff --git a/src/device/oprom/x86emu/fpu.h b/src/device/oprom/x86emu/fpu.h</span><br><span>index 5fb2714..f42278e 100644</span><br><span>--- a/src/device/oprom/x86emu/fpu.h</span><br><span>+++ b/src/device/oprom/x86emu/fpu.h</span><br><span>@@ -1,10 +1,10 @@</span><br><span> /****************************************************************************</span><br><span> *</span><br><span style="color: hsl(0, 100%, 40%);">-*                                          Realmode X86 Emulator Library</span><br><span style="color: hsl(120, 100%, 40%);">+*                        Realmode X86 Emulator Library</span><br><span> *</span><br><span style="color: hsl(0, 100%, 40%);">-*             Copyright (C) 1996-1999 SciTech Software, Inc.</span><br><span style="color: hsl(0, 100%, 40%);">-*                                      Copyright (C) David Mosberger-Tang</span><br><span style="color: hsl(0, 100%, 40%);">-*                                           Copyright (C) 1999 Egbert Eich</span><br><span style="color: hsl(120, 100%, 40%);">+*            Copyright (C) 1996-1999 SciTech Software, Inc.</span><br><span style="color: hsl(120, 100%, 40%);">+*               Copyright (C) David Mosberger-Tang</span><br><span style="color: hsl(120, 100%, 40%);">+*           Copyright (C) 1999 Egbert Eich</span><br><span> *</span><br><span> *  ========================================================================</span><br><span> *</span><br><span>@@ -28,34 +28,33 @@</span><br><span> *</span><br><span> *  ========================================================================</span><br><span> *</span><br><span style="color: hsl(0, 100%, 40%);">-* Language:               ANSI C</span><br><span style="color: hsl(120, 100%, 40%);">+* Language:     ANSI C</span><br><span> * Environment:        Any</span><br><span style="color: hsl(0, 100%, 40%);">-* Developer:    Kendall Bennett</span><br><span style="color: hsl(120, 100%, 40%);">+* Developer:        Kendall Bennett</span><br><span> *</span><br><span style="color: hsl(0, 100%, 40%);">-* Description:  Header file for FPU instruction decoding.</span><br><span style="color: hsl(120, 100%, 40%);">+* Description:   Header file for FPU instruction decoding.</span><br><span> *</span><br><span> ****************************************************************************/</span><br><span> </span><br><span> #ifndef __X86EMU_FPU_H</span><br><span> #define __X86EMU_FPU_H</span><br><span> </span><br><span style="color: hsl(0, 100%, 40%);">-#ifdef  __cplusplus</span><br><span style="color: hsl(0, 100%, 40%);">-extern "C" {                                    /* Use "C" linkage when in C++ mode */</span><br><span style="color: hsl(120, 100%, 40%);">+#ifdef __cplusplus</span><br><span style="color: hsl(120, 100%, 40%);">+extern "C" {            /* Use "C" linkage when in C++ mode */</span><br><span> #endif</span><br><span> </span><br><span> /* these have to be defined, whether 8087 support compiled in or not. */</span><br><span> </span><br><span style="color: hsl(0, 100%, 40%);">-extern void x86emuOp_esc_coprocess_d8 (u8 op1);</span><br><span style="color: hsl(0, 100%, 40%);">-extern void x86emuOp_esc_coprocess_d9 (u8 op1);</span><br><span style="color: hsl(0, 100%, 40%);">-extern void x86emuOp_esc_coprocess_da (u8 op1);</span><br><span style="color: hsl(0, 100%, 40%);">-extern void x86emuOp_esc_coprocess_db (u8 op1);</span><br><span style="color: hsl(0, 100%, 40%);">-extern void x86emuOp_esc_coprocess_dc (u8 op1);</span><br><span style="color: hsl(0, 100%, 40%);">-extern void x86emuOp_esc_coprocess_dd (u8 op1);</span><br><span style="color: hsl(0, 100%, 40%);">-extern void x86emuOp_esc_coprocess_de (u8 op1);</span><br><span style="color: hsl(0, 100%, 40%);">-extern void x86emuOp_esc_coprocess_df (u8 op1);</span><br><span style="color: hsl(120, 100%, 40%);">+        extern void x86emuOp_esc_coprocess_d8(u8 op1);</span><br><span style="color: hsl(120, 100%, 40%);">+        extern void x86emuOp_esc_coprocess_d9(u8 op1);</span><br><span style="color: hsl(120, 100%, 40%);">+        extern void x86emuOp_esc_coprocess_da(u8 op1);</span><br><span style="color: hsl(120, 100%, 40%);">+        extern void x86emuOp_esc_coprocess_db(u8 op1);</span><br><span style="color: hsl(120, 100%, 40%);">+        extern void x86emuOp_esc_coprocess_dc(u8 op1);</span><br><span style="color: hsl(120, 100%, 40%);">+        extern void x86emuOp_esc_coprocess_dd(u8 op1);</span><br><span style="color: hsl(120, 100%, 40%);">+        extern void x86emuOp_esc_coprocess_de(u8 op1);</span><br><span style="color: hsl(120, 100%, 40%);">+        extern void x86emuOp_esc_coprocess_df(u8 op1);</span><br><span> </span><br><span style="color: hsl(0, 100%, 40%);">-#ifdef  __cplusplus</span><br><span style="color: hsl(0, 100%, 40%);">-}                                          /* End of "C" linkage for C++         */</span><br><span style="color: hsl(120, 100%, 40%);">+#ifdef __cplusplus</span><br><span style="color: hsl(120, 100%, 40%);">+} /* End of "C" linkage for C++           */</span><br><span> #endif</span><br><span style="color: hsl(0, 100%, 40%);">-</span><br><span> #endif /* __X86EMU_FPU_H */</span><br><span>diff --git a/src/device/oprom/x86emu/ops.h b/src/device/oprom/x86emu/ops.h</span><br><span>index 825b9ea..2bec80d 100644</span><br><span>--- a/src/device/oprom/x86emu/ops.h</span><br><span>+++ b/src/device/oprom/x86emu/ops.h</span><br><span>@@ -1,10 +1,10 @@</span><br><span> /****************************************************************************</span><br><span> *</span><br><span style="color: hsl(0, 100%, 40%);">-*                                             Realmode X86 Emulator Library</span><br><span style="color: hsl(120, 100%, 40%);">+*                        Realmode X86 Emulator Library</span><br><span> *</span><br><span style="color: hsl(0, 100%, 40%);">-*             Copyright (C) 1996-1999 SciTech Software, Inc.</span><br><span style="color: hsl(0, 100%, 40%);">-*                                      Copyright (C) David Mosberger-Tang</span><br><span style="color: hsl(0, 100%, 40%);">-*                                           Copyright (C) 1999 Egbert Eich</span><br><span style="color: hsl(120, 100%, 40%);">+*            Copyright (C) 1996-1999 SciTech Software, Inc.</span><br><span style="color: hsl(120, 100%, 40%);">+*               Copyright (C) David Mosberger-Tang</span><br><span style="color: hsl(120, 100%, 40%);">+*           Copyright (C) 1999 Egbert Eich</span><br><span> *</span><br><span> *  ========================================================================</span><br><span> *</span><br><span>@@ -28,19 +28,19 @@</span><br><span> *</span><br><span> *  ========================================================================</span><br><span> *</span><br><span style="color: hsl(0, 100%, 40%);">-* Language:               ANSI C</span><br><span style="color: hsl(120, 100%, 40%);">+* Language:     ANSI C</span><br><span> * Environment:        Any</span><br><span style="color: hsl(0, 100%, 40%);">-* Developer:    Kendall Bennett</span><br><span style="color: hsl(120, 100%, 40%);">+* Developer:        Kendall Bennett</span><br><span> *</span><br><span style="color: hsl(0, 100%, 40%);">-* Description:  Header file for operand decoding functions.</span><br><span style="color: hsl(120, 100%, 40%);">+* Description: Header file for operand decoding functions.</span><br><span> *</span><br><span> ****************************************************************************/</span><br><span> </span><br><span> #ifndef __X86EMU_OPS_H</span><br><span> #define __X86EMU_OPS_H</span><br><span> </span><br><span style="color: hsl(0, 100%, 40%);">-extern void (*x86emu_optab[0x100])(u8 op1);</span><br><span style="color: hsl(0, 100%, 40%);">-extern void (*x86emu_optab2[0x100])(u8 op2);</span><br><span style="color: hsl(120, 100%, 40%);">+extern void (*x86emu_optab[0x100]) (u8 op1);</span><br><span style="color: hsl(120, 100%, 40%);">+extern void (*x86emu_optab2[0x100]) (u8 op2);</span><br><span> </span><br><span> int x86emu_check_jump_condition(u8 op);</span><br><span> </span><br><span>diff --git a/src/device/oprom/x86emu/prim_asm.h b/src/device/oprom/x86emu/prim_asm.h</span><br><span>index e023cf8..20e5bcf 100644</span><br><span>--- a/src/device/oprom/x86emu/prim_asm.h</span><br><span>+++ b/src/device/oprom/x86emu/prim_asm.h</span><br><span>@@ -1,10 +1,10 @@</span><br><span> /****************************************************************************</span><br><span> *</span><br><span style="color: hsl(0, 100%, 40%);">-*                                            Realmode X86 Emulator Library</span><br><span style="color: hsl(120, 100%, 40%);">+*                        Realmode X86 Emulator Library</span><br><span> *</span><br><span style="color: hsl(0, 100%, 40%);">-*             Copyright (C) 1996-1999 SciTech Software, Inc.</span><br><span style="color: hsl(0, 100%, 40%);">-*                                      Copyright (C) David Mosberger-Tang</span><br><span style="color: hsl(0, 100%, 40%);">-*                                           Copyright (C) 1999 Egbert Eich</span><br><span style="color: hsl(120, 100%, 40%);">+*            Copyright (C) 1996-1999 SciTech Software, Inc.</span><br><span style="color: hsl(120, 100%, 40%);">+*               Copyright (C) David Mosberger-Tang</span><br><span style="color: hsl(120, 100%, 40%);">+*           Copyright (C) 1999 Egbert Eich</span><br><span> *</span><br><span> *  ========================================================================</span><br><span> *</span><br><span>@@ -28,15 +28,15 @@</span><br><span> *</span><br><span> *  ========================================================================</span><br><span> *</span><br><span style="color: hsl(0, 100%, 40%);">-* Language:               Watcom C++ 10.6 or later</span><br><span style="color: hsl(120, 100%, 40%);">+* Language:   Watcom C++ 10.6 or later</span><br><span> * Environment:      Any</span><br><span style="color: hsl(0, 100%, 40%);">-* Developer:    Kendall Bennett</span><br><span style="color: hsl(120, 100%, 40%);">+* Developer:        Kendall Bennett</span><br><span> *</span><br><span style="color: hsl(0, 100%, 40%);">-* Description:  Inline assembler versions of the primitive operand</span><br><span style="color: hsl(0, 100%, 40%);">-*                         functions for faster performance. At the moment this is</span><br><span style="color: hsl(0, 100%, 40%);">-*                                x86 inline assembler, but these functions could be replaced</span><br><span style="color: hsl(0, 100%, 40%);">-*                            with native inline assembler for each supported processor</span><br><span style="color: hsl(0, 100%, 40%);">-*                              platform.</span><br><span style="color: hsl(120, 100%, 40%);">+* Description:       Inline assembler versions of the primitive operand</span><br><span style="color: hsl(120, 100%, 40%);">+*           functions for faster performance. At the moment this is</span><br><span style="color: hsl(120, 100%, 40%);">+*              x86 inline assembler, but these functions could be replaced</span><br><span style="color: hsl(120, 100%, 40%);">+*          with native inline assembler for each supported processor</span><br><span style="color: hsl(120, 100%, 40%);">+*            platform.</span><br><span> *</span><br><span> ****************************************************************************/</span><br><span> </span><br><span>@@ -49,920 +49,920 @@</span><br><span> #define  __HAVE_INLINE_ASSEMBLER__</span><br><span> #endif</span><br><span> </span><br><span style="color: hsl(0, 100%, 40%);">-u32              get_flags_asm(void);</span><br><span style="color: hsl(0, 100%, 40%);">-#pragma aux get_flags_asm =                 \</span><br><span style="color: hsl(0, 100%, 40%);">-       "pushf"                         \</span><br><span style="color: hsl(0, 100%, 40%);">-     "pop       eax"                       \</span><br><span style="color: hsl(0, 100%, 40%);">-       value [eax]                     \</span><br><span style="color: hsl(120, 100%, 40%);">+u32 get_flags_asm(void);</span><br><span style="color: hsl(120, 100%, 40%);">+#pragma aux get_flags_asm =                \</span><br><span style="color: hsl(120, 100%, 40%);">+     "pushf"                               \</span><br><span style="color: hsl(120, 100%, 40%);">+     "pop       eax"                       \</span><br><span style="color: hsl(120, 100%, 40%);">+     value [eax]                     \</span><br><span>    modify exact [eax];</span><br><span> </span><br><span style="color: hsl(0, 100%, 40%);">-u16     aaa_word_asm(u32 *flags,u16 d);</span><br><span style="color: hsl(0, 100%, 40%);">-#pragma aux aaa_word_asm =                        \</span><br><span style="color: hsl(0, 100%, 40%);">-       "push      [edi]"                     \</span><br><span style="color: hsl(0, 100%, 40%);">-       "popf"                                \</span><br><span style="color: hsl(0, 100%, 40%);">-       "aaa"                                         \</span><br><span style="color: hsl(0, 100%, 40%);">-       "pushf"                         \</span><br><span style="color: hsl(0, 100%, 40%);">-     "pop       [edi]"                     \</span><br><span style="color: hsl(0, 100%, 40%);">-       parm [edi] [ax]                                 \</span><br><span style="color: hsl(0, 100%, 40%);">-       value [ax]                      \</span><br><span style="color: hsl(120, 100%, 40%);">+u16 aaa_word_asm(u32 *flags, u16 d);</span><br><span style="color: hsl(120, 100%, 40%);">+#pragma aux aaa_word_asm =             \</span><br><span style="color: hsl(120, 100%, 40%);">+     "push      [edi]"                     \</span><br><span style="color: hsl(120, 100%, 40%);">+     "popf"                                \</span><br><span style="color: hsl(120, 100%, 40%);">+     "aaa"                         \</span><br><span style="color: hsl(120, 100%, 40%);">+     "pushf"\</span><br><span style="color: hsl(120, 100%, 40%);">+    "pop       [edi]"                     \</span><br><span style="color: hsl(120, 100%, 40%);">+     parm [edi] [ax]                 \</span><br><span style="color: hsl(120, 100%, 40%);">+     value [ax]                      \</span><br><span>    modify exact [ax];</span><br><span> </span><br><span style="color: hsl(0, 100%, 40%);">-u16     aas_word_asm(u32 *flags,u16 d);</span><br><span style="color: hsl(0, 100%, 40%);">-#pragma aux aas_word_asm =                 \</span><br><span style="color: hsl(0, 100%, 40%);">-       "push      [edi]"                     \</span><br><span style="color: hsl(0, 100%, 40%);">-       "popf"                                \</span><br><span style="color: hsl(0, 100%, 40%);">-       "aas"                                         \</span><br><span style="color: hsl(0, 100%, 40%);">-       "pushf"                         \</span><br><span style="color: hsl(0, 100%, 40%);">-     "pop       [edi]"                     \</span><br><span style="color: hsl(0, 100%, 40%);">-       parm [edi] [ax]                                 \</span><br><span style="color: hsl(0, 100%, 40%);">-       value [ax]                      \</span><br><span style="color: hsl(120, 100%, 40%);">+u16 aas_word_asm(u32 *flags, u16 d);</span><br><span style="color: hsl(120, 100%, 40%);">+#pragma aux aas_word_asm =             \</span><br><span style="color: hsl(120, 100%, 40%);">+     "push      [edi]"                     \</span><br><span style="color: hsl(120, 100%, 40%);">+     "popf"                                \</span><br><span style="color: hsl(120, 100%, 40%);">+     "aas"                         \</span><br><span style="color: hsl(120, 100%, 40%);">+     "pushf"                               \</span><br><span style="color: hsl(120, 100%, 40%);">+     "pop       [edi]"                     \</span><br><span style="color: hsl(120, 100%, 40%);">+     parm [edi] [ax]                 \</span><br><span style="color: hsl(120, 100%, 40%);">+     value [ax]                      \</span><br><span>    modify exact [ax];</span><br><span> </span><br><span style="color: hsl(0, 100%, 40%);">-u16     aad_word_asm(u32 *flags,u16 d);</span><br><span style="color: hsl(0, 100%, 40%);">-#pragma aux aad_word_asm =                 \</span><br><span style="color: hsl(0, 100%, 40%);">-       "push      [edi]"                     \</span><br><span style="color: hsl(0, 100%, 40%);">-       "popf"                                \</span><br><span style="color: hsl(0, 100%, 40%);">-       "aad"                                         \</span><br><span style="color: hsl(0, 100%, 40%);">-       "pushf"                         \</span><br><span style="color: hsl(0, 100%, 40%);">-     "pop       [edi]"                     \</span><br><span style="color: hsl(0, 100%, 40%);">-       parm [edi] [ax]                                 \</span><br><span style="color: hsl(0, 100%, 40%);">-       value [ax]                      \</span><br><span style="color: hsl(120, 100%, 40%);">+u16 aad_word_asm(u32 *flags, u16 d);</span><br><span style="color: hsl(120, 100%, 40%);">+#pragma aux aad_word_asm =             \</span><br><span style="color: hsl(120, 100%, 40%);">+     "push      [edi]"                     \</span><br><span style="color: hsl(120, 100%, 40%);">+     "popf"                                \</span><br><span style="color: hsl(120, 100%, 40%);">+     "aad"                         \</span><br><span style="color: hsl(120, 100%, 40%);">+     "pushf"                               \</span><br><span style="color: hsl(120, 100%, 40%);">+     "pop       [edi]"                     \</span><br><span style="color: hsl(120, 100%, 40%);">+     parm [edi] [ax]                 \</span><br><span style="color: hsl(120, 100%, 40%);">+     value [ax]                      \</span><br><span>    modify exact [ax];</span><br><span> </span><br><span style="color: hsl(0, 100%, 40%);">-u16     aam_word_asm(u32 *flags,u8 d);</span><br><span style="color: hsl(0, 100%, 40%);">-#pragma aux aam_word_asm =                  \</span><br><span style="color: hsl(0, 100%, 40%);">-       "push      [edi]"                     \</span><br><span style="color: hsl(0, 100%, 40%);">-       "popf"                                \</span><br><span style="color: hsl(0, 100%, 40%);">-       "aam"                                         \</span><br><span style="color: hsl(0, 100%, 40%);">-       "pushf"                         \</span><br><span style="color: hsl(0, 100%, 40%);">-     "pop       [edi]"                     \</span><br><span style="color: hsl(0, 100%, 40%);">-       parm [edi] [al]                                 \</span><br><span style="color: hsl(0, 100%, 40%);">-       value [ax]                      \</span><br><span style="color: hsl(120, 100%, 40%);">+u16 aam_word_asm(u32 *flags, u8 d);</span><br><span style="color: hsl(120, 100%, 40%);">+#pragma aux aam_word_asm =              \</span><br><span style="color: hsl(120, 100%, 40%);">+     "push      [edi]"                     \</span><br><span style="color: hsl(120, 100%, 40%);">+     "popf"                                \</span><br><span style="color: hsl(120, 100%, 40%);">+     "aam"                         \</span><br><span style="color: hsl(120, 100%, 40%);">+     "pushf"                               \</span><br><span style="color: hsl(120, 100%, 40%);">+     "pop       [edi]"                     \</span><br><span style="color: hsl(120, 100%, 40%);">+     parm [edi] [al]                 \</span><br><span style="color: hsl(120, 100%, 40%);">+     value [ax]                      \</span><br><span>    modify exact [ax];</span><br><span> </span><br><span style="color: hsl(0, 100%, 40%);">-u8      adc_byte_asm(u32 *flags,u8 d, u8 s);</span><br><span style="color: hsl(0, 100%, 40%);">-#pragma aux adc_byte_asm =                    \</span><br><span style="color: hsl(0, 100%, 40%);">-       "push      [edi]"                     \</span><br><span style="color: hsl(0, 100%, 40%);">-       "popf"                                \</span><br><span style="color: hsl(0, 100%, 40%);">-       "adc       al,bl"                  \</span><br><span style="color: hsl(0, 100%, 40%);">-  "pushf"                         \</span><br><span style="color: hsl(0, 100%, 40%);">-     "pop       [edi]"                     \</span><br><span style="color: hsl(0, 100%, 40%);">-       parm [edi] [al] [bl]            \</span><br><span style="color: hsl(0, 100%, 40%);">-       value [al]                      \</span><br><span style="color: hsl(120, 100%, 40%);">+u8 adc_byte_asm(u32 *flags, u8 d, u8 s);</span><br><span style="color: hsl(120, 100%, 40%);">+#pragma aux adc_byte_asm =         \</span><br><span style="color: hsl(120, 100%, 40%);">+     "push      [edi]"                     \</span><br><span style="color: hsl(120, 100%, 40%);">+     "popf"                                \</span><br><span style="color: hsl(120, 100%, 40%);">+     "adc       al,bl"                     \</span><br><span style="color: hsl(120, 100%, 40%);">+     "pushf"                               \</span><br><span style="color: hsl(120, 100%, 40%);">+     "pop       [edi]"                     \</span><br><span style="color: hsl(120, 100%, 40%);">+     parm [edi] [al] [bl]            \</span><br><span style="color: hsl(120, 100%, 40%);">+     value [al]                      \</span><br><span>    modify exact [al bl];</span><br><span> </span><br><span style="color: hsl(0, 100%, 40%);">-u16     adc_word_asm(u32 *flags,u16 d, u16 s);</span><br><span style="color: hsl(0, 100%, 40%);">-#pragma aux adc_word_asm =                       \</span><br><span style="color: hsl(0, 100%, 40%);">-       "push      [edi]"                     \</span><br><span style="color: hsl(0, 100%, 40%);">-       "popf"                                \</span><br><span style="color: hsl(0, 100%, 40%);">-       "adc       ax,bx"                  \</span><br><span style="color: hsl(0, 100%, 40%);">-  "pushf"                         \</span><br><span style="color: hsl(0, 100%, 40%);">-     "pop       [edi]"                     \</span><br><span style="color: hsl(0, 100%, 40%);">-       parm [edi] [ax] [bx]            \</span><br><span style="color: hsl(0, 100%, 40%);">-       value [ax]                      \</span><br><span style="color: hsl(120, 100%, 40%);">+u16 adc_word_asm(u32 *flags, u16 d, u16 s);</span><br><span style="color: hsl(120, 100%, 40%);">+#pragma aux adc_word_asm =              \</span><br><span style="color: hsl(120, 100%, 40%);">+     "push      [edi]"                     \</span><br><span style="color: hsl(120, 100%, 40%);">+     "popf"                                \</span><br><span style="color: hsl(120, 100%, 40%);">+     "adc       ax,bx"                     \</span><br><span style="color: hsl(120, 100%, 40%);">+     "pushf"                               \</span><br><span style="color: hsl(120, 100%, 40%);">+     "pop       [edi]"                     \</span><br><span style="color: hsl(120, 100%, 40%);">+     parm [edi] [ax] [bx]            \</span><br><span style="color: hsl(120, 100%, 40%);">+     value [ax]                      \</span><br><span>    modify exact [ax bx];</span><br><span> </span><br><span style="color: hsl(0, 100%, 40%);">-u32     adc_long_asm(u32 *flags,u32 d, u32 s);</span><br><span style="color: hsl(0, 100%, 40%);">-#pragma aux adc_long_asm =                       \</span><br><span style="color: hsl(0, 100%, 40%);">-       "push      [edi]"                     \</span><br><span style="color: hsl(0, 100%, 40%);">-       "popf"                                \</span><br><span style="color: hsl(0, 100%, 40%);">-       "adc       eax,ebx"                \</span><br><span style="color: hsl(0, 100%, 40%);">-  "pushf"                         \</span><br><span style="color: hsl(0, 100%, 40%);">-     "pop       [edi]"                     \</span><br><span style="color: hsl(0, 100%, 40%);">-       parm [edi] [eax] [ebx]          \</span><br><span style="color: hsl(0, 100%, 40%);">-       value [eax]                     \</span><br><span style="color: hsl(120, 100%, 40%);">+u32 adc_long_asm(u32 *flags, u32 d, u32 s);</span><br><span style="color: hsl(120, 100%, 40%);">+#pragma aux adc_long_asm =              \</span><br><span style="color: hsl(120, 100%, 40%);">+     "push      [edi]"                     \</span><br><span style="color: hsl(120, 100%, 40%);">+     "popf"                                \</span><br><span style="color: hsl(120, 100%, 40%);">+     "adc       eax,ebx"           \</span><br><span style="color: hsl(120, 100%, 40%);">+     "pushf"                               \</span><br><span style="color: hsl(120, 100%, 40%);">+     "pop       [edi]"                     \</span><br><span style="color: hsl(120, 100%, 40%);">+     parm [edi] [eax] [ebx]          \</span><br><span style="color: hsl(120, 100%, 40%);">+     value [eax]                     \</span><br><span>    modify exact [eax ebx];</span><br><span> </span><br><span style="color: hsl(0, 100%, 40%);">-u8      add_byte_asm(u32 *flags,u8 d, u8 s);</span><br><span style="color: hsl(0, 100%, 40%);">-#pragma aux add_byte_asm =                       \</span><br><span style="color: hsl(0, 100%, 40%);">-       "push      [edi]"                     \</span><br><span style="color: hsl(0, 100%, 40%);">-       "popf"                                \</span><br><span style="color: hsl(0, 100%, 40%);">-       "add       al,bl"                  \</span><br><span style="color: hsl(0, 100%, 40%);">-  "pushf"                         \</span><br><span style="color: hsl(0, 100%, 40%);">-     "pop       [edi]"                     \</span><br><span style="color: hsl(0, 100%, 40%);">-       parm [edi] [al] [bl]            \</span><br><span style="color: hsl(0, 100%, 40%);">-       value [al]                      \</span><br><span style="color: hsl(120, 100%, 40%);">+u8 add_byte_asm(u32 *flags, u8 d, u8 s);</span><br><span style="color: hsl(120, 100%, 40%);">+#pragma aux add_byte_asm =         \</span><br><span style="color: hsl(120, 100%, 40%);">+     "push      [edi]"                     \</span><br><span style="color: hsl(120, 100%, 40%);">+     "popf"                                \</span><br><span style="color: hsl(120, 100%, 40%);">+     "add       al,bl"                     \</span><br><span style="color: hsl(120, 100%, 40%);">+     "pushf"                               \</span><br><span style="color: hsl(120, 100%, 40%);">+     "pop       [edi]"                     \</span><br><span style="color: hsl(120, 100%, 40%);">+     parm [edi] [al] [bl]            \</span><br><span style="color: hsl(120, 100%, 40%);">+     value [al]                      \</span><br><span>    modify exact [al bl];</span><br><span> </span><br><span style="color: hsl(0, 100%, 40%);">-u16     add_word_asm(u32 *flags,u16 d, u16 s);</span><br><span style="color: hsl(0, 100%, 40%);">-#pragma aux add_word_asm =                       \</span><br><span style="color: hsl(0, 100%, 40%);">-       "push      [edi]"                     \</span><br><span style="color: hsl(0, 100%, 40%);">-       "popf"                                \</span><br><span style="color: hsl(0, 100%, 40%);">-       "add       ax,bx"                  \</span><br><span style="color: hsl(0, 100%, 40%);">-  "pushf"                         \</span><br><span style="color: hsl(0, 100%, 40%);">-     "pop       [edi]"                     \</span><br><span style="color: hsl(0, 100%, 40%);">-       parm [edi] [ax] [bx]            \</span><br><span style="color: hsl(0, 100%, 40%);">-       value [ax]                      \</span><br><span style="color: hsl(120, 100%, 40%);">+u16 add_word_asm(u32 *flags, u16 d, u16 s);</span><br><span style="color: hsl(120, 100%, 40%);">+#pragma aux add_word_asm =              \</span><br><span style="color: hsl(120, 100%, 40%);">+     "push      [edi]"                     \</span><br><span style="color: hsl(120, 100%, 40%);">+     "popf"                                \</span><br><span style="color: hsl(120, 100%, 40%);">+     "add       ax,bx"                     \</span><br><span style="color: hsl(120, 100%, 40%);">+     "pushf"                               \</span><br><span style="color: hsl(120, 100%, 40%);">+     "pop       [edi]"                     \</span><br><span style="color: hsl(120, 100%, 40%);">+     parm [edi] [ax] [bx]            \</span><br><span style="color: hsl(120, 100%, 40%);">+     value [ax]                      \</span><br><span>    modify exact [ax bx];</span><br><span> </span><br><span style="color: hsl(0, 100%, 40%);">-u32     add_long_asm(u32 *flags,u32 d, u32 s);</span><br><span style="color: hsl(0, 100%, 40%);">-#pragma aux add_long_asm =                       \</span><br><span style="color: hsl(0, 100%, 40%);">-       "push      [edi]"                     \</span><br><span style="color: hsl(0, 100%, 40%);">-       "popf"                                \</span><br><span style="color: hsl(0, 100%, 40%);">-       "add       eax,ebx"                \</span><br><span style="color: hsl(0, 100%, 40%);">-  "pushf"                         \</span><br><span style="color: hsl(0, 100%, 40%);">-     "pop       [edi]"                     \</span><br><span style="color: hsl(0, 100%, 40%);">-       parm [edi] [eax] [ebx]          \</span><br><span style="color: hsl(0, 100%, 40%);">-       value [eax]                     \</span><br><span style="color: hsl(120, 100%, 40%);">+u32 add_long_asm(u32 *flags, u32 d, u32 s);</span><br><span style="color: hsl(120, 100%, 40%);">+#pragma aux add_long_asm =              \</span><br><span style="color: hsl(120, 100%, 40%);">+     "push      [edi]"                     \</span><br><span style="color: hsl(120, 100%, 40%);">+     "popf"                                \</span><br><span style="color: hsl(120, 100%, 40%);">+     "add       eax,ebx"           \</span><br><span style="color: hsl(120, 100%, 40%);">+     "pushf"                               \</span><br><span style="color: hsl(120, 100%, 40%);">+     "pop       [edi]"                     \</span><br><span style="color: hsl(120, 100%, 40%);">+     parm [edi] [eax] [ebx]          \</span><br><span style="color: hsl(120, 100%, 40%);">+     value [eax]                     \</span><br><span>    modify exact [eax ebx];</span><br><span> </span><br><span style="color: hsl(0, 100%, 40%);">-u8      and_byte_asm(u32 *flags,u8 d, u8 s);</span><br><span style="color: hsl(0, 100%, 40%);">-#pragma aux and_byte_asm =                       \</span><br><span style="color: hsl(0, 100%, 40%);">-       "push      [edi]"                     \</span><br><span style="color: hsl(0, 100%, 40%);">-       "popf"                                \</span><br><span style="color: hsl(0, 100%, 40%);">-       "and       al,bl"                  \</span><br><span style="color: hsl(0, 100%, 40%);">-  "pushf"                         \</span><br><span style="color: hsl(0, 100%, 40%);">-     "pop       [edi]"                     \</span><br><span style="color: hsl(0, 100%, 40%);">-       parm [edi] [al] [bl]            \</span><br><span style="color: hsl(0, 100%, 40%);">-       value [al]                      \</span><br><span style="color: hsl(120, 100%, 40%);">+u8 and_byte_asm(u32 *flags, u8 d, u8 s);</span><br><span style="color: hsl(120, 100%, 40%);">+#pragma aux and_byte_asm =         \</span><br><span style="color: hsl(120, 100%, 40%);">+     "push      [edi]"                     \</span><br><span style="color: hsl(120, 100%, 40%);">+     "popf"                                \</span><br><span style="color: hsl(120, 100%, 40%);">+     "and       al,bl"                     \</span><br><span style="color: hsl(120, 100%, 40%);">+     "pushf"                               \</span><br><span style="color: hsl(120, 100%, 40%);">+     "pop       [edi]"                     \</span><br><span style="color: hsl(120, 100%, 40%);">+     parm [edi] [al] [bl]            \</span><br><span style="color: hsl(120, 100%, 40%);">+     value [al]                      \</span><br><span>    modify exact [al bl];</span><br><span> </span><br><span style="color: hsl(0, 100%, 40%);">-u16     and_word_asm(u32 *flags,u16 d, u16 s);</span><br><span style="color: hsl(0, 100%, 40%);">-#pragma aux and_word_asm =                       \</span><br><span style="color: hsl(0, 100%, 40%);">-       "push      [edi]"                     \</span><br><span style="color: hsl(0, 100%, 40%);">-       "popf"                                \</span><br><span style="color: hsl(0, 100%, 40%);">-       "and       ax,bx"                  \</span><br><span style="color: hsl(0, 100%, 40%);">-  "pushf"                         \</span><br><span style="color: hsl(0, 100%, 40%);">-     "pop       [edi]"                     \</span><br><span style="color: hsl(0, 100%, 40%);">-       parm [edi] [ax] [bx]            \</span><br><span style="color: hsl(0, 100%, 40%);">-       value [ax]                      \</span><br><span style="color: hsl(120, 100%, 40%);">+u16 and_word_asm(u32 *flags, u16 d, u16 s);</span><br><span style="color: hsl(120, 100%, 40%);">+#pragma aux and_word_asm =              \</span><br><span style="color: hsl(120, 100%, 40%);">+     "push      [edi]"                     \</span><br><span style="color: hsl(120, 100%, 40%);">+     "popf"                                \</span><br><span style="color: hsl(120, 100%, 40%);">+     "and       ax,bx"                     \</span><br><span style="color: hsl(120, 100%, 40%);">+     "pushf"                               \</span><br><span style="color: hsl(120, 100%, 40%);">+     "pop       [edi]"                     \</span><br><span style="color: hsl(120, 100%, 40%);">+     parm [edi] [ax] [bx]            \</span><br><span style="color: hsl(120, 100%, 40%);">+     value [ax]                      \</span><br><span>    modify exact [ax bx];</span><br><span> </span><br><span style="color: hsl(0, 100%, 40%);">-u32     and_long_asm(u32 *flags,u32 d, u32 s);</span><br><span style="color: hsl(0, 100%, 40%);">-#pragma aux and_long_asm =                       \</span><br><span style="color: hsl(0, 100%, 40%);">-       "push      [edi]"                     \</span><br><span style="color: hsl(0, 100%, 40%);">-       "popf"                                \</span><br><span style="color: hsl(0, 100%, 40%);">-       "and       eax,ebx"                \</span><br><span style="color: hsl(0, 100%, 40%);">-  "pushf"                         \</span><br><span style="color: hsl(0, 100%, 40%);">-     "pop       [edi]"                     \</span><br><span style="color: hsl(0, 100%, 40%);">-       parm [edi] [eax] [ebx]          \</span><br><span style="color: hsl(0, 100%, 40%);">-       value [eax]                     \</span><br><span style="color: hsl(120, 100%, 40%);">+u32 and_long_asm(u32 *flags, u32 d, u32 s);</span><br><span style="color: hsl(120, 100%, 40%);">+#pragma aux and_long_asm =              \</span><br><span style="color: hsl(120, 100%, 40%);">+     "push      [edi]"                     \</span><br><span style="color: hsl(120, 100%, 40%);">+     "popf"                                \</span><br><span style="color: hsl(120, 100%, 40%);">+     "and       eax,ebx"           \</span><br><span style="color: hsl(120, 100%, 40%);">+     "pushf"                               \</span><br><span style="color: hsl(120, 100%, 40%);">+     "pop       [edi]"                     \</span><br><span style="color: hsl(120, 100%, 40%);">+     parm [edi] [eax] [ebx]          \</span><br><span style="color: hsl(120, 100%, 40%);">+     value [eax]                     \</span><br><span>    modify exact [eax ebx];</span><br><span> </span><br><span style="color: hsl(0, 100%, 40%);">-u8      cmp_byte_asm(u32 *flags,u8 d, u8 s);</span><br><span style="color: hsl(0, 100%, 40%);">-#pragma aux cmp_byte_asm =                       \</span><br><span style="color: hsl(0, 100%, 40%);">-       "push      [edi]"                     \</span><br><span style="color: hsl(0, 100%, 40%);">-       "popf"                                \</span><br><span style="color: hsl(0, 100%, 40%);">-       "cmp       al,bl"                  \</span><br><span style="color: hsl(0, 100%, 40%);">-  "pushf"                         \</span><br><span style="color: hsl(0, 100%, 40%);">-     "pop       [edi]"                     \</span><br><span style="color: hsl(0, 100%, 40%);">-       parm [edi] [al] [bl]            \</span><br><span style="color: hsl(0, 100%, 40%);">-       value [al]                      \</span><br><span style="color: hsl(120, 100%, 40%);">+u8 cmp_byte_asm(u32 *flags, u8 d, u8 s);</span><br><span style="color: hsl(120, 100%, 40%);">+#pragma aux cmp_byte_asm =         \</span><br><span style="color: hsl(120, 100%, 40%);">+     "push      [edi]"                     \</span><br><span style="color: hsl(120, 100%, 40%);">+     "popf"                                \</span><br><span style="color: hsl(120, 100%, 40%);">+     "cmp       al,bl"                     \</span><br><span style="color: hsl(120, 100%, 40%);">+     "pushf"                               \</span><br><span style="color: hsl(120, 100%, 40%);">+     "pop       [edi]"                     \</span><br><span style="color: hsl(120, 100%, 40%);">+     parm [edi] [al] [bl]            \</span><br><span style="color: hsl(120, 100%, 40%);">+     value [al]                      \</span><br><span>    modify exact [al bl];</span><br><span> </span><br><span style="color: hsl(0, 100%, 40%);">-u16     cmp_word_asm(u32 *flags,u16 d, u16 s);</span><br><span style="color: hsl(0, 100%, 40%);">-#pragma aux cmp_word_asm =                       \</span><br><span style="color: hsl(0, 100%, 40%);">-       "push      [edi]"                     \</span><br><span style="color: hsl(0, 100%, 40%);">-       "popf"                                \</span><br><span style="color: hsl(0, 100%, 40%);">-       "cmp       ax,bx"                  \</span><br><span style="color: hsl(0, 100%, 40%);">-  "pushf"                         \</span><br><span style="color: hsl(0, 100%, 40%);">-     "pop       [edi]"                     \</span><br><span style="color: hsl(0, 100%, 40%);">-       parm [edi] [ax] [bx]            \</span><br><span style="color: hsl(0, 100%, 40%);">-       value [ax]                      \</span><br><span style="color: hsl(120, 100%, 40%);">+u16 cmp_word_asm(u32 *flags, u16 d, u16 s);</span><br><span style="color: hsl(120, 100%, 40%);">+#pragma aux cmp_word_asm =              \</span><br><span style="color: hsl(120, 100%, 40%);">+     "push      [edi]"                     \</span><br><span style="color: hsl(120, 100%, 40%);">+     "popf"                                \</span><br><span style="color: hsl(120, 100%, 40%);">+     "cmp       ax,bx"                     \</span><br><span style="color: hsl(120, 100%, 40%);">+     "pushf"                               \</span><br><span style="color: hsl(120, 100%, 40%);">+     "pop       [edi]"                     \</span><br><span style="color: hsl(120, 100%, 40%);">+     parm [edi] [ax] [bx]            \</span><br><span style="color: hsl(120, 100%, 40%);">+     value [ax]                      \</span><br><span>    modify exact [ax bx];</span><br><span> </span><br><span style="color: hsl(0, 100%, 40%);">-u32     cmp_long_asm(u32 *flags,u32 d, u32 s);</span><br><span style="color: hsl(0, 100%, 40%);">-#pragma aux cmp_long_asm =                       \</span><br><span style="color: hsl(0, 100%, 40%);">-       "push      [edi]"                     \</span><br><span style="color: hsl(0, 100%, 40%);">-       "popf"                                \</span><br><span style="color: hsl(0, 100%, 40%);">-       "cmp       eax,ebx"                \</span><br><span style="color: hsl(0, 100%, 40%);">-  "pushf"                         \</span><br><span style="color: hsl(0, 100%, 40%);">-     "pop       [edi]"                     \</span><br><span style="color: hsl(0, 100%, 40%);">-       parm [edi] [eax] [ebx]          \</span><br><span style="color: hsl(0, 100%, 40%);">-       value [eax]                     \</span><br><span style="color: hsl(120, 100%, 40%);">+u32 cmp_long_asm(u32 *flags, u32 d, u32 s);</span><br><span style="color: hsl(120, 100%, 40%);">+#pragma aux cmp_long_asm =              \</span><br><span style="color: hsl(120, 100%, 40%);">+     "push      [edi]"                     \</span><br><span style="color: hsl(120, 100%, 40%);">+     "popf"                                \</span><br><span style="color: hsl(120, 100%, 40%);">+     "cmp       eax,ebx"           \</span><br><span style="color: hsl(120, 100%, 40%);">+     "pushf"                               \</span><br><span style="color: hsl(120, 100%, 40%);">+     "pop       [edi]"                     \</span><br><span style="color: hsl(120, 100%, 40%);">+     parm [edi] [eax] [ebx]          \</span><br><span style="color: hsl(120, 100%, 40%);">+     value [eax]                     \</span><br><span>    modify exact [eax ebx];</span><br><span> </span><br><span style="color: hsl(0, 100%, 40%);">-u8      daa_byte_asm(u32 *flags,u8 d);</span><br><span style="color: hsl(0, 100%, 40%);">-#pragma aux daa_byte_asm =                     \</span><br><span style="color: hsl(0, 100%, 40%);">-       "push      [edi]"                     \</span><br><span style="color: hsl(0, 100%, 40%);">-       "popf"                                \</span><br><span style="color: hsl(0, 100%, 40%);">-       "daa"                                         \</span><br><span style="color: hsl(0, 100%, 40%);">-       "pushf"                         \</span><br><span style="color: hsl(0, 100%, 40%);">-     "pop       [edi]"                     \</span><br><span style="color: hsl(0, 100%, 40%);">-       parm [edi] [al]                         \</span><br><span style="color: hsl(0, 100%, 40%);">-       value [al]                      \</span><br><span style="color: hsl(120, 100%, 40%);">+u8 daa_byte_asm(u32 *flags, u8 d);</span><br><span style="color: hsl(120, 100%, 40%);">+#pragma aux daa_byte_asm =               \</span><br><span style="color: hsl(120, 100%, 40%);">+     "push      [edi]"                     \</span><br><span style="color: hsl(120, 100%, 40%);">+     "popf"                                \</span><br><span style="color: hsl(120, 100%, 40%);">+     "daa"                         \</span><br><span style="color: hsl(120, 100%, 40%);">+     "pushf"                               \</span><br><span style="color: hsl(120, 100%, 40%);">+     "pop       [edi]"                     \</span><br><span style="color: hsl(120, 100%, 40%);">+     parm [edi] [al]                 \</span><br><span style="color: hsl(120, 100%, 40%);">+     value [al]                      \</span><br><span>    modify exact [al];</span><br><span> </span><br><span style="color: hsl(0, 100%, 40%);">-u8      das_byte_asm(u32 *flags,u8 d);</span><br><span style="color: hsl(0, 100%, 40%);">-#pragma aux das_byte_asm =                  \</span><br><span style="color: hsl(0, 100%, 40%);">-       "push      [edi]"                     \</span><br><span style="color: hsl(0, 100%, 40%);">-       "popf"                                \</span><br><span style="color: hsl(0, 100%, 40%);">-       "das"                                         \</span><br><span style="color: hsl(0, 100%, 40%);">-       "pushf"                         \</span><br><span style="color: hsl(0, 100%, 40%);">-     "pop       [edi]"                     \</span><br><span style="color: hsl(0, 100%, 40%);">-       parm [edi] [al]                         \</span><br><span style="color: hsl(0, 100%, 40%);">-       value [al]                      \</span><br><span style="color: hsl(120, 100%, 40%);">+u8 das_byte_asm(u32 *flags, u8 d);</span><br><span style="color: hsl(120, 100%, 40%);">+#pragma aux das_byte_asm =               \</span><br><span style="color: hsl(120, 100%, 40%);">+     "push      [edi]"                     \</span><br><span style="color: hsl(120, 100%, 40%);">+     "popf"                                \</span><br><span style="color: hsl(120, 100%, 40%);">+     "das"                         \</span><br><span style="color: hsl(120, 100%, 40%);">+     "pushf"                               \</span><br><span style="color: hsl(120, 100%, 40%);">+     "pop       [edi]"                     \</span><br><span style="color: hsl(120, 100%, 40%);">+     parm [edi] [al]                 \</span><br><span style="color: hsl(120, 100%, 40%);">+     value [al]                      \</span><br><span>    modify exact [al];</span><br><span> </span><br><span style="color: hsl(0, 100%, 40%);">-u8      dec_byte_asm(u32 *flags,u8 d);</span><br><span style="color: hsl(0, 100%, 40%);">-#pragma aux dec_byte_asm =                  \</span><br><span style="color: hsl(0, 100%, 40%);">-       "push      [edi]"                     \</span><br><span style="color: hsl(0, 100%, 40%);">-       "popf"                                \</span><br><span style="color: hsl(0, 100%, 40%);">-       "dec       al"                        \</span><br><span style="color: hsl(0, 100%, 40%);">-       "pushf"                         \</span><br><span style="color: hsl(0, 100%, 40%);">-     "pop       [edi]"                     \</span><br><span style="color: hsl(0, 100%, 40%);">-       parm [edi] [al]                         \</span><br><span style="color: hsl(0, 100%, 40%);">-       value [al]                      \</span><br><span style="color: hsl(120, 100%, 40%);">+u8 dec_byte_asm(u32 *flags, u8 d);</span><br><span style="color: hsl(120, 100%, 40%);">+#pragma aux dec_byte_asm =               \</span><br><span style="color: hsl(120, 100%, 40%);">+     "push      [edi]"                     \</span><br><span style="color: hsl(120, 100%, 40%);">+     "popf"                                \</span><br><span style="color: hsl(120, 100%, 40%);">+     "dec       al"                        \</span><br><span style="color: hsl(120, 100%, 40%);">+     "pushf"                               \</span><br><span style="color: hsl(120, 100%, 40%);">+     "pop       [edi]"                     \</span><br><span style="color: hsl(120, 100%, 40%);">+     parm [edi] [al]                 \</span><br><span style="color: hsl(120, 100%, 40%);">+     value [al]                      \</span><br><span>    modify exact [al];</span><br><span> </span><br><span style="color: hsl(0, 100%, 40%);">-u16     dec_word_asm(u32 *flags,u16 d);</span><br><span style="color: hsl(0, 100%, 40%);">-#pragma aux dec_word_asm =                 \</span><br><span style="color: hsl(0, 100%, 40%);">-       "push      [edi]"                     \</span><br><span style="color: hsl(0, 100%, 40%);">-       "popf"                                \</span><br><span style="color: hsl(0, 100%, 40%);">-       "dec       ax"                        \</span><br><span style="color: hsl(0, 100%, 40%);">-       "pushf"                         \</span><br><span style="color: hsl(0, 100%, 40%);">-     "pop       [edi]"                     \</span><br><span style="color: hsl(0, 100%, 40%);">-       parm [edi] [ax]                         \</span><br><span style="color: hsl(0, 100%, 40%);">-       value [ax]                      \</span><br><span style="color: hsl(120, 100%, 40%);">+u16 dec_word_asm(u32 *flags, u16 d);</span><br><span style="color: hsl(120, 100%, 40%);">+#pragma aux dec_word_asm =             \</span><br><span style="color: hsl(120, 100%, 40%);">+     "push      [edi]"                     \</span><br><span style="color: hsl(120, 100%, 40%);">+     "popf"                                \</span><br><span style="color: hsl(120, 100%, 40%);">+     "dec       ax"                        \</span><br><span style="color: hsl(120, 100%, 40%);">+     "pushf"                               \</span><br><span style="color: hsl(120, 100%, 40%);">+     "pop       [edi]"                     \</span><br><span style="color: hsl(120, 100%, 40%);">+     parm [edi] [ax]                 \</span><br><span style="color: hsl(120, 100%, 40%);">+     value [ax]                      \</span><br><span>    modify exact [ax];</span><br><span> </span><br><span style="color: hsl(0, 100%, 40%);">-u32     dec_long_asm(u32 *flags,u32 d);</span><br><span style="color: hsl(0, 100%, 40%);">-#pragma aux dec_long_asm =                 \</span><br><span style="color: hsl(0, 100%, 40%);">-       "push      [edi]"                     \</span><br><span style="color: hsl(0, 100%, 40%);">-       "popf"                                \</span><br><span style="color: hsl(0, 100%, 40%);">-       "dec       eax"                       \</span><br><span style="color: hsl(0, 100%, 40%);">-       "pushf"                         \</span><br><span style="color: hsl(0, 100%, 40%);">-     "pop       [edi]"                     \</span><br><span style="color: hsl(0, 100%, 40%);">-       parm [edi] [eax]                        \</span><br><span style="color: hsl(0, 100%, 40%);">-       value [eax]                     \</span><br><span style="color: hsl(120, 100%, 40%);">+u32 dec_long_asm(u32 *flags, u32 d);</span><br><span style="color: hsl(120, 100%, 40%);">+#pragma aux dec_long_asm =             \</span><br><span style="color: hsl(120, 100%, 40%);">+     "push      [edi]"                     \</span><br><span style="color: hsl(120, 100%, 40%);">+     "popf"                                \</span><br><span style="color: hsl(120, 100%, 40%);">+     "dec       eax"                       \</span><br><span style="color: hsl(120, 100%, 40%);">+     "pushf"                               \</span><br><span style="color: hsl(120, 100%, 40%);">+     "pop       [edi]"                     \</span><br><span style="color: hsl(120, 100%, 40%);">+     parm [edi] [eax]                \</span><br><span style="color: hsl(120, 100%, 40%);">+     value [eax]                     \</span><br><span>    modify exact [eax];</span><br><span> </span><br><span style="color: hsl(0, 100%, 40%);">-u8      inc_byte_asm(u32 *flags,u8 d);</span><br><span style="color: hsl(0, 100%, 40%);">-#pragma aux inc_byte_asm =                 \</span><br><span style="color: hsl(0, 100%, 40%);">-       "push      [edi]"                     \</span><br><span style="color: hsl(0, 100%, 40%);">-       "popf"                                \</span><br><span style="color: hsl(0, 100%, 40%);">-       "inc       al"                        \</span><br><span style="color: hsl(0, 100%, 40%);">-       "pushf"                         \</span><br><span style="color: hsl(0, 100%, 40%);">-     "pop       [edi]"                     \</span><br><span style="color: hsl(0, 100%, 40%);">-       parm [edi] [al]                         \</span><br><span style="color: hsl(0, 100%, 40%);">-       value [al]                      \</span><br><span style="color: hsl(120, 100%, 40%);">+u8 inc_byte_asm(u32 *flags, u8 d);</span><br><span style="color: hsl(120, 100%, 40%);">+#pragma aux inc_byte_asm =               \</span><br><span style="color: hsl(120, 100%, 40%);">+     "push      [edi]"                     \</span><br><span style="color: hsl(120, 100%, 40%);">+     "popf"                                \</span><br><span style="color: hsl(120, 100%, 40%);">+     "inc       al"                        \</span><br><span style="color: hsl(120, 100%, 40%);">+     "pushf"                               \</span><br><span style="color: hsl(120, 100%, 40%);">+     "pop       [edi]"                     \</span><br><span style="color: hsl(120, 100%, 40%);">+     parm [edi] [al]                 \</span><br><span style="color: hsl(120, 100%, 40%);">+     value [al]                      \</span><br><span>    modify exact [al];</span><br><span> </span><br><span style="color: hsl(0, 100%, 40%);">-u16     inc_word_asm(u32 *flags,u16 d);</span><br><span style="color: hsl(0, 100%, 40%);">-#pragma aux inc_word_asm =                 \</span><br><span style="color: hsl(0, 100%, 40%);">-       "push      [edi]"                     \</span><br><span style="color: hsl(0, 100%, 40%);">-       "popf"                                \</span><br><span style="color: hsl(0, 100%, 40%);">-       "inc       ax"                        \</span><br><span style="color: hsl(0, 100%, 40%);">-       "pushf"                         \</span><br><span style="color: hsl(0, 100%, 40%);">-     "pop       [edi]"                     \</span><br><span style="color: hsl(0, 100%, 40%);">-       parm [edi] [ax]                         \</span><br><span style="color: hsl(0, 100%, 40%);">-       value [ax]                      \</span><br><span style="color: hsl(120, 100%, 40%);">+u16 inc_word_asm(u32 *flags, u16 d);</span><br><span style="color: hsl(120, 100%, 40%);">+#pragma aux inc_word_asm =             \</span><br><span style="color: hsl(120, 100%, 40%);">+     "push      [edi]"                     \</span><br><span style="color: hsl(120, 100%, 40%);">+     "popf"                                \</span><br><span style="color: hsl(120, 100%, 40%);">+     "inc       ax"                        \</span><br><span style="color: hsl(120, 100%, 40%);">+     "pushf"                               \</span><br><span style="color: hsl(120, 100%, 40%);">+     "pop       [edi]"                     \</span><br><span style="color: hsl(120, 100%, 40%);">+     parm [edi] [ax]                 \</span><br><span style="color: hsl(120, 100%, 40%);">+     value [ax]                      \</span><br><span>    modify exact [ax];</span><br><span> </span><br><span style="color: hsl(0, 100%, 40%);">-u32     inc_long_asm(u32 *flags,u32 d);</span><br><span style="color: hsl(0, 100%, 40%);">-#pragma aux inc_long_asm =                 \</span><br><span style="color: hsl(0, 100%, 40%);">-       "push      [edi]"                     \</span><br><span style="color: hsl(0, 100%, 40%);">-       "popf"                                \</span><br><span style="color: hsl(0, 100%, 40%);">-       "inc       eax"                       \</span><br><span style="color: hsl(0, 100%, 40%);">-       "pushf"                         \</span><br><span style="color: hsl(0, 100%, 40%);">-     "pop       [edi]"                     \</span><br><span style="color: hsl(0, 100%, 40%);">-       parm [edi] [eax]                        \</span><br><span style="color: hsl(0, 100%, 40%);">-       value [eax]                     \</span><br><span style="color: hsl(120, 100%, 40%);">+u32 inc_long_asm(u32 *flags, u32 d);</span><br><span style="color: hsl(120, 100%, 40%);">+#pragma aux inc_long_asm =             \</span><br><span style="color: hsl(120, 100%, 40%);">+     "push      [edi]"                     \</span><br><span style="color: hsl(120, 100%, 40%);">+     "popf"                                \</span><br><span style="color: hsl(120, 100%, 40%);">+     "inc       eax"                       \</span><br><span style="color: hsl(120, 100%, 40%);">+     "pushf"                               \</span><br><span style="color: hsl(120, 100%, 40%);">+     "pop       [edi]"                     \</span><br><span style="color: hsl(120, 100%, 40%);">+     parm [edi] [eax]                \</span><br><span style="color: hsl(120, 100%, 40%);">+     value [eax]                     \</span><br><span>    modify exact [eax];</span><br><span> </span><br><span style="color: hsl(0, 100%, 40%);">-u8      or_byte_asm(u32 *flags,u8 d, u8 s);</span><br><span style="color: hsl(0, 100%, 40%);">-#pragma aux or_byte_asm =                     \</span><br><span style="color: hsl(0, 100%, 40%);">-       "push      [edi]"                     \</span><br><span style="color: hsl(0, 100%, 40%);">-       "popf"                                \</span><br><span style="color: hsl(0, 100%, 40%);">-       "or        al,bl"                     \</span><br><span style="color: hsl(0, 100%, 40%);">-       "pushf"                         \</span><br><span style="color: hsl(0, 100%, 40%);">-     "pop       [edi]"                     \</span><br><span style="color: hsl(0, 100%, 40%);">-       parm [edi] [al] [bl]            \</span><br><span style="color: hsl(0, 100%, 40%);">-       value [al]                      \</span><br><span style="color: hsl(120, 100%, 40%);">+u8 or_byte_asm(u32 *flags, u8 d, u8 s);</span><br><span style="color: hsl(120, 100%, 40%);">+#pragma aux or_byte_asm =           \</span><br><span style="color: hsl(120, 100%, 40%);">+     "push      [edi]"                     \</span><br><span style="color: hsl(120, 100%, 40%);">+     "popf"                                \</span><br><span style="color: hsl(120, 100%, 40%);">+     "or        al,bl"                     \</span><br><span style="color: hsl(120, 100%, 40%);">+     "pushf"                               \</span><br><span style="color: hsl(120, 100%, 40%);">+     "pop       [edi]"                     \</span><br><span style="color: hsl(120, 100%, 40%);">+     parm [edi] [al] [bl]            \</span><br><span style="color: hsl(120, 100%, 40%);">+     value [al]                      \</span><br><span>    modify exact [al bl];</span><br><span> </span><br><span style="color: hsl(0, 100%, 40%);">-u16     or_word_asm(u32 *flags,u16 d, u16 s);</span><br><span style="color: hsl(0, 100%, 40%);">-#pragma aux or_word_asm =                 \</span><br><span style="color: hsl(0, 100%, 40%);">-       "push      [edi]"                     \</span><br><span style="color: hsl(0, 100%, 40%);">-       "popf"                                \</span><br><span style="color: hsl(0, 100%, 40%);">-       "or        ax,bx"                     \</span><br><span style="color: hsl(0, 100%, 40%);">-       "pushf"                         \</span><br><span style="color: hsl(0, 100%, 40%);">-     "pop       [edi]"                     \</span><br><span style="color: hsl(0, 100%, 40%);">-       parm [edi] [ax] [bx]            \</span><br><span style="color: hsl(0, 100%, 40%);">-       value [ax]                      \</span><br><span style="color: hsl(120, 100%, 40%);">+u16 or_word_asm(u32 *flags, u16 d, u16 s);</span><br><span style="color: hsl(120, 100%, 40%);">+#pragma aux or_word_asm =                \</span><br><span style="color: hsl(120, 100%, 40%);">+     "push      [edi]"                     \</span><br><span style="color: hsl(120, 100%, 40%);">+     "popf"                                \</span><br><span style="color: hsl(120, 100%, 40%);">+     "or        ax,bx"                     \</span><br><span style="color: hsl(120, 100%, 40%);">+     "pushf"                               \</span><br><span style="color: hsl(120, 100%, 40%);">+     "pop       [edi]"                     \</span><br><span style="color: hsl(120, 100%, 40%);">+     parm [edi] [ax] [bx]            \</span><br><span style="color: hsl(120, 100%, 40%);">+     value [ax]                      \</span><br><span>    modify exact [ax bx];</span><br><span> </span><br><span style="color: hsl(0, 100%, 40%);">-u32     or_long_asm(u32 *flags,u32 d, u32 s);</span><br><span style="color: hsl(0, 100%, 40%);">-#pragma aux or_long_asm =                 \</span><br><span style="color: hsl(0, 100%, 40%);">-       "push      [edi]"                     \</span><br><span style="color: hsl(0, 100%, 40%);">-       "popf"                                \</span><br><span style="color: hsl(0, 100%, 40%);">-       "or        eax,ebx"                   \</span><br><span style="color: hsl(0, 100%, 40%);">-       "pushf"                         \</span><br><span style="color: hsl(0, 100%, 40%);">-     "pop       [edi]"                     \</span><br><span style="color: hsl(0, 100%, 40%);">-       parm [edi] [eax] [ebx]          \</span><br><span style="color: hsl(0, 100%, 40%);">-       value [eax]                     \</span><br><span style="color: hsl(120, 100%, 40%);">+u32 or_long_asm(u32 *flags, u32 d, u32 s);</span><br><span style="color: hsl(120, 100%, 40%);">+#pragma aux or_long_asm =                \</span><br><span style="color: hsl(120, 100%, 40%);">+     "push      [edi]"                     \</span><br><span style="color: hsl(120, 100%, 40%);">+     "popf"                                \</span><br><span style="color: hsl(120, 100%, 40%);">+     "or        eax,ebx"           \</span><br><span style="color: hsl(120, 100%, 40%);">+     "pushf"                               \</span><br><span style="color: hsl(120, 100%, 40%);">+     "pop       [edi]"                     \</span><br><span style="color: hsl(120, 100%, 40%);">+     parm [edi] [eax] [ebx]          \</span><br><span style="color: hsl(120, 100%, 40%);">+     value [eax]                     \</span><br><span>    modify exact [eax ebx];</span><br><span> </span><br><span style="color: hsl(0, 100%, 40%);">-u8      neg_byte_asm(u32 *flags,u8 d);</span><br><span style="color: hsl(0, 100%, 40%);">-#pragma aux neg_byte_asm =                     \</span><br><span style="color: hsl(0, 100%, 40%);">-       "push      [edi]"                     \</span><br><span style="color: hsl(0, 100%, 40%);">-       "popf"                                \</span><br><span style="color: hsl(0, 100%, 40%);">-       "neg       al"                        \</span><br><span style="color: hsl(0, 100%, 40%);">-       "pushf"                         \</span><br><span style="color: hsl(0, 100%, 40%);">-     "pop       [edi]"                     \</span><br><span style="color: hsl(0, 100%, 40%);">-       parm [edi] [al]                         \</span><br><span style="color: hsl(0, 100%, 40%);">-       value [al]                      \</span><br><span style="color: hsl(120, 100%, 40%);">+u8 neg_byte_asm(u32 *flags, u8 d);</span><br><span style="color: hsl(120, 100%, 40%);">+#pragma aux neg_byte_asm =               \</span><br><span style="color: hsl(120, 100%, 40%);">+     "push      [edi]"                     \</span><br><span style="color: hsl(120, 100%, 40%);">+     "popf"                                \</span><br><span style="color: hsl(120, 100%, 40%);">+     "neg       al"                        \</span><br><span style="color: hsl(120, 100%, 40%);">+     "pushf"                               \</span><br><span style="color: hsl(120, 100%, 40%);">+     "pop       [edi]"                     \</span><br><span style="color: hsl(120, 100%, 40%);">+     parm [edi] [al]                 \</span><br><span style="color: hsl(120, 100%, 40%);">+     value [al]                      \</span><br><span>    modify exact [al];</span><br><span> </span><br><span style="color: hsl(0, 100%, 40%);">-u16     neg_word_asm(u32 *flags,u16 d);</span><br><span style="color: hsl(0, 100%, 40%);">-#pragma aux neg_word_asm =                 \</span><br><span style="color: hsl(0, 100%, 40%);">-       "push      [edi]"                     \</span><br><span style="color: hsl(0, 100%, 40%);">-       "popf"                                \</span><br><span style="color: hsl(0, 100%, 40%);">-       "neg       ax"                        \</span><br><span style="color: hsl(0, 100%, 40%);">-       "pushf"                         \</span><br><span style="color: hsl(0, 100%, 40%);">-     "pop       [edi]"                     \</span><br><span style="color: hsl(0, 100%, 40%);">-       parm [edi] [ax]                         \</span><br><span style="color: hsl(0, 100%, 40%);">-       value [ax]                      \</span><br><span style="color: hsl(120, 100%, 40%);">+u16 neg_word_asm(u32 *flags, u16 d);</span><br><span style="color: hsl(120, 100%, 40%);">+#pragma aux neg_word_asm =             \</span><br><span style="color: hsl(120, 100%, 40%);">+     "push      [edi]"                     \</span><br><span style="color: hsl(120, 100%, 40%);">+     "popf"                                \</span><br><span style="color: hsl(120, 100%, 40%);">+     "neg       ax"                        \</span><br><span style="color: hsl(120, 100%, 40%);">+     "pushf"                               \</span><br><span style="color: hsl(120, 100%, 40%);">+     "pop       [edi]"                     \</span><br><span style="color: hsl(120, 100%, 40%);">+     parm [edi] [ax]                 \</span><br><span style="color: hsl(120, 100%, 40%);">+     value [ax]                      \</span><br><span>    modify exact [ax];</span><br><span> </span><br><span style="color: hsl(0, 100%, 40%);">-u32     neg_long_asm(u32 *flags,u32 d);</span><br><span style="color: hsl(0, 100%, 40%);">-#pragma aux neg_long_asm =                 \</span><br><span style="color: hsl(0, 100%, 40%);">-       "push      [edi]"                     \</span><br><span style="color: hsl(0, 100%, 40%);">-       "popf"                                \</span><br><span style="color: hsl(0, 100%, 40%);">-       "neg       eax"                       \</span><br><span style="color: hsl(0, 100%, 40%);">-       "pushf"                         \</span><br><span style="color: hsl(0, 100%, 40%);">-     "pop       [edi]"                     \</span><br><span style="color: hsl(0, 100%, 40%);">-       parm [edi] [eax]                        \</span><br><span style="color: hsl(0, 100%, 40%);">-       value [eax]                     \</span><br><span style="color: hsl(120, 100%, 40%);">+u32 neg_long_asm(u32 *flags, u32 d);</span><br><span style="color: hsl(120, 100%, 40%);">+#pragma aux neg_long_asm =             \</span><br><span style="color: hsl(120, 100%, 40%);">+     "push      [edi]"                     \</span><br><span style="color: hsl(120, 100%, 40%);">+     "popf"                                \</span><br><span style="color: hsl(120, 100%, 40%);">+     "neg       eax"                       \</span><br><span style="color: hsl(120, 100%, 40%);">+     "pushf"                               \</span><br><span style="color: hsl(120, 100%, 40%);">+     "pop       [edi]"                     \</span><br><span style="color: hsl(120, 100%, 40%);">+     parm [edi] [eax]                \</span><br><span style="color: hsl(120, 100%, 40%);">+     value [eax]                     \</span><br><span>    modify exact [eax];</span><br><span> </span><br><span style="color: hsl(0, 100%, 40%);">-u8      not_byte_asm(u32 *flags,u8 d);</span><br><span style="color: hsl(0, 100%, 40%);">-#pragma aux not_byte_asm =                 \</span><br><span style="color: hsl(0, 100%, 40%);">-       "push      [edi]"                     \</span><br><span style="color: hsl(0, 100%, 40%);">-       "popf"                                \</span><br><span style="color: hsl(0, 100%, 40%);">-       "not       al"                        \</span><br><span style="color: hsl(0, 100%, 40%);">-       "pushf"                         \</span><br><span style="color: hsl(0, 100%, 40%);">-     "pop       [edi]"                     \</span><br><span style="color: hsl(0, 100%, 40%);">-       parm [edi] [al]                         \</span><br><span style="color: hsl(0, 100%, 40%);">-       value [al]                      \</span><br><span style="color: hsl(120, 100%, 40%);">+u8 not_byte_asm(u32 *flags, u8 d);</span><br><span style="color: hsl(120, 100%, 40%);">+#pragma aux not_byte_asm =               \</span><br><span style="color: hsl(120, 100%, 40%);">+     "push      [edi]"                     \</span><br><span style="color: hsl(120, 100%, 40%);">+     "popf"                                \</span><br><span style="color: hsl(120, 100%, 40%);">+     "not       al"                        \</span><br><span style="color: hsl(120, 100%, 40%);">+     "pushf"                               \</span><br><span style="color: hsl(120, 100%, 40%);">+     "pop       [edi]"                     \</span><br><span style="color: hsl(120, 100%, 40%);">+     parm [edi] [al]                 \</span><br><span style="color: hsl(120, 100%, 40%);">+     value [al]                      \</span><br><span>    modify exact [al];</span><br><span> </span><br><span style="color: hsl(0, 100%, 40%);">-u16     not_word_asm(u32 *flags,u16 d);</span><br><span style="color: hsl(0, 100%, 40%);">-#pragma aux not_word_asm =                 \</span><br><span style="color: hsl(0, 100%, 40%);">-       "push      [edi]"                     \</span><br><span style="color: hsl(0, 100%, 40%);">-       "popf"                                \</span><br><span style="color: hsl(0, 100%, 40%);">-       "not       ax"                        \</span><br><span style="color: hsl(0, 100%, 40%);">-       "pushf"                         \</span><br><span style="color: hsl(0, 100%, 40%);">-     "pop       [edi]"                     \</span><br><span style="color: hsl(0, 100%, 40%);">-       parm [edi] [ax]                         \</span><br><span style="color: hsl(0, 100%, 40%);">-       value [ax]                      \</span><br><span style="color: hsl(120, 100%, 40%);">+u16 not_word_asm(u32 *flags, u16 d);</span><br><span style="color: hsl(120, 100%, 40%);">+#pragma aux not_word_asm =             \</span><br><span style="color: hsl(120, 100%, 40%);">+     "push      [edi]"                     \</span><br><span style="color: hsl(120, 100%, 40%);">+     "popf"                                \</span><br><span style="color: hsl(120, 100%, 40%);">+     "not       ax"                        \</span><br><span style="color: hsl(120, 100%, 40%);">+     "pushf"                               \</span><br><span style="color: hsl(120, 100%, 40%);">+     "pop       [edi]"                     \</span><br><span style="color: hsl(120, 100%, 40%);">+     parm [edi] [ax]                 \</span><br><span style="color: hsl(120, 100%, 40%);">+     value [ax]                      \</span><br><span>    modify exact [ax];</span><br><span> </span><br><span style="color: hsl(0, 100%, 40%);">-u32     not_long_asm(u32 *flags,u32 d);</span><br><span style="color: hsl(0, 100%, 40%);">-#pragma aux not_long_asm =                 \</span><br><span style="color: hsl(0, 100%, 40%);">-       "push      [edi]"                     \</span><br><span style="color: hsl(0, 100%, 40%);">-       "popf"                                \</span><br><span style="color: hsl(0, 100%, 40%);">-       "not       eax"                       \</span><br><span style="color: hsl(0, 100%, 40%);">-       "pushf"                         \</span><br><span style="color: hsl(0, 100%, 40%);">-     "pop       [edi]"                     \</span><br><span style="color: hsl(0, 100%, 40%);">-       parm [edi] [eax]                        \</span><br><span style="color: hsl(0, 100%, 40%);">-       value [eax]                     \</span><br><span style="color: hsl(120, 100%, 40%);">+u32 not_long_asm(u32 *flags, u32 d);</span><br><span style="color: hsl(120, 100%, 40%);">+#pragma aux not_long_asm =             \</span><br><span style="color: hsl(120, 100%, 40%);">+     "push      [edi]"                     \</span><br><span style="color: hsl(120, 100%, 40%);">+     "popf"                                \</span><br><span style="color: hsl(120, 100%, 40%);">+     "not       eax"                       \</span><br><span style="color: hsl(120, 100%, 40%);">+     "pushf"                               \</span><br><span style="color: hsl(120, 100%, 40%);">+     "pop       [edi]"                     \</span><br><span style="color: hsl(120, 100%, 40%);">+     parm [edi] [eax]                \</span><br><span style="color: hsl(120, 100%, 40%);">+     value [eax]                     \</span><br><span>    modify exact [eax];</span><br><span> </span><br><span style="color: hsl(0, 100%, 40%);">-u8      rcl_byte_asm(u32 *flags,u8 d, u8 s);</span><br><span style="color: hsl(0, 100%, 40%);">-#pragma aux rcl_byte_asm =                   \</span><br><span style="color: hsl(0, 100%, 40%);">-       "push      [edi]"                     \</span><br><span style="color: hsl(0, 100%, 40%);">-       "popf"                                \</span><br><span style="color: hsl(0, 100%, 40%);">-       "rcl       al,cl"                  \</span><br><span style="color: hsl(0, 100%, 40%);">-  "pushf"                         \</span><br><span style="color: hsl(0, 100%, 40%);">-     "pop       [edi]"                     \</span><br><span style="color: hsl(0, 100%, 40%);">-       parm [edi] [al] [cl]            \</span><br><span style="color: hsl(0, 100%, 40%);">-       value [al]                      \</span><br><span style="color: hsl(120, 100%, 40%);">+u8 rcl_byte_asm(u32 *flags, u8 d, u8 s);</span><br><span style="color: hsl(120, 100%, 40%);">+#pragma aux rcl_byte_asm =         \</span><br><span style="color: hsl(120, 100%, 40%);">+     "push      [edi]"                     \</span><br><span style="color: hsl(120, 100%, 40%);">+     "popf"                                \</span><br><span style="color: hsl(120, 100%, 40%);">+     "rcl       al,cl"                     \</span><br><span style="color: hsl(120, 100%, 40%);">+     "pushf"                               \</span><br><span style="color: hsl(120, 100%, 40%);">+     "pop       [edi]"                     \</span><br><span style="color: hsl(120, 100%, 40%);">+     parm [edi] [al] [cl]            \</span><br><span style="color: hsl(120, 100%, 40%);">+     value [al]                      \</span><br><span>    modify exact [al cl];</span><br><span> </span><br><span style="color: hsl(0, 100%, 40%);">-u16     rcl_word_asm(u32 *flags,u16 d, u8 s);</span><br><span style="color: hsl(0, 100%, 40%);">-#pragma aux rcl_word_asm =                        \</span><br><span style="color: hsl(0, 100%, 40%);">-       "push      [edi]"                     \</span><br><span style="color: hsl(0, 100%, 40%);">-       "popf"                                \</span><br><span style="color: hsl(0, 100%, 40%);">-       "rcl       ax,cl"                  \</span><br><span style="color: hsl(0, 100%, 40%);">-  "pushf"                         \</span><br><span style="color: hsl(0, 100%, 40%);">-     "pop       [edi]"                     \</span><br><span style="color: hsl(0, 100%, 40%);">-       parm [edi] [ax] [cl]            \</span><br><span style="color: hsl(0, 100%, 40%);">-       value [ax]                      \</span><br><span style="color: hsl(120, 100%, 40%);">+u16 rcl_word_asm(u32 *flags, u16 d, u8 s);</span><br><span style="color: hsl(120, 100%, 40%);">+#pragma aux rcl_word_asm =               \</span><br><span style="color: hsl(120, 100%, 40%);">+     "push      [edi]"                     \</span><br><span style="color: hsl(120, 100%, 40%);">+     "popf"                                \</span><br><span style="color: hsl(120, 100%, 40%);">+     "rcl       ax,cl"                     \</span><br><span style="color: hsl(120, 100%, 40%);">+     "pushf"                               \</span><br><span style="color: hsl(120, 100%, 40%);">+     "pop       [edi]"                     \</span><br><span style="color: hsl(120, 100%, 40%);">+     parm [edi] [ax] [cl]            \</span><br><span style="color: hsl(120, 100%, 40%);">+     value [ax]                      \</span><br><span>    modify exact [ax cl];</span><br><span> </span><br><span style="color: hsl(0, 100%, 40%);">-u32     rcl_long_asm(u32 *flags,u32 d, u8 s);</span><br><span style="color: hsl(0, 100%, 40%);">-#pragma aux rcl_long_asm =                        \</span><br><span style="color: hsl(0, 100%, 40%);">-       "push      [edi]"                     \</span><br><span style="color: hsl(0, 100%, 40%);">-       "popf"                                \</span><br><span style="color: hsl(0, 100%, 40%);">-       "rcl       eax,cl"                    \</span><br><span style="color: hsl(0, 100%, 40%);">-       "pushf"                         \</span><br><span style="color: hsl(0, 100%, 40%);">-     "pop       [edi]"                     \</span><br><span style="color: hsl(0, 100%, 40%);">-       parm [edi] [eax] [cl]           \</span><br><span style="color: hsl(0, 100%, 40%);">-       value [eax]                     \</span><br><span style="color: hsl(120, 100%, 40%);">+u32 rcl_long_asm(u32 *flags, u32 d, u8 s);</span><br><span style="color: hsl(120, 100%, 40%);">+#pragma aux rcl_long_asm =               \</span><br><span style="color: hsl(120, 100%, 40%);">+     "push      [edi]"                     \</span><br><span style="color: hsl(120, 100%, 40%);">+     "popf"                                \</span><br><span style="color: hsl(120, 100%, 40%);">+     "rcl       eax,cl"                    \</span><br><span style="color: hsl(120, 100%, 40%);">+     "pushf"                               \</span><br><span style="color: hsl(120, 100%, 40%);">+     "pop       [edi]"                     \</span><br><span style="color: hsl(120, 100%, 40%);">+     parm [edi] [eax] [cl]           \</span><br><span style="color: hsl(120, 100%, 40%);">+     value [eax]                     \</span><br><span>    modify exact [eax cl];</span><br><span> </span><br><span style="color: hsl(0, 100%, 40%);">-u8      rcr_byte_asm(u32 *flags,u8 d, u8 s);</span><br><span style="color: hsl(0, 100%, 40%);">-#pragma aux rcr_byte_asm =                        \</span><br><span style="color: hsl(0, 100%, 40%);">-       "push      [edi]"                     \</span><br><span style="color: hsl(0, 100%, 40%);">-       "popf"                                \</span><br><span style="color: hsl(0, 100%, 40%);">-       "rcr       al,cl"                  \</span><br><span style="color: hsl(0, 100%, 40%);">-  "pushf"                         \</span><br><span style="color: hsl(0, 100%, 40%);">-     "pop       [edi]"                     \</span><br><span style="color: hsl(0, 100%, 40%);">-       parm [edi] [al] [cl]            \</span><br><span style="color: hsl(0, 100%, 40%);">-       value [al]                      \</span><br><span style="color: hsl(120, 100%, 40%);">+u8 rcr_byte_asm(u32 *flags, u8 d, u8 s);</span><br><span style="color: hsl(120, 100%, 40%);">+#pragma aux rcr_byte_asm =         \</span><br><span style="color: hsl(120, 100%, 40%);">+     "push      [edi]"                     \</span><br><span style="color: hsl(120, 100%, 40%);">+     "popf"                                \</span><br><span style="color: hsl(120, 100%, 40%);">+     "rcr       al,cl"                     \</span><br><span style="color: hsl(120, 100%, 40%);">+     "pushf"                               \</span><br><span style="color: hsl(120, 100%, 40%);">+     "pop       [edi]"                     \</span><br><span style="color: hsl(120, 100%, 40%);">+     parm [edi] [al] [cl]            \</span><br><span style="color: hsl(120, 100%, 40%);">+     value [al]                      \</span><br><span>    modify exact [al cl];</span><br><span> </span><br><span style="color: hsl(0, 100%, 40%);">-u16     rcr_word_asm(u32 *flags,u16 d, u8 s);</span><br><span style="color: hsl(0, 100%, 40%);">-#pragma aux rcr_word_asm =                        \</span><br><span style="color: hsl(0, 100%, 40%);">-       "push      [edi]"                     \</span><br><span style="color: hsl(0, 100%, 40%);">-       "popf"                                \</span><br><span style="color: hsl(0, 100%, 40%);">-       "rcr       ax,cl"                  \</span><br><span style="color: hsl(0, 100%, 40%);">-  "pushf"                         \</span><br><span style="color: hsl(0, 100%, 40%);">-     "pop       [edi]"                     \</span><br><span style="color: hsl(0, 100%, 40%);">-       parm [edi] [ax] [cl]            \</span><br><span style="color: hsl(0, 100%, 40%);">-       value [ax]                      \</span><br><span style="color: hsl(120, 100%, 40%);">+u16 rcr_word_asm(u32 *flags, u16 d, u8 s);</span><br><span style="color: hsl(120, 100%, 40%);">+#pragma aux rcr_word_asm =               \</span><br><span style="color: hsl(120, 100%, 40%);">+     "push      [edi]"                     \</span><br><span style="color: hsl(120, 100%, 40%);">+     "popf"                                \</span><br><span style="color: hsl(120, 100%, 40%);">+     "rcr       ax,cl"                     \</span><br><span style="color: hsl(120, 100%, 40%);">+     "pushf"                               \</span><br><span style="color: hsl(120, 100%, 40%);">+     "pop       [edi]"                     \</span><br><span style="color: hsl(120, 100%, 40%);">+     parm [edi] [ax] [cl]            \</span><br><span style="color: hsl(120, 100%, 40%);">+     value [ax]                      \</span><br><span>    modify exact [ax cl];</span><br><span> </span><br><span style="color: hsl(0, 100%, 40%);">-u32     rcr_long_asm(u32 *flags,u32 d, u8 s);</span><br><span style="color: hsl(0, 100%, 40%);">-#pragma aux rcr_long_asm =                        \</span><br><span style="color: hsl(0, 100%, 40%);">-       "push      [edi]"                     \</span><br><span style="color: hsl(0, 100%, 40%);">-       "popf"                                \</span><br><span style="color: hsl(0, 100%, 40%);">-       "rcr       eax,cl"                    \</span><br><span style="color: hsl(0, 100%, 40%);">-       "pushf"                         \</span><br><span style="color: hsl(0, 100%, 40%);">-     "pop       [edi]"                     \</span><br><span style="color: hsl(0, 100%, 40%);">-       parm [edi] [eax] [cl]           \</span><br><span style="color: hsl(0, 100%, 40%);">-       value [eax]                     \</span><br><span style="color: hsl(120, 100%, 40%);">+u32 rcr_long_asm(u32 *flags, u32 d, u8 s);</span><br><span style="color: hsl(120, 100%, 40%);">+#pragma aux rcr_long_asm =               \</span><br><span style="color: hsl(120, 100%, 40%);">+     "push      [edi]"                     \</span><br><span style="color: hsl(120, 100%, 40%);">+     "popf"                                \</span><br><span style="color: hsl(120, 100%, 40%);">+     "rcr       eax,cl"                    \</span><br><span style="color: hsl(120, 100%, 40%);">+     "pushf"                               \</span><br><span style="color: hsl(120, 100%, 40%);">+     "pop       [edi]"                     \</span><br><span style="color: hsl(120, 100%, 40%);">+     parm [edi] [eax] [cl]           \</span><br><span style="color: hsl(120, 100%, 40%);">+     value [eax]                     \</span><br><span>    modify exact [eax cl];</span><br><span> </span><br><span style="color: hsl(0, 100%, 40%);">-u8      rol_byte_asm(u32 *flags,u8 d, u8 s);</span><br><span style="color: hsl(0, 100%, 40%);">-#pragma aux rol_byte_asm =                        \</span><br><span style="color: hsl(0, 100%, 40%);">-       "push      [edi]"                     \</span><br><span style="color: hsl(0, 100%, 40%);">-       "popf"                                \</span><br><span style="color: hsl(0, 100%, 40%);">-       "rol       al,cl"                  \</span><br><span style="color: hsl(0, 100%, 40%);">-  "pushf"                         \</span><br><span style="color: hsl(0, 100%, 40%);">-     "pop       [edi]"                     \</span><br><span style="color: hsl(0, 100%, 40%);">-       parm [edi] [al] [cl]            \</span><br><span style="color: hsl(0, 100%, 40%);">-       value [al]                      \</span><br><span style="color: hsl(120, 100%, 40%);">+u8 rol_byte_asm(u32 *flags, u8 d, u8 s);</span><br><span style="color: hsl(120, 100%, 40%);">+#pragma aux rol_byte_asm =         \</span><br><span style="color: hsl(120, 100%, 40%);">+     "push      [edi]"                     \</span><br><span style="color: hsl(120, 100%, 40%);">+     "popf"                                \</span><br><span style="color: hsl(120, 100%, 40%);">+     "rol       al,cl"                     \</span><br><span style="color: hsl(120, 100%, 40%);">+     "pushf"                               \</span><br><span style="color: hsl(120, 100%, 40%);">+     "pop       [edi]"                     \</span><br><span style="color: hsl(120, 100%, 40%);">+     parm [edi] [al] [cl]            \</span><br><span style="color: hsl(120, 100%, 40%);">+     value [al]                      \</span><br><span>    modify exact [al cl];</span><br><span> </span><br><span style="color: hsl(0, 100%, 40%);">-u16     rol_word_asm(u32 *flags,u16 d, u8 s);</span><br><span style="color: hsl(0, 100%, 40%);">-#pragma aux rol_word_asm =                        \</span><br><span style="color: hsl(0, 100%, 40%);">-       "push      [edi]"                     \</span><br><span style="color: hsl(0, 100%, 40%);">-       "popf"                                \</span><br><span style="color: hsl(0, 100%, 40%);">-       "rol       ax,cl"                  \</span><br><span style="color: hsl(0, 100%, 40%);">-  "pushf"                         \</span><br><span style="color: hsl(0, 100%, 40%);">-     "pop       [edi]"                     \</span><br><span style="color: hsl(0, 100%, 40%);">-       parm [edi] [ax] [cl]            \</span><br><span style="color: hsl(0, 100%, 40%);">-       value [ax]                      \</span><br><span style="color: hsl(120, 100%, 40%);">+u16 rol_word_asm(u32 *flags, u16 d, u8 s);</span><br><span style="color: hsl(120, 100%, 40%);">+#pragma aux rol_word_asm =               \</span><br><span style="color: hsl(120, 100%, 40%);">+     "push      [edi]"                     \</span><br><span style="color: hsl(120, 100%, 40%);">+     "popf"                                \</span><br><span style="color: hsl(120, 100%, 40%);">+     "rol       ax,cl"                     \</span><br><span style="color: hsl(120, 100%, 40%);">+     "pushf"                               \</span><br><span style="color: hsl(120, 100%, 40%);">+     "pop       [edi]"                     \</span><br><span style="color: hsl(120, 100%, 40%);">+     parm [edi] [ax] [cl]            \</span><br><span style="color: hsl(120, 100%, 40%);">+     value [ax]                      \</span><br><span>    modify exact [ax cl];</span><br><span> </span><br><span style="color: hsl(0, 100%, 40%);">-u32     rol_long_asm(u32 *flags,u32 d, u8 s);</span><br><span style="color: hsl(0, 100%, 40%);">-#pragma aux rol_long_asm =                        \</span><br><span style="color: hsl(0, 100%, 40%);">-       "push      [edi]"                     \</span><br><span style="color: hsl(0, 100%, 40%);">-       "popf"                                \</span><br><span style="color: hsl(0, 100%, 40%);">-       "rol       eax,cl"                    \</span><br><span style="color: hsl(0, 100%, 40%);">-       "pushf"                         \</span><br><span style="color: hsl(0, 100%, 40%);">-     "pop       [edi]"                     \</span><br><span style="color: hsl(0, 100%, 40%);">-       parm [edi] [eax] [cl]           \</span><br><span style="color: hsl(0, 100%, 40%);">-       value [eax]                     \</span><br><span style="color: hsl(120, 100%, 40%);">+u32 rol_long_asm(u32 *flags, u32 d, u8 s);</span><br><span style="color: hsl(120, 100%, 40%);">+#pragma aux rol_long_asm =               \</span><br><span style="color: hsl(120, 100%, 40%);">+     "push      [edi]"                     \</span><br><span style="color: hsl(120, 100%, 40%);">+     "popf"                                \</span><br><span style="color: hsl(120, 100%, 40%);">+     "rol       eax,cl"                    \</span><br><span style="color: hsl(120, 100%, 40%);">+     "pushf"                               \</span><br><span style="color: hsl(120, 100%, 40%);">+     "pop       [edi]"                     \</span><br><span style="color: hsl(120, 100%, 40%);">+     parm [edi] [eax] [cl]           \</span><br><span style="color: hsl(120, 100%, 40%);">+     value [eax]                     \</span><br><span>    modify exact [eax cl];</span><br><span> </span><br><span style="color: hsl(0, 100%, 40%);">-u8      ror_byte_asm(u32 *flags,u8 d, u8 s);</span><br><span style="color: hsl(0, 100%, 40%);">-#pragma aux ror_byte_asm =                        \</span><br><span style="color: hsl(0, 100%, 40%);">-       "push      [edi]"                     \</span><br><span style="color: hsl(0, 100%, 40%);">-       "popf"                                \</span><br><span style="color: hsl(0, 100%, 40%);">-       "ror       al,cl"                  \</span><br><span style="color: hsl(0, 100%, 40%);">-  "pushf"                         \</span><br><span style="color: hsl(0, 100%, 40%);">-     "pop       [edi]"                     \</span><br><span style="color: hsl(0, 100%, 40%);">-       parm [edi] [al] [cl]            \</span><br><span style="color: hsl(0, 100%, 40%);">-       value [al]                      \</span><br><span style="color: hsl(120, 100%, 40%);">+u8 ror_byte_asm(u32 *flags, u8 d, u8 s);</span><br><span style="color: hsl(120, 100%, 40%);">+#pragma aux ror_byte_asm =         \</span><br><span style="color: hsl(120, 100%, 40%);">+     "push      [edi]"                     \</span><br><span style="color: hsl(120, 100%, 40%);">+     "popf"                                \</span><br><span style="color: hsl(120, 100%, 40%);">+     "ror       al,cl"                     \</span><br><span style="color: hsl(120, 100%, 40%);">+     "pushf"                               \</span><br><span style="color: hsl(120, 100%, 40%);">+     "pop       [edi]"                     \</span><br><span style="color: hsl(120, 100%, 40%);">+     parm [edi] [al] [cl]            \</span><br><span style="color: hsl(120, 100%, 40%);">+     value [al]                      \</span><br><span>    modify exact [al cl];</span><br><span> </span><br><span style="color: hsl(0, 100%, 40%);">-u16     ror_word_asm(u32 *flags,u16 d, u8 s);</span><br><span style="color: hsl(0, 100%, 40%);">-#pragma aux ror_word_asm =                        \</span><br><span style="color: hsl(0, 100%, 40%);">-       "push      [edi]"                     \</span><br><span style="color: hsl(0, 100%, 40%);">-       "popf"                                \</span><br><span style="color: hsl(0, 100%, 40%);">-       "ror       ax,cl"                  \</span><br><span style="color: hsl(0, 100%, 40%);">-  "pushf"                         \</span><br><span style="color: hsl(0, 100%, 40%);">-     "pop       [edi]"                     \</span><br><span style="color: hsl(0, 100%, 40%);">-       parm [edi] [ax] [cl]            \</span><br><span style="color: hsl(0, 100%, 40%);">-       value [ax]                      \</span><br><span style="color: hsl(120, 100%, 40%);">+u16 ror_word_asm(u32 *flags, u16 d, u8 s);</span><br><span style="color: hsl(120, 100%, 40%);">+#pragma aux ror_word_asm =               \</span><br><span style="color: hsl(120, 100%, 40%);">+     "push      [edi]"                     \</span><br><span style="color: hsl(120, 100%, 40%);">+     "popf"                                \</span><br><span style="color: hsl(120, 100%, 40%);">+     "ror       ax,cl"                     \</span><br><span style="color: hsl(120, 100%, 40%);">+     "pushf"                               \</span><br><span style="color: hsl(120, 100%, 40%);">+     "pop       [edi]"                     \</span><br><span style="color: hsl(120, 100%, 40%);">+     parm [edi] [ax] [cl]            \</span><br><span style="color: hsl(120, 100%, 40%);">+     value [ax]                      \</span><br><span>    modify exact [ax cl];</span><br><span> </span><br><span style="color: hsl(0, 100%, 40%);">-u32     ror_long_asm(u32 *flags,u32 d, u8 s);</span><br><span style="color: hsl(0, 100%, 40%);">-#pragma aux ror_long_asm =                        \</span><br><span style="color: hsl(0, 100%, 40%);">-       "push      [edi]"                     \</span><br><span style="color: hsl(0, 100%, 40%);">-       "popf"                                \</span><br><span style="color: hsl(0, 100%, 40%);">-       "ror       eax,cl"                    \</span><br><span style="color: hsl(0, 100%, 40%);">-       "pushf"                         \</span><br><span style="color: hsl(0, 100%, 40%);">-     "pop       [edi]"                     \</span><br><span style="color: hsl(0, 100%, 40%);">-       parm [edi] [eax] [cl]           \</span><br><span style="color: hsl(0, 100%, 40%);">-       value [eax]                     \</span><br><span style="color: hsl(120, 100%, 40%);">+u32 ror_long_asm(u32 *flags, u32 d, u8 s);</span><br><span style="color: hsl(120, 100%, 40%);">+#pragma aux ror_long_asm =               \</span><br><span style="color: hsl(120, 100%, 40%);">+     "push      [edi]"                     \</span><br><span style="color: hsl(120, 100%, 40%);">+     "popf"                                \</span><br><span style="color: hsl(120, 100%, 40%);">+     "ror       eax,cl"                    \</span><br><span style="color: hsl(120, 100%, 40%);">+     "pushf"                               \</span><br><span style="color: hsl(120, 100%, 40%);">+     "pop       [edi]"                     \</span><br><span style="color: hsl(120, 100%, 40%);">+     parm [edi] [eax] [cl]           \</span><br><span style="color: hsl(120, 100%, 40%);">+     value [eax]                     \</span><br><span>    modify exact [eax cl];</span><br><span> </span><br><span style="color: hsl(0, 100%, 40%);">-u8      shl_byte_asm(u32 *flags,u8 d, u8 s);</span><br><span style="color: hsl(0, 100%, 40%);">-#pragma aux shl_byte_asm =                        \</span><br><span style="color: hsl(0, 100%, 40%);">-       "push      [edi]"                     \</span><br><span style="color: hsl(0, 100%, 40%);">-       "popf"                                \</span><br><span style="color: hsl(0, 100%, 40%);">-       "shl       al,cl"                  \</span><br><span style="color: hsl(0, 100%, 40%);">-  "pushf"                         \</span><br><span style="color: hsl(0, 100%, 40%);">-     "pop       [edi]"                     \</span><br><span style="color: hsl(0, 100%, 40%);">-       parm [edi] [al] [cl]            \</span><br><span style="color: hsl(0, 100%, 40%);">-       value [al]                      \</span><br><span style="color: hsl(120, 100%, 40%);">+u8 shl_byte_asm(u32 *flags, u8 d, u8 s);</span><br><span style="color: hsl(120, 100%, 40%);">+#pragma aux shl_byte_asm =         \</span><br><span style="color: hsl(120, 100%, 40%);">+     "push      [edi]"                     \</span><br><span style="color: hsl(120, 100%, 40%);">+     "popf"                                \</span><br><span style="color: hsl(120, 100%, 40%);">+     "shl       al,cl"                     \</span><br><span style="color: hsl(120, 100%, 40%);">+     "pushf"                               \</span><br><span style="color: hsl(120, 100%, 40%);">+     "pop       [edi]"                     \</span><br><span style="color: hsl(120, 100%, 40%);">+     parm [edi] [al] [cl]            \</span><br><span style="color: hsl(120, 100%, 40%);">+     value [al]                      \</span><br><span>    modify exact [al cl];</span><br><span> </span><br><span style="color: hsl(0, 100%, 40%);">-u16     shl_word_asm(u32 *flags,u16 d, u8 s);</span><br><span style="color: hsl(0, 100%, 40%);">-#pragma aux shl_word_asm =                        \</span><br><span style="color: hsl(0, 100%, 40%);">-       "push      [edi]"                     \</span><br><span style="color: hsl(0, 100%, 40%);">-       "popf"                                \</span><br><span style="color: hsl(0, 100%, 40%);">-       "shl       ax,cl"                  \</span><br><span style="color: hsl(0, 100%, 40%);">-  "pushf"                         \</span><br><span style="color: hsl(0, 100%, 40%);">-     "pop       [edi]"                     \</span><br><span style="color: hsl(0, 100%, 40%);">-       parm [edi] [ax] [cl]            \</span><br><span style="color: hsl(0, 100%, 40%);">-       value [ax]                      \</span><br><span style="color: hsl(120, 100%, 40%);">+u16 shl_word_asm(u32 *flags, u16 d, u8 s);</span><br><span style="color: hsl(120, 100%, 40%);">+#pragma aux shl_word_asm =               \</span><br><span style="color: hsl(120, 100%, 40%);">+     "push      [edi]"                     \</span><br><span style="color: hsl(120, 100%, 40%);">+     "popf"                                \</span><br><span style="color: hsl(120, 100%, 40%);">+     "shl       ax,cl"                     \</span><br><span style="color: hsl(120, 100%, 40%);">+     "pushf"                               \</span><br><span style="color: hsl(120, 100%, 40%);">+     "pop       [edi]"                     \</span><br><span style="color: hsl(120, 100%, 40%);">+     parm [edi] [ax] [cl]            \</span><br><span style="color: hsl(120, 100%, 40%);">+     value [ax]                      \</span><br><span>    modify exact [ax cl];</span><br><span> </span><br><span style="color: hsl(0, 100%, 40%);">-u32     shl_long_asm(u32 *flags,u32 d, u8 s);</span><br><span style="color: hsl(0, 100%, 40%);">-#pragma aux shl_long_asm =                        \</span><br><span style="color: hsl(0, 100%, 40%);">-       "push      [edi]"                     \</span><br><span style="color: hsl(0, 100%, 40%);">-       "popf"                                \</span><br><span style="color: hsl(0, 100%, 40%);">-       "shl       eax,cl"                    \</span><br><span style="color: hsl(0, 100%, 40%);">-       "pushf"                         \</span><br><span style="color: hsl(0, 100%, 40%);">-     "pop       [edi]"                     \</span><br><span style="color: hsl(0, 100%, 40%);">-       parm [edi] [eax] [cl]           \</span><br><span style="color: hsl(0, 100%, 40%);">-       value [eax]                     \</span><br><span style="color: hsl(120, 100%, 40%);">+u32 shl_long_asm(u32 *flags, u32 d, u8 s);</span><br><span style="color: hsl(120, 100%, 40%);">+#pragma aux shl_long_asm =               \</span><br><span style="color: hsl(120, 100%, 40%);">+     "push      [edi]"                     \</span><br><span style="color: hsl(120, 100%, 40%);">+     "popf"                                \</span><br><span style="color: hsl(120, 100%, 40%);">+     "shl       eax,cl"                    \</span><br><span style="color: hsl(120, 100%, 40%);">+     "pushf"                               \</span><br><span style="color: hsl(120, 100%, 40%);">+     "pop       [edi]"                     \</span><br><span style="color: hsl(120, 100%, 40%);">+     parm [edi] [eax] [cl]           \</span><br><span style="color: hsl(120, 100%, 40%);">+     value [eax]                     \</span><br><span>    modify exact [eax cl];</span><br><span> </span><br><span style="color: hsl(0, 100%, 40%);">-u8      shr_byte_asm(u32 *flags,u8 d, u8 s);</span><br><span style="color: hsl(0, 100%, 40%);">-#pragma aux shr_byte_asm =                        \</span><br><span style="color: hsl(0, 100%, 40%);">-       "push      [edi]"                     \</span><br><span style="color: hsl(0, 100%, 40%);">-       "popf"                                \</span><br><span style="color: hsl(0, 100%, 40%);">-       "shr       al,cl"                  \</span><br><span style="color: hsl(0, 100%, 40%);">-  "pushf"                         \</span><br><span style="color: hsl(0, 100%, 40%);">-     "pop       [edi]"                     \</span><br><span style="color: hsl(0, 100%, 40%);">-       parm [edi] [al] [cl]            \</span><br><span style="color: hsl(0, 100%, 40%);">-       value [al]                      \</span><br><span style="color: hsl(120, 100%, 40%);">+u8 shr_byte_asm(u32 *flags, u8 d, u8 s);</span><br><span style="color: hsl(120, 100%, 40%);">+#pragma aux shr_byte_asm =         \</span><br><span style="color: hsl(120, 100%, 40%);">+     "push      [edi]"                     \</span><br><span style="color: hsl(120, 100%, 40%);">+     "popf"                                \</span><br><span style="color: hsl(120, 100%, 40%);">+     "shr       al,cl"                     \</span><br><span style="color: hsl(120, 100%, 40%);">+     "pushf"                               \</span><br><span style="color: hsl(120, 100%, 40%);">+     "pop       [edi]"                     \</span><br><span style="color: hsl(120, 100%, 40%);">+     parm [edi] [al] [cl]            \</span><br><span style="color: hsl(120, 100%, 40%);">+     value [al]                      \</span><br><span>    modify exact [al cl];</span><br><span> </span><br><span style="color: hsl(0, 100%, 40%);">-u16     shr_word_asm(u32 *flags,u16 d, u8 s);</span><br><span style="color: hsl(0, 100%, 40%);">-#pragma aux shr_word_asm =                        \</span><br><span style="color: hsl(0, 100%, 40%);">-       "push      [edi]"                     \</span><br><span style="color: hsl(0, 100%, 40%);">-       "popf"                                \</span><br><span style="color: hsl(0, 100%, 40%);">-       "shr       ax,cl"                  \</span><br><span style="color: hsl(0, 100%, 40%);">-  "pushf"                         \</span><br><span style="color: hsl(0, 100%, 40%);">-     "pop       [edi]"                     \</span><br><span style="color: hsl(0, 100%, 40%);">-       parm [edi] [ax] [cl]            \</span><br><span style="color: hsl(0, 100%, 40%);">-       value [ax]                      \</span><br><span style="color: hsl(120, 100%, 40%);">+u16 shr_word_asm(u32 *flags, u16 d, u8 s);</span><br><span style="color: hsl(120, 100%, 40%);">+#pragma aux shr_word_asm =               \</span><br><span style="color: hsl(120, 100%, 40%);">+     "push      [edi]"                     \</span><br><span style="color: hsl(120, 100%, 40%);">+     "popf"                                \</span><br><span style="color: hsl(120, 100%, 40%);">+     "shr       ax,cl"                     \</span><br><span style="color: hsl(120, 100%, 40%);">+     "pushf"                               \</span><br><span style="color: hsl(120, 100%, 40%);">+     "pop       [edi]"                     \</span><br><span style="color: hsl(120, 100%, 40%);">+     parm [edi] [ax] [cl]            \</span><br><span style="color: hsl(120, 100%, 40%);">+     value [ax]                      \</span><br><span>    modify exact [ax cl];</span><br><span> </span><br><span style="color: hsl(0, 100%, 40%);">-u32     shr_long_asm(u32 *flags,u32 d, u8 s);</span><br><span style="color: hsl(0, 100%, 40%);">-#pragma aux shr_long_asm =                        \</span><br><span style="color: hsl(0, 100%, 40%);">-       "push      [edi]"                     \</span><br><span style="color: hsl(0, 100%, 40%);">-       "popf"                                \</span><br><span style="color: hsl(0, 100%, 40%);">-       "shr       eax,cl"                    \</span><br><span style="color: hsl(0, 100%, 40%);">-       "pushf"                         \</span><br><span style="color: hsl(0, 100%, 40%);">-     "pop       [edi]"                     \</span><br><span style="color: hsl(0, 100%, 40%);">-       parm [edi] [eax] [cl]           \</span><br><span style="color: hsl(0, 100%, 40%);">-       value [eax]                     \</span><br><span style="color: hsl(120, 100%, 40%);">+u32 shr_long_asm(u32 *flags, u32 d, u8 s);</span><br><span style="color: hsl(120, 100%, 40%);">+#pragma aux shr_long_asm =               \</span><br><span style="color: hsl(120, 100%, 40%);">+     "push      [edi]"                     \</span><br><span style="color: hsl(120, 100%, 40%);">+     "popf"                                \</span><br><span style="color: hsl(120, 100%, 40%);">+     "shr       eax,cl"                    \</span><br><span style="color: hsl(120, 100%, 40%);">+     "pushf"                               \</span><br><span style="color: hsl(120, 100%, 40%);">+     "pop       [edi]"                     \</span><br><span style="color: hsl(120, 100%, 40%);">+     parm [edi] [eax] [cl]           \</span><br><span style="color: hsl(120, 100%, 40%);">+     value [eax]                     \</span><br><span>    modify exact [eax cl];</span><br><span> </span><br><span style="color: hsl(0, 100%, 40%);">-u8      sar_byte_asm(u32 *flags,u8 d, u8 s);</span><br><span style="color: hsl(0, 100%, 40%);">-#pragma aux sar_byte_asm =                        \</span><br><span style="color: hsl(0, 100%, 40%);">-       "push      [edi]"                     \</span><br><span style="color: hsl(0, 100%, 40%);">-       "popf"                                \</span><br><span style="color: hsl(0, 100%, 40%);">-       "sar       al,cl"                  \</span><br><span style="color: hsl(0, 100%, 40%);">-  "pushf"                         \</span><br><span style="color: hsl(0, 100%, 40%);">-     "pop       [edi]"                     \</span><br><span style="color: hsl(0, 100%, 40%);">-       parm [edi] [al] [cl]            \</span><br><span style="color: hsl(0, 100%, 40%);">-       value [al]                      \</span><br><span style="color: hsl(120, 100%, 40%);">+u8 sar_byte_asm(u32 *flags, u8 d, u8 s);</span><br><span style="color: hsl(120, 100%, 40%);">+#pragma aux sar_byte_asm =         \</span><br><span style="color: hsl(120, 100%, 40%);">+     "push      [edi]"                     \</span><br><span style="color: hsl(120, 100%, 40%);">+     "popf"                                \</span><br><span style="color: hsl(120, 100%, 40%);">+     "sar       al,cl"                     \</span><br><span style="color: hsl(120, 100%, 40%);">+     "pushf"                               \</span><br><span style="color: hsl(120, 100%, 40%);">+     "pop       [edi]"                     \</span><br><span style="color: hsl(120, 100%, 40%);">+     parm [edi] [al] [cl]            \</span><br><span style="color: hsl(120, 100%, 40%);">+     value [al]                      \</span><br><span>    modify exact [al cl];</span><br><span> </span><br><span style="color: hsl(0, 100%, 40%);">-u16     sar_word_asm(u32 *flags,u16 d, u8 s);</span><br><span style="color: hsl(0, 100%, 40%);">-#pragma aux sar_word_asm =                        \</span><br><span style="color: hsl(0, 100%, 40%);">-       "push      [edi]"                     \</span><br><span style="color: hsl(0, 100%, 40%);">-       "popf"                                \</span><br><span style="color: hsl(0, 100%, 40%);">-       "sar       ax,cl"                  \</span><br><span style="color: hsl(0, 100%, 40%);">-  "pushf"                         \</span><br><span style="color: hsl(0, 100%, 40%);">-     "pop       [edi]"                     \</span><br><span style="color: hsl(0, 100%, 40%);">-       parm [edi] [ax] [cl]            \</span><br><span style="color: hsl(0, 100%, 40%);">-       value [ax]                      \</span><br><span style="color: hsl(120, 100%, 40%);">+u16 sar_word_asm(u32 *flags, u16 d, u8 s);</span><br><span style="color: hsl(120, 100%, 40%);">+#pragma aux sar_word_asm =               \</span><br><span style="color: hsl(120, 100%, 40%);">+     "push      [edi]"                     \</span><br><span style="color: hsl(120, 100%, 40%);">+     "popf"                                \</span><br><span style="color: hsl(120, 100%, 40%);">+     "sar       ax,cl"                     \</span><br><span style="color: hsl(120, 100%, 40%);">+     "pushf"                               \</span><br><span style="color: hsl(120, 100%, 40%);">+     "pop       [edi]"                     \</span><br><span style="color: hsl(120, 100%, 40%);">+     parm [edi] [ax] [cl]            \</span><br><span style="color: hsl(120, 100%, 40%);">+     value [ax]                      \</span><br><span>    modify exact [ax cl];</span><br><span> </span><br><span style="color: hsl(0, 100%, 40%);">-u32     sar_long_asm(u32 *flags,u32 d, u8 s);</span><br><span style="color: hsl(0, 100%, 40%);">-#pragma aux sar_long_asm =                        \</span><br><span style="color: hsl(0, 100%, 40%);">-       "push      [edi]"                     \</span><br><span style="color: hsl(0, 100%, 40%);">-       "popf"                                \</span><br><span style="color: hsl(0, 100%, 40%);">-       "sar       eax,cl"                    \</span><br><span style="color: hsl(0, 100%, 40%);">-       "pushf"                         \</span><br><span style="color: hsl(0, 100%, 40%);">-     "pop       [edi]"                     \</span><br><span style="color: hsl(0, 100%, 40%);">-       parm [edi] [eax] [cl]           \</span><br><span style="color: hsl(0, 100%, 40%);">-       value [eax]                     \</span><br><span style="color: hsl(120, 100%, 40%);">+u32 sar_long_asm(u32 *flags, u32 d, u8 s);</span><br><span style="color: hsl(120, 100%, 40%);">+#pragma aux sar_long_asm =               \</span><br><span style="color: hsl(120, 100%, 40%);">+     "push      [edi]"                     \</span><br><span style="color: hsl(120, 100%, 40%);">+     "popf"                                \</span><br><span style="color: hsl(120, 100%, 40%);">+     "sar       eax,cl"                    \</span><br><span style="color: hsl(120, 100%, 40%);">+     "pushf"                               \</span><br><span style="color: hsl(120, 100%, 40%);">+     "pop       [edi]"                     \</span><br><span style="color: hsl(120, 100%, 40%);">+     parm [edi] [eax] [cl]           \</span><br><span style="color: hsl(120, 100%, 40%);">+     value [eax]                     \</span><br><span>    modify exact [eax cl];</span><br><span> </span><br><span style="color: hsl(0, 100%, 40%);">-u16           shld_word_asm(u32 *flags,u16 d, u16 fill, u8 s);</span><br><span style="color: hsl(0, 100%, 40%);">-#pragma aux shld_word_asm =                     \</span><br><span style="color: hsl(0, 100%, 40%);">-       "push      [edi]"                     \</span><br><span style="color: hsl(0, 100%, 40%);">-       "popf"                                \</span><br><span style="color: hsl(0, 100%, 40%);">-       "shld      ax,dx,cl"               \</span><br><span style="color: hsl(0, 100%, 40%);">-  "pushf"                         \</span><br><span style="color: hsl(0, 100%, 40%);">-     "pop       [edi]"                     \</span><br><span style="color: hsl(0, 100%, 40%);">-       parm [edi] [ax] [dx] [cl]       \</span><br><span style="color: hsl(0, 100%, 40%);">-       value [ax]                      \</span><br><span style="color: hsl(120, 100%, 40%);">+u16 shld_word_asm(u32 *flags, u16 d, u16 fill, u8 s);</span><br><span style="color: hsl(120, 100%, 40%);">+#pragma aux shld_word_asm =           \</span><br><span style="color: hsl(120, 100%, 40%);">+     "push      [edi]"                     \</span><br><span style="color: hsl(120, 100%, 40%);">+     "popf"                                \</span><br><span style="color: hsl(120, 100%, 40%);">+     "shld      ax,dx,cl"          \</span><br><span style="color: hsl(120, 100%, 40%);">+     "pushf"                               \</span><br><span style="color: hsl(120, 100%, 40%);">+     "pop       [edi]"                     \</span><br><span style="color: hsl(120, 100%, 40%);">+     parm [edi] [ax] [dx] [cl]       \</span><br><span style="color: hsl(120, 100%, 40%);">+     value [ax]                      \</span><br><span>    modify exact [ax dx cl];</span><br><span> </span><br><span style="color: hsl(0, 100%, 40%);">-u32     shld_long_asm(u32 *flags,u32 d, u32 fill, u8 s);</span><br><span style="color: hsl(0, 100%, 40%);">-#pragma aux shld_long_asm =                 \</span><br><span style="color: hsl(0, 100%, 40%);">-       "push      [edi]"                     \</span><br><span style="color: hsl(0, 100%, 40%);">-       "popf"                                \</span><br><span style="color: hsl(0, 100%, 40%);">-       "shld      eax,edx,cl"             \</span><br><span style="color: hsl(0, 100%, 40%);">-  "pushf"                         \</span><br><span style="color: hsl(0, 100%, 40%);">-     "pop       [edi]"                     \</span><br><span style="color: hsl(0, 100%, 40%);">-       parm [edi] [eax] [edx] [cl]     \</span><br><span style="color: hsl(0, 100%, 40%);">-       value [eax]                     \</span><br><span style="color: hsl(120, 100%, 40%);">+u32 shld_long_asm(u32 *flags, u32 d, u32 fill, u8 s);</span><br><span style="color: hsl(120, 100%, 40%);">+#pragma aux shld_long_asm =           \</span><br><span style="color: hsl(120, 100%, 40%);">+     "push      [edi]"                     \</span><br><span style="color: hsl(120, 100%, 40%);">+     "popf"                                \</span><br><span style="color: hsl(120, 100%, 40%);">+     "shld      eax,edx,cl"                \</span><br><span style="color: hsl(120, 100%, 40%);">+     "pushf"                               \</span><br><span style="color: hsl(120, 100%, 40%);">+     "pop       [edi]"                     \</span><br><span style="color: hsl(120, 100%, 40%);">+     parm [edi] [eax] [edx] [cl]     \</span><br><span style="color: hsl(120, 100%, 40%);">+     value [eax]                     \</span><br><span>    modify exact [eax edx cl];</span><br><span> </span><br><span style="color: hsl(0, 100%, 40%);">-u16               shrd_word_asm(u32 *flags,u16 d, u16 fill, u8 s);</span><br><span style="color: hsl(0, 100%, 40%);">-#pragma aux shrd_word_asm =                     \</span><br><span style="color: hsl(0, 100%, 40%);">-       "push      [edi]"                     \</span><br><span style="color: hsl(0, 100%, 40%);">-       "popf"                                \</span><br><span style="color: hsl(0, 100%, 40%);">-       "shrd      ax,dx,cl"               \</span><br><span style="color: hsl(0, 100%, 40%);">-  "pushf"                         \</span><br><span style="color: hsl(0, 100%, 40%);">-     "pop       [edi]"                     \</span><br><span style="color: hsl(0, 100%, 40%);">-       parm [edi] [ax] [dx] [cl]       \</span><br><span style="color: hsl(0, 100%, 40%);">-       value [ax]                      \</span><br><span style="color: hsl(120, 100%, 40%);">+u16 shrd_word_asm(u32 *flags, u16 d, u16 fill, u8 s);</span><br><span style="color: hsl(120, 100%, 40%);">+#pragma aux shrd_word_asm =           \</span><br><span style="color: hsl(120, 100%, 40%);">+     "push      [edi]"                     \</span><br><span style="color: hsl(120, 100%, 40%);">+     "popf"                                \</span><br><span style="color: hsl(120, 100%, 40%);">+     "shrd      ax,dx,cl"          \</span><br><span style="color: hsl(120, 100%, 40%);">+     "pushf"                               \</span><br><span style="color: hsl(120, 100%, 40%);">+     "pop       [edi]"                     \</span><br><span style="color: hsl(120, 100%, 40%);">+     parm [edi] [ax] [dx] [cl]       \</span><br><span style="color: hsl(120, 100%, 40%);">+     value [ax]                      \</span><br><span>    modify exact [ax dx cl];</span><br><span> </span><br><span style="color: hsl(0, 100%, 40%);">-u32     shrd_long_asm(u32 *flags,u32 d, u32 fill, u8 s);</span><br><span style="color: hsl(0, 100%, 40%);">-#pragma aux shrd_long_asm =                 \</span><br><span style="color: hsl(0, 100%, 40%);">-       "push      [edi]"                     \</span><br><span style="color: hsl(0, 100%, 40%);">-       "popf"                                \</span><br><span style="color: hsl(0, 100%, 40%);">-       "shrd      eax,edx,cl"             \</span><br><span style="color: hsl(0, 100%, 40%);">-  "pushf"                         \</span><br><span style="color: hsl(0, 100%, 40%);">-     "pop       [edi]"                     \</span><br><span style="color: hsl(0, 100%, 40%);">-       parm [edi] [eax] [edx] [cl]     \</span><br><span style="color: hsl(0, 100%, 40%);">-       value [eax]                     \</span><br><span style="color: hsl(120, 100%, 40%);">+u32 shrd_long_asm(u32 *flags, u32 d, u32 fill, u8 s);</span><br><span style="color: hsl(120, 100%, 40%);">+#pragma aux shrd_long_asm =           \</span><br><span style="color: hsl(120, 100%, 40%);">+     "push      [edi]"                     \</span><br><span style="color: hsl(120, 100%, 40%);">+     "popf"                                \</span><br><span style="color: hsl(120, 100%, 40%);">+     "shrd      eax,edx,cl"                \</span><br><span style="color: hsl(120, 100%, 40%);">+     "pushf"                               \</span><br><span style="color: hsl(120, 100%, 40%);">+     "pop       [edi]"                     \</span><br><span style="color: hsl(120, 100%, 40%);">+     parm [edi] [eax] [edx] [cl]     \</span><br><span style="color: hsl(120, 100%, 40%);">+     value [eax]                     \</span><br><span>    modify exact [eax edx cl];</span><br><span> </span><br><span style="color: hsl(0, 100%, 40%);">-u8      sbb_byte_asm(u32 *flags,u8 d, u8 s);</span><br><span style="color: hsl(0, 100%, 40%);">-#pragma aux sbb_byte_asm =                    \</span><br><span style="color: hsl(0, 100%, 40%);">-       "push      [edi]"                     \</span><br><span style="color: hsl(0, 100%, 40%);">-       "popf"                                \</span><br><span style="color: hsl(0, 100%, 40%);">-       "sbb       al,bl"                  \</span><br><span style="color: hsl(0, 100%, 40%);">-  "pushf"                         \</span><br><span style="color: hsl(0, 100%, 40%);">-     "pop       [edi]"                     \</span><br><span style="color: hsl(0, 100%, 40%);">-       parm [edi] [al] [bl]            \</span><br><span style="color: hsl(0, 100%, 40%);">-       value [al]                      \</span><br><span style="color: hsl(120, 100%, 40%);">+u8 sbb_byte_asm(u32 *flags, u8 d, u8 s);</span><br><span style="color: hsl(120, 100%, 40%);">+#pragma aux sbb_byte_asm =         \</span><br><span style="color: hsl(120, 100%, 40%);">+     "push      [edi]"                     \</span><br><span style="color: hsl(120, 100%, 40%);">+     "popf"                                \</span><br><span style="color: hsl(120, 100%, 40%);">+     "sbb       al,bl"                     \</span><br><span style="color: hsl(120, 100%, 40%);">+     "pushf"                               \</span><br><span style="color: hsl(120, 100%, 40%);">+     "pop       [edi]"                     \</span><br><span style="color: hsl(120, 100%, 40%);">+     parm [edi] [al] [bl]            \</span><br><span style="color: hsl(120, 100%, 40%);">+     value [al]                      \</span><br><span>    modify exact [al bl];</span><br><span> </span><br><span style="color: hsl(0, 100%, 40%);">-u16     sbb_word_asm(u32 *flags,u16 d, u16 s);</span><br><span style="color: hsl(0, 100%, 40%);">-#pragma aux sbb_word_asm =                       \</span><br><span style="color: hsl(0, 100%, 40%);">-       "push      [edi]"                     \</span><br><span style="color: hsl(0, 100%, 40%);">-       "popf"                                \</span><br><span style="color: hsl(0, 100%, 40%);">-       "sbb       ax,bx"                  \</span><br><span style="color: hsl(0, 100%, 40%);">-  "pushf"                         \</span><br><span style="color: hsl(0, 100%, 40%);">-     "pop       [edi]"                     \</span><br><span style="color: hsl(0, 100%, 40%);">-       parm [edi] [ax] [bx]            \</span><br><span style="color: hsl(0, 100%, 40%);">-       value [ax]                      \</span><br><span style="color: hsl(120, 100%, 40%);">+u16 sbb_word_asm(u32 *flags, u16 d, u16 s);</span><br><span style="color: hsl(120, 100%, 40%);">+#pragma aux sbb_word_asm =              \</span><br><span style="color: hsl(120, 100%, 40%);">+     "push      [edi]"                     \</span><br><span style="color: hsl(120, 100%, 40%);">+     "popf"                                \</span><br><span style="color: hsl(120, 100%, 40%);">+     "sbb       ax,bx"                     \</span><br><span style="color: hsl(120, 100%, 40%);">+     "pushf"                               \</span><br><span style="color: hsl(120, 100%, 40%);">+     "pop       [edi]"                     \</span><br><span style="color: hsl(120, 100%, 40%);">+     parm [edi] [ax] [bx]            \</span><br><span style="color: hsl(120, 100%, 40%);">+     value [ax]                      \</span><br><span>    modify exact [ax bx];</span><br><span> </span><br><span style="color: hsl(0, 100%, 40%);">-u32     sbb_long_asm(u32 *flags,u32 d, u32 s);</span><br><span style="color: hsl(0, 100%, 40%);">-#pragma aux sbb_long_asm =                       \</span><br><span style="color: hsl(0, 100%, 40%);">-       "push      [edi]"                     \</span><br><span style="color: hsl(0, 100%, 40%);">-       "popf"                                \</span><br><span style="color: hsl(0, 100%, 40%);">-       "sbb       eax,ebx"                \</span><br><span style="color: hsl(0, 100%, 40%);">-  "pushf"                         \</span><br><span style="color: hsl(0, 100%, 40%);">-     "pop       [edi]"                     \</span><br><span style="color: hsl(0, 100%, 40%);">-       parm [edi] [eax] [ebx]          \</span><br><span style="color: hsl(0, 100%, 40%);">-       value [eax]                     \</span><br><span style="color: hsl(120, 100%, 40%);">+u32 sbb_long_asm(u32 *flags, u32 d, u32 s);</span><br><span style="color: hsl(120, 100%, 40%);">+#pragma aux sbb_long_asm =              \</span><br><span style="color: hsl(120, 100%, 40%);">+     "push      [edi]"                     \</span><br><span style="color: hsl(120, 100%, 40%);">+     "popf"                                \</span><br><span style="color: hsl(120, 100%, 40%);">+     "sbb       eax,ebx"           \</span><br><span style="color: hsl(120, 100%, 40%);">+     "pushf"                               \</span><br><span style="color: hsl(120, 100%, 40%);">+     "pop       [edi]"                     \</span><br><span style="color: hsl(120, 100%, 40%);">+     parm [edi] [eax] [ebx]          \</span><br><span style="color: hsl(120, 100%, 40%);">+     value [eax]                     \</span><br><span>    modify exact [eax ebx];</span><br><span> </span><br><span style="color: hsl(0, 100%, 40%);">-u8      sub_byte_asm(u32 *flags,u8 d, u8 s);</span><br><span style="color: hsl(0, 100%, 40%);">-#pragma aux sub_byte_asm =                       \</span><br><span style="color: hsl(0, 100%, 40%);">-       "push      [edi]"                     \</span><br><span style="color: hsl(0, 100%, 40%);">-       "popf"                                \</span><br><span style="color: hsl(0, 100%, 40%);">-       "sub       al,bl"                  \</span><br><span style="color: hsl(0, 100%, 40%);">-  "pushf"                         \</span><br><span style="color: hsl(0, 100%, 40%);">-     "pop       [edi]"                     \</span><br><span style="color: hsl(0, 100%, 40%);">-       parm [edi] [al] [bl]            \</span><br><span style="color: hsl(0, 100%, 40%);">-       value [al]                      \</span><br><span style="color: hsl(120, 100%, 40%);">+u8 sub_byte_asm(u32 *flags, u8 d, u8 s);</span><br><span style="color: hsl(120, 100%, 40%);">+#pragma aux sub_byte_asm =         \</span><br><span style="color: hsl(120, 100%, 40%);">+     "push      [edi]"                     \</span><br><span style="color: hsl(120, 100%, 40%);">+     "popf"                                \</span><br><span style="color: hsl(120, 100%, 40%);">+     "sub       al,bl"                     \</span><br><span style="color: hsl(120, 100%, 40%);">+     "pushf"                               \</span><br><span style="color: hsl(120, 100%, 40%);">+     "pop       [edi]"                     \</span><br><span style="color: hsl(120, 100%, 40%);">+     parm [edi] [al] [bl]            \</span><br><span style="color: hsl(120, 100%, 40%);">+     value [al]                      \</span><br><span>    modify exact [al bl];</span><br><span> </span><br><span style="color: hsl(0, 100%, 40%);">-u16     sub_word_asm(u32 *flags,u16 d, u16 s);</span><br><span style="color: hsl(0, 100%, 40%);">-#pragma aux sub_word_asm =                       \</span><br><span style="color: hsl(0, 100%, 40%);">-       "push      [edi]"                     \</span><br><span style="color: hsl(0, 100%, 40%);">-       "popf"                                \</span><br><span style="color: hsl(0, 100%, 40%);">-       "sub       ax,bx"                  \</span><br><span style="color: hsl(0, 100%, 40%);">-  "pushf"                         \</span><br><span style="color: hsl(0, 100%, 40%);">-     "pop       [edi]"                     \</span><br><span style="color: hsl(0, 100%, 40%);">-       parm [edi] [ax] [bx]            \</span><br><span style="color: hsl(0, 100%, 40%);">-       value [ax]                      \</span><br><span style="color: hsl(120, 100%, 40%);">+u16 sub_word_asm(u32 *flags, u16 d, u16 s);</span><br><span style="color: hsl(120, 100%, 40%);">+#pragma aux sub_word_asm =              \</span><br><span style="color: hsl(120, 100%, 40%);">+     "push      [edi]"                     \</span><br><span style="color: hsl(120, 100%, 40%);">+     "popf"                                \</span><br><span style="color: hsl(120, 100%, 40%);">+     "sub       ax,bx"                     \</span><br><span style="color: hsl(120, 100%, 40%);">+     "pushf"                               \</span><br><span style="color: hsl(120, 100%, 40%);">+     "pop       [edi]"                     \</span><br><span style="color: hsl(120, 100%, 40%);">+     parm [edi] [ax] [bx]            \</span><br><span style="color: hsl(120, 100%, 40%);">+     value [ax]                      \</span><br><span>    modify exact [ax bx];</span><br><span> </span><br><span style="color: hsl(0, 100%, 40%);">-u32     sub_long_asm(u32 *flags,u32 d, u32 s);</span><br><span style="color: hsl(0, 100%, 40%);">-#pragma aux sub_long_asm =                       \</span><br><span style="color: hsl(0, 100%, 40%);">-       "push      [edi]"                     \</span><br><span style="color: hsl(0, 100%, 40%);">-       "popf"                                \</span><br><span style="color: hsl(0, 100%, 40%);">-       "sub       eax,ebx"                \</span><br><span style="color: hsl(0, 100%, 40%);">-  "pushf"                         \</span><br><span style="color: hsl(0, 100%, 40%);">-     "pop       [edi]"                     \</span><br><span style="color: hsl(0, 100%, 40%);">-       parm [edi] [eax] [ebx]          \</span><br><span style="color: hsl(0, 100%, 40%);">-       value [eax]                     \</span><br><span style="color: hsl(120, 100%, 40%);">+u32 sub_long_asm(u32 *flags, u32 d, u32 s);</span><br><span style="color: hsl(120, 100%, 40%);">+#pragma aux sub_long_asm =              \</span><br><span style="color: hsl(120, 100%, 40%);">+     "push      [edi]"                     \</span><br><span style="color: hsl(120, 100%, 40%);">+     "popf"                                \</span><br><span style="color: hsl(120, 100%, 40%);">+     "sub       eax,ebx"           \</span><br><span style="color: hsl(120, 100%, 40%);">+     "pushf"                               \</span><br><span style="color: hsl(120, 100%, 40%);">+     "pop       [edi]"                     \</span><br><span style="color: hsl(120, 100%, 40%);">+     parm [edi] [eax] [ebx]          \</span><br><span style="color: hsl(120, 100%, 40%);">+     value [eax]                     \</span><br><span>    modify exact [eax ebx];</span><br><span> </span><br><span style="color: hsl(0, 100%, 40%);">-void test_byte_asm(u32 *flags,u8 d, u8 s);</span><br><span style="color: hsl(0, 100%, 40%);">-#pragma aux test_byte_asm =                        \</span><br><span style="color: hsl(0, 100%, 40%);">-       "push      [edi]"                     \</span><br><span style="color: hsl(0, 100%, 40%);">-       "popf"                                \</span><br><span style="color: hsl(0, 100%, 40%);">-       "test      al,bl"                  \</span><br><span style="color: hsl(0, 100%, 40%);">-  "pushf"                         \</span><br><span style="color: hsl(0, 100%, 40%);">-     "pop       [edi]"                     \</span><br><span style="color: hsl(0, 100%, 40%);">-       parm [edi] [al] [bl]            \</span><br><span style="color: hsl(120, 100%, 40%);">+void test_byte_asm(u32 *flags, u8 d, u8 s);</span><br><span style="color: hsl(120, 100%, 40%);">+#pragma aux test_byte_asm =             \</span><br><span style="color: hsl(120, 100%, 40%);">+     "push      [edi]"                     \</span><br><span style="color: hsl(120, 100%, 40%);">+     "popf"                                \</span><br><span style="color: hsl(120, 100%, 40%);">+     "test      al,bl"                     \</span><br><span style="color: hsl(120, 100%, 40%);">+     "pushf"                               \</span><br><span style="color: hsl(120, 100%, 40%);">+     "pop       [edi]"                     \</span><br><span style="color: hsl(120, 100%, 40%);">+     parm [edi] [al] [bl]            \</span><br><span>    modify exact [al bl];</span><br><span> </span><br><span style="color: hsl(0, 100%, 40%);">-void   test_word_asm(u32 *flags,u16 d, u16 s);</span><br><span style="color: hsl(0, 100%, 40%);">-#pragma aux test_word_asm =                      \</span><br><span style="color: hsl(0, 100%, 40%);">-       "push      [edi]"                     \</span><br><span style="color: hsl(0, 100%, 40%);">-       "popf"                                \</span><br><span style="color: hsl(0, 100%, 40%);">-       "test      ax,bx"                  \</span><br><span style="color: hsl(0, 100%, 40%);">-  "pushf"                         \</span><br><span style="color: hsl(0, 100%, 40%);">-     "pop       [edi]"                     \</span><br><span style="color: hsl(0, 100%, 40%);">-       parm [edi] [ax] [bx]            \</span><br><span style="color: hsl(120, 100%, 40%);">+void test_word_asm(u32 *flags, u16 d, u16 s);</span><br><span style="color: hsl(120, 100%, 40%);">+#pragma aux test_word_asm =           \</span><br><span style="color: hsl(120, 100%, 40%);">+     "push      [edi]"                     \</span><br><span style="color: hsl(120, 100%, 40%);">+     "popf"                                \</span><br><span style="color: hsl(120, 100%, 40%);">+     "test      ax,bx"                     \</span><br><span style="color: hsl(120, 100%, 40%);">+     "pushf"                               \</span><br><span style="color: hsl(120, 100%, 40%);">+     "pop       [edi]"                     \</span><br><span style="color: hsl(120, 100%, 40%);">+     parm [edi] [ax] [bx]            \</span><br><span>    modify exact [ax bx];</span><br><span> </span><br><span style="color: hsl(0, 100%, 40%);">-void   test_long_asm(u32 *flags,u32 d, u32 s);</span><br><span style="color: hsl(0, 100%, 40%);">-#pragma aux test_long_asm =                      \</span><br><span style="color: hsl(0, 100%, 40%);">-       "push      [edi]"                     \</span><br><span style="color: hsl(0, 100%, 40%);">-       "popf"                                \</span><br><span style="color: hsl(0, 100%, 40%);">-       "test      eax,ebx"                \</span><br><span style="color: hsl(0, 100%, 40%);">-  "pushf"                         \</span><br><span style="color: hsl(0, 100%, 40%);">-     "pop       [edi]"                     \</span><br><span style="color: hsl(0, 100%, 40%);">-       parm [edi] [eax] [ebx]          \</span><br><span style="color: hsl(120, 100%, 40%);">+void test_long_asm(u32 *flags, u32 d, u32 s);</span><br><span style="color: hsl(120, 100%, 40%);">+#pragma aux test_long_asm =           \</span><br><span style="color: hsl(120, 100%, 40%);">+     "push      [edi]"                     \</span><br><span style="color: hsl(120, 100%, 40%);">+     "popf"                                \</span><br><span style="color: hsl(120, 100%, 40%);">+     "test      eax,ebx"           \</span><br><span style="color: hsl(120, 100%, 40%);">+     "pushf"                               \</span><br><span style="color: hsl(120, 100%, 40%);">+     "pop       [edi]"                     \</span><br><span style="color: hsl(120, 100%, 40%);">+     parm [edi] [eax] [ebx]          \</span><br><span>    modify exact [eax ebx];</span><br><span> </span><br><span style="color: hsl(0, 100%, 40%);">-u8      xor_byte_asm(u32 *flags,u8 d, u8 s);</span><br><span style="color: hsl(0, 100%, 40%);">-#pragma aux xor_byte_asm =                       \</span><br><span style="color: hsl(0, 100%, 40%);">-       "push      [edi]"                     \</span><br><span style="color: hsl(0, 100%, 40%);">-       "popf"                                \</span><br><span style="color: hsl(0, 100%, 40%);">-       "xor       al,bl"                  \</span><br><span style="color: hsl(0, 100%, 40%);">-  "pushf"                         \</span><br><span style="color: hsl(0, 100%, 40%);">-     "pop       [edi]"                     \</span><br><span style="color: hsl(0, 100%, 40%);">-       parm [edi] [al] [bl]            \</span><br><span style="color: hsl(0, 100%, 40%);">-       value [al]                      \</span><br><span style="color: hsl(120, 100%, 40%);">+u8 xor_byte_asm(u32 *flags, u8 d, u8 s);</span><br><span style="color: hsl(120, 100%, 40%);">+#pragma aux xor_byte_asm =         \</span><br><span style="color: hsl(120, 100%, 40%);">+     "push      [edi]"                     \</span><br><span style="color: hsl(120, 100%, 40%);">+     "popf"                                \</span><br><span style="color: hsl(120, 100%, 40%);">+     "xor       al,bl"                     \</span><br><span style="color: hsl(120, 100%, 40%);">+     "pushf"                               \</span><br><span style="color: hsl(120, 100%, 40%);">+     "pop       [edi]"                     \</span><br><span style="color: hsl(120, 100%, 40%);">+     parm [edi] [al] [bl]            \</span><br><span style="color: hsl(120, 100%, 40%);">+     value [al]                      \</span><br><span>    modify exact [al bl];</span><br><span> </span><br><span style="color: hsl(0, 100%, 40%);">-u16     xor_word_asm(u32 *flags,u16 d, u16 s);</span><br><span style="color: hsl(0, 100%, 40%);">-#pragma aux xor_word_asm =                       \</span><br><span style="color: hsl(0, 100%, 40%);">-       "push      [edi]"                     \</span><br><span style="color: hsl(0, 100%, 40%);">-       "popf"                                \</span><br><span style="color: hsl(0, 100%, 40%);">-       "xor       ax,bx"                  \</span><br><span style="color: hsl(0, 100%, 40%);">-  "pushf"                         \</span><br><span style="color: hsl(0, 100%, 40%);">-     "pop       [edi]"                     \</span><br><span style="color: hsl(0, 100%, 40%);">-       parm [edi] [ax] [bx]            \</span><br><span style="color: hsl(0, 100%, 40%);">-       value [ax]                      \</span><br><span style="color: hsl(120, 100%, 40%);">+u16 xor_word_asm(u32 *flags, u16 d, u16 s);</span><br><span style="color: hsl(120, 100%, 40%);">+#pragma aux xor_word_asm =              \</span><br><span style="color: hsl(120, 100%, 40%);">+     "push      [edi]"                     \</span><br><span style="color: hsl(120, 100%, 40%);">+     "popf"                                \</span><br><span style="color: hsl(120, 100%, 40%);">+     "xor       ax,bx"                     \</span><br><span style="color: hsl(120, 100%, 40%);">+     "pushf"                               \</span><br><span style="color: hsl(120, 100%, 40%);">+     "pop       [edi]"                     \</span><br><span style="color: hsl(120, 100%, 40%);">+     parm [edi] [ax] [bx]            \</span><br><span style="color: hsl(120, 100%, 40%);">+     value [ax]                      \</span><br><span>    modify exact [ax bx];</span><br><span> </span><br><span style="color: hsl(0, 100%, 40%);">-u32     xor_long_asm(u32 *flags,u32 d, u32 s);</span><br><span style="color: hsl(0, 100%, 40%);">-#pragma aux xor_long_asm =                       \</span><br><span style="color: hsl(0, 100%, 40%);">-       "push      [edi]"                     \</span><br><span style="color: hsl(0, 100%, 40%);">-       "popf"                                \</span><br><span style="color: hsl(0, 100%, 40%);">-       "xor       eax,ebx"                \</span><br><span style="color: hsl(0, 100%, 40%);">-  "pushf"                         \</span><br><span style="color: hsl(0, 100%, 40%);">-     "pop       [edi]"                     \</span><br><span style="color: hsl(0, 100%, 40%);">-       parm [edi] [eax] [ebx]          \</span><br><span style="color: hsl(0, 100%, 40%);">-       value [eax]                     \</span><br><span style="color: hsl(120, 100%, 40%);">+u32 xor_long_asm(u32 *flags, u32 d, u32 s);</span><br><span style="color: hsl(120, 100%, 40%);">+#pragma aux xor_long_asm =              \</span><br><span style="color: hsl(120, 100%, 40%);">+     "push      [edi]"                     \</span><br><span style="color: hsl(120, 100%, 40%);">+     "popf"                                \</span><br><span style="color: hsl(120, 100%, 40%);">+     "xor       eax,ebx"           \</span><br><span style="color: hsl(120, 100%, 40%);">+     "pushf"                               \</span><br><span style="color: hsl(120, 100%, 40%);">+     "pop       [edi]"                     \</span><br><span style="color: hsl(120, 100%, 40%);">+     parm [edi] [eax] [ebx]          \</span><br><span style="color: hsl(120, 100%, 40%);">+     value [eax]                     \</span><br><span>    modify exact [eax ebx];</span><br><span> </span><br><span style="color: hsl(0, 100%, 40%);">-void    imul_byte_asm(u32 *flags,u16 *ax,u8 d,u8 s);</span><br><span style="color: hsl(0, 100%, 40%);">-#pragma aux imul_byte_asm =                      \</span><br><span style="color: hsl(0, 100%, 40%);">-       "push      [edi]"                     \</span><br><span style="color: hsl(0, 100%, 40%);">-       "popf"                                \</span><br><span style="color: hsl(0, 100%, 40%);">-       "imul      bl"                        \</span><br><span style="color: hsl(0, 100%, 40%);">-       "pushf"                         \</span><br><span style="color: hsl(0, 100%, 40%);">-     "pop       [edi]"                     \</span><br><span style="color: hsl(0, 100%, 40%);">-       "mov       [esi],ax"                          \</span><br><span style="color: hsl(0, 100%, 40%);">-       parm [edi] [esi] [al] [bl]      \</span><br><span style="color: hsl(120, 100%, 40%);">+void imul_byte_asm(u32 *flags, u16 *ax, u8 d, u8 s);</span><br><span style="color: hsl(120, 100%, 40%);">+#pragma aux imul_byte_asm =            \</span><br><span style="color: hsl(120, 100%, 40%);">+     "push      [edi]"                     \</span><br><span style="color: hsl(120, 100%, 40%);">+     "popf"                                \</span><br><span style="color: hsl(120, 100%, 40%);">+     "imul      bl"                        \</span><br><span style="color: hsl(120, 100%, 40%);">+     "pushf"                               \</span><br><span style="color: hsl(120, 100%, 40%);">+     "pop       [edi]"                     \</span><br><span style="color: hsl(120, 100%, 40%);">+     "mov       [esi],ax"          \</span><br><span style="color: hsl(120, 100%, 40%);">+     parm [edi] [esi] [al] [bl]      \</span><br><span>    modify exact [esi ax bl];</span><br><span> </span><br><span style="color: hsl(0, 100%, 40%);">-void    imul_word_asm(u32 *flags,u16 *ax,u16 *dx,u16 d,u16 s);</span><br><span style="color: hsl(120, 100%, 40%);">+void imul_word_asm(u32 *flags, u16 *ax, u16 *dx, u16 d, u16 s);</span><br><span> #pragma aux imul_word_asm =                     \</span><br><span style="color: hsl(0, 100%, 40%);">-       "push      [edi]"                     \</span><br><span style="color: hsl(0, 100%, 40%);">-       "popf"                                \</span><br><span style="color: hsl(0, 100%, 40%);">-       "imul      bx"                        \</span><br><span style="color: hsl(0, 100%, 40%);">-       "pushf"                         \</span><br><span style="color: hsl(0, 100%, 40%);">-     "pop       [edi]"                     \</span><br><span style="color: hsl(0, 100%, 40%);">-       "mov       [esi],ax"                          \</span><br><span style="color: hsl(0, 100%, 40%);">-       "mov       [ecx],dx"                          \</span><br><span style="color: hsl(0, 100%, 40%);">-       parm [edi] [esi] [ecx] [ax] [bx]\</span><br><span style="color: hsl(120, 100%, 40%);">+     "push      [edi]"                             \</span><br><span style="color: hsl(120, 100%, 40%);">+     "popf"                                        \</span><br><span style="color: hsl(120, 100%, 40%);">+     "imul      bx"                                \</span><br><span style="color: hsl(120, 100%, 40%);">+     "pushf"                                       \</span><br><span style="color: hsl(120, 100%, 40%);">+     "pop       [edi]"                             \</span><br><span style="color: hsl(120, 100%, 40%);">+     "mov       [esi],ax"                  \</span><br><span style="color: hsl(120, 100%, 40%);">+     "mov       [ecx],dx"                  \</span><br><span style="color: hsl(120, 100%, 40%);">+     parm [edi] [esi] [ecx] [ax] [bx]        \</span><br><span>    modify exact [esi edi ax bx dx];</span><br><span> </span><br><span style="color: hsl(0, 100%, 40%);">-void    imul_long_asm(u32 *flags,u32 *eax,u32 *edx,u32 d,u32 s);</span><br><span style="color: hsl(120, 100%, 40%);">+void imul_long_asm(u32 *flags, u32 *eax, u32 *edx, u32 d, u32 s);</span><br><span> #pragma aux imul_long_asm =                  \</span><br><span style="color: hsl(0, 100%, 40%);">-       "push      [edi]"                     \</span><br><span style="color: hsl(0, 100%, 40%);">-       "popf"                                \</span><br><span style="color: hsl(0, 100%, 40%);">-       "imul      ebx"                       \</span><br><span style="color: hsl(0, 100%, 40%);">-       "pushf"                         \</span><br><span style="color: hsl(0, 100%, 40%);">-     "pop       [edi]"                     \</span><br><span style="color: hsl(0, 100%, 40%);">-       "mov       [esi],eax"                         \</span><br><span style="color: hsl(0, 100%, 40%);">-       "mov       [ecx],edx"                         \</span><br><span style="color: hsl(0, 100%, 40%);">-       parm [edi] [esi] [ecx] [eax] [ebx] \</span><br><span style="color: hsl(120, 100%, 40%);">+  "push      [edi]"                             \</span><br><span style="color: hsl(120, 100%, 40%);">+     "popf"                                        \</span><br><span style="color: hsl(120, 100%, 40%);">+     "imul      ebx"                               \</span><br><span style="color: hsl(120, 100%, 40%);">+     "pushf"                                       \</span><br><span style="color: hsl(120, 100%, 40%);">+     "pop       [edi]"                             \</span><br><span style="color: hsl(120, 100%, 40%);">+     "mov       [esi],eax"                 \</span><br><span style="color: hsl(120, 100%, 40%);">+     "mov       [ecx],edx"                 \</span><br><span style="color: hsl(120, 100%, 40%);">+     parm [edi] [esi] [ecx] [eax] [ebx]      \</span><br><span>    modify exact [esi edi eax ebx edx];</span><br><span> </span><br><span style="color: hsl(0, 100%, 40%);">-void    mul_byte_asm(u32 *flags,u16 *ax,u8 d,u8 s);</span><br><span style="color: hsl(0, 100%, 40%);">-#pragma aux mul_byte_asm =                    \</span><br><span style="color: hsl(0, 100%, 40%);">-       "push      [edi]"                     \</span><br><span style="color: hsl(0, 100%, 40%);">-       "popf"                                \</span><br><span style="color: hsl(0, 100%, 40%);">-       "mul       bl"                        \</span><br><span style="color: hsl(0, 100%, 40%);">-       "pushf"                         \</span><br><span style="color: hsl(0, 100%, 40%);">-     "pop       [edi]"                     \</span><br><span style="color: hsl(0, 100%, 40%);">-       "mov       [esi],ax"                          \</span><br><span style="color: hsl(0, 100%, 40%);">-       parm [edi] [esi] [al] [bl]      \</span><br><span style="color: hsl(120, 100%, 40%);">+void mul_byte_asm(u32 *flags, u16 *ax, u8 d, u8 s);</span><br><span style="color: hsl(120, 100%, 40%);">+#pragma aux mul_byte_asm =              \</span><br><span style="color: hsl(120, 100%, 40%);">+     "push      [edi]"                     \</span><br><span style="color: hsl(120, 100%, 40%);">+     "popf"                                \</span><br><span style="color: hsl(120, 100%, 40%);">+     "mul       bl"                        \</span><br><span style="color: hsl(120, 100%, 40%);">+     "pushf"                               \</span><br><span style="color: hsl(120, 100%, 40%);">+     "pop       [edi]"                     \</span><br><span style="color: hsl(120, 100%, 40%);">+     "mov       [esi],ax"          \</span><br><span style="color: hsl(120, 100%, 40%);">+     parm [edi] [esi] [al] [bl]      \</span><br><span>    modify exact [esi ax bl];</span><br><span> </span><br><span style="color: hsl(0, 100%, 40%);">-void    mul_word_asm(u32 *flags,u16 *ax,u16 *dx,u16 d,u16 s);</span><br><span style="color: hsl(120, 100%, 40%);">+void mul_word_asm(u32 *flags, u16 *ax, u16 *dx, u16 d, u16 s);</span><br><span> #pragma aux mul_word_asm =                        \</span><br><span style="color: hsl(0, 100%, 40%);">-       "push      [edi]"                     \</span><br><span style="color: hsl(0, 100%, 40%);">-       "popf"                                \</span><br><span style="color: hsl(0, 100%, 40%);">-       "mul       bx"                        \</span><br><span style="color: hsl(0, 100%, 40%);">-       "pushf"                         \</span><br><span style="color: hsl(0, 100%, 40%);">-     "pop       [edi]"                     \</span><br><span style="color: hsl(0, 100%, 40%);">-       "mov       [esi],ax"                          \</span><br><span style="color: hsl(0, 100%, 40%);">-       "mov       [ecx],dx"                          \</span><br><span style="color: hsl(0, 100%, 40%);">-       parm [edi] [esi] [ecx] [ax] [bx]\</span><br><span style="color: hsl(120, 100%, 40%);">+     "push      [edi]"                             \</span><br><span style="color: hsl(120, 100%, 40%);">+     "popf"                                        \</span><br><span style="color: hsl(120, 100%, 40%);">+     "mul       bx"                                \</span><br><span style="color: hsl(120, 100%, 40%);">+     "pushf"                                       \</span><br><span style="color: hsl(120, 100%, 40%);">+     "pop       [edi]"                             \</span><br><span style="color: hsl(120, 100%, 40%);">+     "mov       [esi],ax"                  \</span><br><span style="color: hsl(120, 100%, 40%);">+     "mov       [ecx],dx"                  \</span><br><span style="color: hsl(120, 100%, 40%);">+     parm [edi] [esi] [ecx] [ax] [bx]        \</span><br><span>    modify exact [esi edi ax bx dx];</span><br><span> </span><br><span style="color: hsl(0, 100%, 40%);">-void    mul_long_asm(u32 *flags,u32 *eax,u32 *edx,u32 d,u32 s);</span><br><span style="color: hsl(120, 100%, 40%);">+void mul_long_asm(u32 *flags, u32 *eax, u32 *edx, u32 d, u32 s);</span><br><span> #pragma aux mul_long_asm =                     \</span><br><span style="color: hsl(0, 100%, 40%);">-       "push      [edi]"                     \</span><br><span style="color: hsl(0, 100%, 40%);">-       "popf"                                \</span><br><span style="color: hsl(0, 100%, 40%);">-       "mul       ebx"                       \</span><br><span style="color: hsl(0, 100%, 40%);">-       "pushf"                         \</span><br><span style="color: hsl(0, 100%, 40%);">-     "pop       [edi]"                     \</span><br><span style="color: hsl(0, 100%, 40%);">-       "mov       [esi],eax"                         \</span><br><span style="color: hsl(0, 100%, 40%);">-       "mov       [ecx],edx"                         \</span><br><span style="color: hsl(0, 100%, 40%);">-       parm [edi] [esi] [ecx] [eax] [ebx] \</span><br><span style="color: hsl(120, 100%, 40%);">+  "push      [edi]"                             \</span><br><span style="color: hsl(120, 100%, 40%);">+     "popf"                                        \</span><br><span style="color: hsl(120, 100%, 40%);">+     "mul       ebx"                               \</span><br><span style="color: hsl(120, 100%, 40%);">+     "pushf"                                       \</span><br><span style="color: hsl(120, 100%, 40%);">+     "pop       [edi]"                             \</span><br><span style="color: hsl(120, 100%, 40%);">+     "mov       [esi],eax"                 \</span><br><span style="color: hsl(120, 100%, 40%);">+     "mov       [ecx],edx"                 \</span><br><span style="color: hsl(120, 100%, 40%);">+     parm [edi] [esi] [ecx] [eax] [ebx]      \</span><br><span>    modify exact [esi edi eax ebx edx];</span><br><span> </span><br><span style="color: hsl(0, 100%, 40%);">-void     idiv_byte_asm(u32 *flags,u8 *al,u8 *ah,u16 d,u8 s);</span><br><span style="color: hsl(120, 100%, 40%);">+void idiv_byte_asm(u32 *flags, u8 *al, u8 *ah, u16 d, u8 s);</span><br><span> #pragma aux idiv_byte_asm =                        \</span><br><span style="color: hsl(0, 100%, 40%);">-       "push      [edi]"                     \</span><br><span style="color: hsl(0, 100%, 40%);">-       "popf"                                \</span><br><span style="color: hsl(0, 100%, 40%);">-       "idiv      bl"                        \</span><br><span style="color: hsl(0, 100%, 40%);">-       "pushf"                         \</span><br><span style="color: hsl(0, 100%, 40%);">-     "pop       [edi]"                     \</span><br><span style="color: hsl(0, 100%, 40%);">-       "mov       [esi],al"                          \</span><br><span style="color: hsl(0, 100%, 40%);">-       "mov       [ecx],ah"                          \</span><br><span style="color: hsl(0, 100%, 40%);">-       parm [edi] [esi] [ecx] [ax] [bl]\</span><br><span style="color: hsl(120, 100%, 40%);">+     "push      [edi]"                             \</span><br><span style="color: hsl(120, 100%, 40%);">+     "popf"                                        \</span><br><span style="color: hsl(120, 100%, 40%);">+     "idiv      bl"                                \</span><br><span style="color: hsl(120, 100%, 40%);">+     "pushf"                                       \</span><br><span style="color: hsl(120, 100%, 40%);">+     "pop       [edi]"                             \</span><br><span style="color: hsl(120, 100%, 40%);">+     "mov       [esi],al"                  \</span><br><span style="color: hsl(120, 100%, 40%);">+     "mov       [ecx],ah"                  \</span><br><span style="color: hsl(120, 100%, 40%);">+     parm [edi] [esi] [ecx] [ax] [bl]        \</span><br><span>    modify exact [esi edi ax bl];</span><br><span> </span><br><span style="color: hsl(0, 100%, 40%);">-void   idiv_word_asm(u32 *flags,u16 *ax,u16 *dx,u16 dlo,u16 dhi,u16 s);</span><br><span style="color: hsl(120, 100%, 40%);">+void idiv_word_asm(u32 *flags, u16 *ax, u16 *dx, u16 dlo, u16 dhi, u16 s);</span><br><span> #pragma aux idiv_word_asm =                     \</span><br><span style="color: hsl(0, 100%, 40%);">-       "push      [edi]"                     \</span><br><span style="color: hsl(0, 100%, 40%);">-       "popf"                                \</span><br><span style="color: hsl(0, 100%, 40%);">-       "idiv      bx"                        \</span><br><span style="color: hsl(0, 100%, 40%);">-       "pushf"                         \</span><br><span style="color: hsl(0, 100%, 40%);">-     "pop       [edi]"                     \</span><br><span style="color: hsl(0, 100%, 40%);">-       "mov       [esi],ax"                          \</span><br><span style="color: hsl(0, 100%, 40%);">-       "mov       [ecx],dx"                          \</span><br><span style="color: hsl(0, 100%, 40%);">-       parm [edi] [esi] [ecx] [ax] [dx] [bx]\</span><br><span style="color: hsl(120, 100%, 40%);">+        "push      [edi]"                             \</span><br><span style="color: hsl(120, 100%, 40%);">+     "popf"                                        \</span><br><span style="color: hsl(120, 100%, 40%);">+     "idiv      bx"                                \</span><br><span style="color: hsl(120, 100%, 40%);">+     "pushf"                                       \</span><br><span style="color: hsl(120, 100%, 40%);">+     "pop       [edi]"                             \</span><br><span style="color: hsl(120, 100%, 40%);">+     "mov       [esi],ax"                  \</span><br><span style="color: hsl(120, 100%, 40%);">+     "mov       [ecx],dx"                  \</span><br><span style="color: hsl(120, 100%, 40%);">+     parm [edi] [esi] [ecx] [ax] [dx] [bx]   \</span><br><span>    modify exact [esi edi ax dx bx];</span><br><span> </span><br><span style="color: hsl(0, 100%, 40%);">-void        idiv_long_asm(u32 *flags,u32 *eax,u32 *edx,u32 dlo,u32 dhi,u32 s);</span><br><span style="color: hsl(0, 100%, 40%);">-#pragma aux idiv_long_asm =                   \</span><br><span style="color: hsl(0, 100%, 40%);">-       "push      [edi]"                     \</span><br><span style="color: hsl(0, 100%, 40%);">-       "popf"                                \</span><br><span style="color: hsl(0, 100%, 40%);">-       "idiv      ebx"                       \</span><br><span style="color: hsl(0, 100%, 40%);">-       "pushf"                         \</span><br><span style="color: hsl(0, 100%, 40%);">-     "pop       [edi]"                     \</span><br><span style="color: hsl(120, 100%, 40%);">+void idiv_long_asm(u32 *flags, u32 *eax, u32 *edx, u32 dlo, u32 dhi, u32 s);</span><br><span style="color: hsl(120, 100%, 40%);">+#pragma aux idiv_long_asm =                            \</span><br><span style="color: hsl(120, 100%, 40%);">+     "push      [edi]"                                     \</span><br><span style="color: hsl(120, 100%, 40%);">+     "popf"                                                \</span><br><span style="color: hsl(120, 100%, 40%);">+     "idiv      ebx"                                       \</span><br><span style="color: hsl(120, 100%, 40%);">+     "pushf"                                               \</span><br><span style="color: hsl(120, 100%, 40%);">+     "pop       [edi]"                                     \</span><br><span>    "mov       [esi],eax"                         \</span><br><span>    "mov       [ecx],edx"                         \</span><br><span style="color: hsl(0, 100%, 40%);">-       parm [edi] [esi] [ecx] [eax] [edx] [ebx]\</span><br><span style="color: hsl(120, 100%, 40%);">+     parm [edi] [esi] [ecx] [eax] [edx] [ebx]        \</span><br><span>    modify exact [esi edi eax edx ebx];</span><br><span> </span><br><span style="color: hsl(0, 100%, 40%);">-void     div_byte_asm(u32 *flags,u8 *al,u8 *ah,u16 d,u8 s);</span><br><span style="color: hsl(120, 100%, 40%);">+void div_byte_asm(u32 *flags, u8 *al, u8 *ah, u16 d, u8 s);</span><br><span> #pragma aux div_byte_asm =                   \</span><br><span style="color: hsl(0, 100%, 40%);">-       "push      [edi]"                     \</span><br><span style="color: hsl(0, 100%, 40%);">-       "popf"                                \</span><br><span style="color: hsl(0, 100%, 40%);">-       "div       bl"                        \</span><br><span style="color: hsl(0, 100%, 40%);">-       "pushf"                         \</span><br><span style="color: hsl(0, 100%, 40%);">-     "pop       [edi]"                     \</span><br><span style="color: hsl(0, 100%, 40%);">-       "mov       [esi],al"                          \</span><br><span style="color: hsl(0, 100%, 40%);">-       "mov       [ecx],ah"                          \</span><br><span style="color: hsl(0, 100%, 40%);">-       parm [edi] [esi] [ecx] [ax] [bl]\</span><br><span style="color: hsl(120, 100%, 40%);">+     "push      [edi]"                             \</span><br><span style="color: hsl(120, 100%, 40%);">+     "popf"                                        \</span><br><span style="color: hsl(120, 100%, 40%);">+     "div       bl"                                \</span><br><span style="color: hsl(120, 100%, 40%);">+     "pushf"                                       \</span><br><span style="color: hsl(120, 100%, 40%);">+     "pop       [edi]"                             \</span><br><span style="color: hsl(120, 100%, 40%);">+     "mov       [esi],al"                  \</span><br><span style="color: hsl(120, 100%, 40%);">+     "mov       [ecx],ah"                  \</span><br><span style="color: hsl(120, 100%, 40%);">+     parm [edi] [esi] [ecx] [ax] [bl]        \</span><br><span>    modify exact [esi edi ax bl];</span><br><span> </span><br><span style="color: hsl(0, 100%, 40%);">-void   div_word_asm(u32 *flags,u16 *ax,u16 *dx,u16 dlo,u16 dhi,u16 s);</span><br><span style="color: hsl(120, 100%, 40%);">+void div_word_asm(u32 *flags, u16 *ax, u16 *dx, u16 dlo, u16 dhi, u16 s);</span><br><span> #pragma aux div_word_asm =                        \</span><br><span style="color: hsl(0, 100%, 40%);">-       "push      [edi]"                     \</span><br><span style="color: hsl(0, 100%, 40%);">-       "popf"                                \</span><br><span style="color: hsl(0, 100%, 40%);">-       "div       bx"                        \</span><br><span style="color: hsl(0, 100%, 40%);">-       "pushf"                         \</span><br><span style="color: hsl(0, 100%, 40%);">-     "pop       [edi]"                     \</span><br><span style="color: hsl(0, 100%, 40%);">-       "mov       [esi],ax"                          \</span><br><span style="color: hsl(0, 100%, 40%);">-       "mov       [ecx],dx"                          \</span><br><span style="color: hsl(0, 100%, 40%);">-       parm [edi] [esi] [ecx] [ax] [dx] [bx]\</span><br><span style="color: hsl(120, 100%, 40%);">+        "push      [edi]"                             \</span><br><span style="color: hsl(120, 100%, 40%);">+     "popf"                                        \</span><br><span style="color: hsl(120, 100%, 40%);">+     "div       bx"                                \</span><br><span style="color: hsl(120, 100%, 40%);">+     "pushf"                                       \</span><br><span style="color: hsl(120, 100%, 40%);">+     "pop       [edi]"                             \</span><br><span style="color: hsl(120, 100%, 40%);">+     "mov       [esi],ax"                  \</span><br><span style="color: hsl(120, 100%, 40%);">+     "mov       [ecx],dx"                  \</span><br><span style="color: hsl(120, 100%, 40%);">+     parm [edi] [esi] [ecx] [ax] [dx] [bx]   \</span><br><span>    modify exact [esi edi ax dx bx];</span><br><span> </span><br><span style="color: hsl(0, 100%, 40%);">-void        div_long_asm(u32 *flags,u32 *eax,u32 *edx,u32 dlo,u32 dhi,u32 s);</span><br><span style="color: hsl(0, 100%, 40%);">-#pragma aux div_long_asm =                     \</span><br><span style="color: hsl(0, 100%, 40%);">-       "push      [edi]"                     \</span><br><span style="color: hsl(0, 100%, 40%);">-       "popf"                                \</span><br><span style="color: hsl(0, 100%, 40%);">-       "div       ebx"                       \</span><br><span style="color: hsl(0, 100%, 40%);">-       "pushf"                         \</span><br><span style="color: hsl(0, 100%, 40%);">-     "pop       [edi]"                     \</span><br><span style="color: hsl(120, 100%, 40%);">+void div_long_asm(u32 *flags, u32 *eax, u32 *edx, u32 dlo, u32 dhi, u32 s);</span><br><span style="color: hsl(120, 100%, 40%);">+#pragma aux div_long_asm =                              \</span><br><span style="color: hsl(120, 100%, 40%);">+     "push      [edi]"                                     \</span><br><span style="color: hsl(120, 100%, 40%);">+     "popf"                                                \</span><br><span style="color: hsl(120, 100%, 40%);">+     "div       ebx"                                       \</span><br><span style="color: hsl(120, 100%, 40%);">+     "pushf"                                               \</span><br><span style="color: hsl(120, 100%, 40%);">+     "pop       [edi]"                                     \</span><br><span>    "mov       [esi],eax"                         \</span><br><span>    "mov       [ecx],edx"                         \</span><br><span style="color: hsl(0, 100%, 40%);">-       parm [edi] [esi] [ecx] [eax] [edx] [ebx]\</span><br><span style="color: hsl(120, 100%, 40%);">+     parm [edi] [esi] [ecx] [eax] [edx] [ebx]        \</span><br><span>    modify exact [esi edi eax edx ebx];</span><br><span> </span><br><span> #endif</span><br><span>diff --git a/src/device/oprom/x86emu/prim_ops.c b/src/device/oprom/x86emu/prim_ops.c</span><br><span>index 8b2c38a..4fb6407 100644</span><br><span>--- a/src/device/oprom/x86emu/prim_ops.c</span><br><span>+++ b/src/device/oprom/x86emu/prim_ops.c</span><br><span>@@ -1920,7 +1920,7 @@</span><br><span> ****************************************************************************/</span><br><span> void imul_long_direct(u32 *res_lo, u32* res_hi,u32 d, u32 s)</span><br><span> {</span><br><span style="color: hsl(0, 100%, 40%);">-#ifdef  __HAS_LONG_LONG__</span><br><span style="color: hsl(120, 100%, 40%);">+#ifdef __HAS_LONG_LONG__</span><br><span>     s64 res = (s64)(s32)d * (s64)(s32)s;</span><br><span> </span><br><span>     *res_lo = (u32)res;</span><br><span>@@ -2012,7 +2012,7 @@</span><br><span> ****************************************************************************/</span><br><span> void mul_long(u32 s)</span><br><span> {</span><br><span style="color: hsl(0, 100%, 40%);">-#ifdef  __HAS_LONG_LONG__</span><br><span style="color: hsl(120, 100%, 40%);">+#ifdef __HAS_LONG_LONG__</span><br><span>     u64 res = (u64)M.x86.R_EAX * s;</span><br><span> </span><br><span>     M.x86.R_EAX = (u32)res;</span><br><span>@@ -2099,7 +2099,7 @@</span><br><span> ****************************************************************************/</span><br><span> void idiv_long(u32 s)</span><br><span> {</span><br><span style="color: hsl(0, 100%, 40%);">-#ifdef  __HAS_LONG_LONG__</span><br><span style="color: hsl(120, 100%, 40%);">+#ifdef __HAS_LONG_LONG__</span><br><span>     s64 dvd, div, mod;</span><br><span> </span><br><span>     dvd = (((s64)M.x86.R_EDX) << 32) | M.x86.R_EAX;</span><br><span>@@ -2224,7 +2224,7 @@</span><br><span> ****************************************************************************/</span><br><span> void div_long(u32 s)</span><br><span> {</span><br><span style="color: hsl(0, 100%, 40%);">-#ifdef  __HAS_LONG_LONG__</span><br><span style="color: hsl(120, 100%, 40%);">+#ifdef __HAS_LONG_LONG__</span><br><span>     u64 dvd, div, mod;</span><br><span> </span><br><span>     dvd = (((u64)M.x86.R_EDX) << 32) | M.x86.R_EAX;</span><br><span>diff --git a/src/device/oprom/x86emu/prim_ops.h b/src/device/oprom/x86emu/prim_ops.h</span><br><span>index 7230a71..9074186 100644</span><br><span>--- a/src/device/oprom/x86emu/prim_ops.h</span><br><span>+++ b/src/device/oprom/x86emu/prim_ops.h</span><br><span>@@ -1,10 +1,10 @@</span><br><span> /****************************************************************************</span><br><span> *</span><br><span style="color: hsl(0, 100%, 40%);">-*                                          Realmode X86 Emulator Library</span><br><span style="color: hsl(120, 100%, 40%);">+*                        Realmode X86 Emulator Library</span><br><span> *</span><br><span style="color: hsl(0, 100%, 40%);">-*             Copyright (C) 1996-1999 SciTech Software, Inc.</span><br><span style="color: hsl(0, 100%, 40%);">-*                                      Copyright (C) David Mosberger-Tang</span><br><span style="color: hsl(0, 100%, 40%);">-*                                           Copyright (C) 1999 Egbert Eich</span><br><span style="color: hsl(120, 100%, 40%);">+*            Copyright (C) 1996-1999 SciTech Software, Inc.</span><br><span style="color: hsl(120, 100%, 40%);">+*               Copyright (C) David Mosberger-Tang</span><br><span style="color: hsl(120, 100%, 40%);">+*           Copyright (C) 1999 Egbert Eich</span><br><span> *</span><br><span> *  ========================================================================</span><br><span> *</span><br><span>@@ -28,11 +28,11 @@</span><br><span> *</span><br><span> *  ========================================================================</span><br><span> *</span><br><span style="color: hsl(0, 100%, 40%);">-* Language:               ANSI C</span><br><span style="color: hsl(120, 100%, 40%);">+* Language:     ANSI C</span><br><span> * Environment:        Any</span><br><span style="color: hsl(0, 100%, 40%);">-* Developer:    Kendall Bennett</span><br><span style="color: hsl(120, 100%, 40%);">+* Developer:        Kendall Bennett</span><br><span> *</span><br><span style="color: hsl(0, 100%, 40%);">-* Description:  Header file for primitive operation functions.</span><br><span style="color: hsl(120, 100%, 40%);">+* Description:      Header file for primitive operation functions.</span><br><span> *</span><br><span> ****************************************************************************/</span><br><span> </span><br><span>@@ -41,192 +41,191 @@</span><br><span> </span><br><span> #include "prim_asm.h"</span><br><span> </span><br><span style="color: hsl(0, 100%, 40%);">-#ifdef  __cplusplus</span><br><span style="color: hsl(0, 100%, 40%);">-extern "C" {                                    /* Use "C" linkage when in C++ mode */</span><br><span style="color: hsl(120, 100%, 40%);">+#ifdef __cplusplus</span><br><span style="color: hsl(120, 100%, 40%);">+extern "C" {            /* Use "C" linkage when in C++ mode */</span><br><span> #endif</span><br><span> </span><br><span style="color: hsl(0, 100%, 40%);">-u16     aaa_word (u16 d);</span><br><span style="color: hsl(0, 100%, 40%);">-u16     aas_word (u16 d);</span><br><span style="color: hsl(0, 100%, 40%);">-u16     aad_word (u16 d);</span><br><span style="color: hsl(0, 100%, 40%);">-u16     aam_word (u8 d);</span><br><span style="color: hsl(0, 100%, 40%);">-u8      adc_byte (u8 d, u8 s);</span><br><span style="color: hsl(0, 100%, 40%);">-u16     adc_word (u16 d, u16 s);</span><br><span style="color: hsl(0, 100%, 40%);">-u32     adc_long (u32 d, u32 s);</span><br><span style="color: hsl(0, 100%, 40%);">-u8      add_byte (u8 d, u8 s);</span><br><span style="color: hsl(0, 100%, 40%);">-u16     add_word (u16 d, u16 s);</span><br><span style="color: hsl(0, 100%, 40%);">-u32     add_long (u32 d, u32 s);</span><br><span style="color: hsl(0, 100%, 40%);">-u8      and_byte (u8 d, u8 s);</span><br><span style="color: hsl(0, 100%, 40%);">-u16     and_word (u16 d, u16 s);</span><br><span style="color: hsl(0, 100%, 40%);">-u32     and_long (u32 d, u32 s);</span><br><span style="color: hsl(0, 100%, 40%);">-u8      cmp_byte (u8 d, u8 s);</span><br><span style="color: hsl(0, 100%, 40%);">-u16     cmp_word (u16 d, u16 s);</span><br><span style="color: hsl(0, 100%, 40%);">-u32     cmp_long (u32 d, u32 s);</span><br><span style="color: hsl(0, 100%, 40%);">-u8      daa_byte (u8 d);</span><br><span style="color: hsl(0, 100%, 40%);">-u8      das_byte (u8 d);</span><br><span style="color: hsl(0, 100%, 40%);">-u8      dec_byte (u8 d);</span><br><span style="color: hsl(0, 100%, 40%);">-u16     dec_word (u16 d);</span><br><span style="color: hsl(0, 100%, 40%);">-u32     dec_long (u32 d);</span><br><span style="color: hsl(0, 100%, 40%);">-u8      inc_byte (u8 d);</span><br><span style="color: hsl(0, 100%, 40%);">-u16     inc_word (u16 d);</span><br><span style="color: hsl(0, 100%, 40%);">-u32     inc_long (u32 d);</span><br><span style="color: hsl(0, 100%, 40%);">-u8      or_byte (u8 d, u8 s);</span><br><span style="color: hsl(0, 100%, 40%);">-u16     or_word (u16 d, u16 s);</span><br><span style="color: hsl(0, 100%, 40%);">-u32     or_long (u32 d, u32 s);</span><br><span style="color: hsl(0, 100%, 40%);">-u8      neg_byte (u8 s);</span><br><span style="color: hsl(0, 100%, 40%);">-u16     neg_word (u16 s);</span><br><span style="color: hsl(0, 100%, 40%);">-u32     neg_long (u32 s);</span><br><span style="color: hsl(0, 100%, 40%);">-u8      not_byte (u8 s);</span><br><span style="color: hsl(0, 100%, 40%);">-u16     not_word (u16 s);</span><br><span style="color: hsl(0, 100%, 40%);">-u32     not_long (u32 s);</span><br><span style="color: hsl(0, 100%, 40%);">-u8      rcl_byte (u8 d, u8 s);</span><br><span style="color: hsl(0, 100%, 40%);">-u16     rcl_word (u16 d, u8 s);</span><br><span style="color: hsl(0, 100%, 40%);">-u32     rcl_long (u32 d, u8 s);</span><br><span style="color: hsl(0, 100%, 40%);">-u8      rcr_byte (u8 d, u8 s);</span><br><span style="color: hsl(0, 100%, 40%);">-u16     rcr_word (u16 d, u8 s);</span><br><span style="color: hsl(0, 100%, 40%);">-u32     rcr_long (u32 d, u8 s);</span><br><span style="color: hsl(0, 100%, 40%);">-u8      rol_byte (u8 d, u8 s);</span><br><span style="color: hsl(0, 100%, 40%);">-u16     rol_word (u16 d, u8 s);</span><br><span style="color: hsl(0, 100%, 40%);">-u32     rol_long (u32 d, u8 s);</span><br><span style="color: hsl(0, 100%, 40%);">-u8      ror_byte (u8 d, u8 s);</span><br><span style="color: hsl(0, 100%, 40%);">-u16     ror_word (u16 d, u8 s);</span><br><span style="color: hsl(0, 100%, 40%);">-u32     ror_long (u32 d, u8 s);</span><br><span style="color: hsl(0, 100%, 40%);">-u8      shl_byte (u8 d, u8 s);</span><br><span style="color: hsl(0, 100%, 40%);">-u16     shl_word (u16 d, u8 s);</span><br><span style="color: hsl(0, 100%, 40%);">-u32     shl_long (u32 d, u8 s);</span><br><span style="color: hsl(0, 100%, 40%);">-u8      shr_byte (u8 d, u8 s);</span><br><span style="color: hsl(0, 100%, 40%);">-u16     shr_word (u16 d, u8 s);</span><br><span style="color: hsl(0, 100%, 40%);">-u32     shr_long (u32 d, u8 s);</span><br><span style="color: hsl(0, 100%, 40%);">-u8      sar_byte (u8 d, u8 s);</span><br><span style="color: hsl(0, 100%, 40%);">-u16     sar_word (u16 d, u8 s);</span><br><span style="color: hsl(0, 100%, 40%);">-u32     sar_long (u32 d, u8 s);</span><br><span style="color: hsl(0, 100%, 40%);">-u16     shld_word (u16 d, u16 fill, u8 s);</span><br><span style="color: hsl(0, 100%, 40%);">-u32     shld_long (u32 d, u32 fill, u8 s);</span><br><span style="color: hsl(0, 100%, 40%);">-u16     shrd_word (u16 d, u16 fill, u8 s);</span><br><span style="color: hsl(0, 100%, 40%);">-u32     shrd_long (u32 d, u32 fill, u8 s);</span><br><span style="color: hsl(0, 100%, 40%);">-u8      sbb_byte (u8 d, u8 s);</span><br><span style="color: hsl(0, 100%, 40%);">-u16     sbb_word (u16 d, u16 s);</span><br><span style="color: hsl(0, 100%, 40%);">-u32     sbb_long (u32 d, u32 s);</span><br><span style="color: hsl(0, 100%, 40%);">-u8      sub_byte (u8 d, u8 s);</span><br><span style="color: hsl(0, 100%, 40%);">-u16     sub_word (u16 d, u16 s);</span><br><span style="color: hsl(0, 100%, 40%);">-u32     sub_long (u32 d, u32 s);</span><br><span style="color: hsl(0, 100%, 40%);">-void    test_byte (u8 d, u8 s);</span><br><span style="color: hsl(0, 100%, 40%);">-void    test_word (u16 d, u16 s);</span><br><span style="color: hsl(0, 100%, 40%);">-void    test_long (u32 d, u32 s);</span><br><span style="color: hsl(0, 100%, 40%);">-u8      xor_byte (u8 d, u8 s);</span><br><span style="color: hsl(0, 100%, 40%);">-u16     xor_word (u16 d, u16 s);</span><br><span style="color: hsl(0, 100%, 40%);">-u32     xor_long (u32 d, u32 s);</span><br><span style="color: hsl(0, 100%, 40%);">-void    imul_byte (u8 s);</span><br><span style="color: hsl(0, 100%, 40%);">-void    imul_word (u16 s);</span><br><span style="color: hsl(0, 100%, 40%);">-void    imul_long (u32 s);</span><br><span style="color: hsl(0, 100%, 40%);">-void    imul_long_direct(u32 *res_lo, u32* res_hi,u32 d, u32 s);</span><br><span style="color: hsl(0, 100%, 40%);">-void    mul_byte (u8 s);</span><br><span style="color: hsl(0, 100%, 40%);">-void    mul_word (u16 s);</span><br><span style="color: hsl(0, 100%, 40%);">-void    mul_long (u32 s);</span><br><span style="color: hsl(0, 100%, 40%);">-void    idiv_byte (u8 s);</span><br><span style="color: hsl(0, 100%, 40%);">-void    idiv_word (u16 s);</span><br><span style="color: hsl(0, 100%, 40%);">-void    idiv_long (u32 s);</span><br><span style="color: hsl(0, 100%, 40%);">-void    div_byte (u8 s);</span><br><span style="color: hsl(0, 100%, 40%);">-void    div_word (u16 s);</span><br><span style="color: hsl(0, 100%, 40%);">-void    div_long (u32 s);</span><br><span style="color: hsl(0, 100%, 40%);">-void    ins (int size);</span><br><span style="color: hsl(0, 100%, 40%);">-void    outs (int size);</span><br><span style="color: hsl(0, 100%, 40%);">-u16     mem_access_word (int addr);</span><br><span style="color: hsl(0, 100%, 40%);">-void    push_word (u16 w);</span><br><span style="color: hsl(0, 100%, 40%);">-void    push_long (u32 w);</span><br><span style="color: hsl(0, 100%, 40%);">-u16     pop_word (void);</span><br><span style="color: hsl(0, 100%, 40%);">-u32      pop_long (void);</span><br><span style="color: hsl(0, 100%, 40%);">-void    x86emu_cpuid (void);</span><br><span style="color: hsl(120, 100%, 40%);">+  u16 aaa_word(u16 d);</span><br><span style="color: hsl(120, 100%, 40%);">+  u16 aas_word(u16 d);</span><br><span style="color: hsl(120, 100%, 40%);">+  u16 aad_word(u16 d);</span><br><span style="color: hsl(120, 100%, 40%);">+  u16 aam_word(u8 d);</span><br><span style="color: hsl(120, 100%, 40%);">+   u8 adc_byte(u8 d, u8 s);</span><br><span style="color: hsl(120, 100%, 40%);">+      u16 adc_word(u16 d, u16 s);</span><br><span style="color: hsl(120, 100%, 40%);">+   u32 adc_long(u32 d, u32 s);</span><br><span style="color: hsl(120, 100%, 40%);">+   u8 add_byte(u8 d, u8 s);</span><br><span style="color: hsl(120, 100%, 40%);">+      u16 add_word(u16 d, u16 s);</span><br><span style="color: hsl(120, 100%, 40%);">+   u32 add_long(u32 d, u32 s);</span><br><span style="color: hsl(120, 100%, 40%);">+   u8 and_byte(u8 d, u8 s);</span><br><span style="color: hsl(120, 100%, 40%);">+      u16 and_word(u16 d, u16 s);</span><br><span style="color: hsl(120, 100%, 40%);">+   u32 and_long(u32 d, u32 s);</span><br><span style="color: hsl(120, 100%, 40%);">+   u8 cmp_byte(u8 d, u8 s);</span><br><span style="color: hsl(120, 100%, 40%);">+      u16 cmp_word(u16 d, u16 s);</span><br><span style="color: hsl(120, 100%, 40%);">+   u32 cmp_long(u32 d, u32 s);</span><br><span style="color: hsl(120, 100%, 40%);">+   u8 daa_byte(u8 d);</span><br><span style="color: hsl(120, 100%, 40%);">+    u8 das_byte(u8 d);</span><br><span style="color: hsl(120, 100%, 40%);">+    u8 dec_byte(u8 d);</span><br><span style="color: hsl(120, 100%, 40%);">+    u16 dec_word(u16 d);</span><br><span style="color: hsl(120, 100%, 40%);">+  u32 dec_long(u32 d);</span><br><span style="color: hsl(120, 100%, 40%);">+  u8 inc_byte(u8 d);</span><br><span style="color: hsl(120, 100%, 40%);">+    u16 inc_word(u16 d);</span><br><span style="color: hsl(120, 100%, 40%);">+  u32 inc_long(u32 d);</span><br><span style="color: hsl(120, 100%, 40%);">+  u8 or_byte(u8 d, u8 s);</span><br><span style="color: hsl(120, 100%, 40%);">+       u16 or_word(u16 d, u16 s);</span><br><span style="color: hsl(120, 100%, 40%);">+    u32 or_long(u32 d, u32 s);</span><br><span style="color: hsl(120, 100%, 40%);">+    u8 neg_byte(u8 s);</span><br><span style="color: hsl(120, 100%, 40%);">+    u16 neg_word(u16 s);</span><br><span style="color: hsl(120, 100%, 40%);">+  u32 neg_long(u32 s);</span><br><span style="color: hsl(120, 100%, 40%);">+  u8 not_byte(u8 s);</span><br><span style="color: hsl(120, 100%, 40%);">+    u16 not_word(u16 s);</span><br><span style="color: hsl(120, 100%, 40%);">+  u32 not_long(u32 s);</span><br><span style="color: hsl(120, 100%, 40%);">+  u8 rcl_byte(u8 d, u8 s);</span><br><span style="color: hsl(120, 100%, 40%);">+      u16 rcl_word(u16 d, u8 s);</span><br><span style="color: hsl(120, 100%, 40%);">+    u32 rcl_long(u32 d, u8 s);</span><br><span style="color: hsl(120, 100%, 40%);">+    u8 rcr_byte(u8 d, u8 s);</span><br><span style="color: hsl(120, 100%, 40%);">+      u16 rcr_word(u16 d, u8 s);</span><br><span style="color: hsl(120, 100%, 40%);">+    u32 rcr_long(u32 d, u8 s);</span><br><span style="color: hsl(120, 100%, 40%);">+    u8 rol_byte(u8 d, u8 s);</span><br><span style="color: hsl(120, 100%, 40%);">+      u16 rol_word(u16 d, u8 s);</span><br><span style="color: hsl(120, 100%, 40%);">+    u32 rol_long(u32 d, u8 s);</span><br><span style="color: hsl(120, 100%, 40%);">+    u8 ror_byte(u8 d, u8 s);</span><br><span style="color: hsl(120, 100%, 40%);">+      u16 ror_word(u16 d, u8 s);</span><br><span style="color: hsl(120, 100%, 40%);">+    u32 ror_long(u32 d, u8 s);</span><br><span style="color: hsl(120, 100%, 40%);">+    u8 shl_byte(u8 d, u8 s);</span><br><span style="color: hsl(120, 100%, 40%);">+      u16 shl_word(u16 d, u8 s);</span><br><span style="color: hsl(120, 100%, 40%);">+    u32 shl_long(u32 d, u8 s);</span><br><span style="color: hsl(120, 100%, 40%);">+    u8 shr_byte(u8 d, u8 s);</span><br><span style="color: hsl(120, 100%, 40%);">+      u16 shr_word(u16 d, u8 s);</span><br><span style="color: hsl(120, 100%, 40%);">+    u32 shr_long(u32 d, u8 s);</span><br><span style="color: hsl(120, 100%, 40%);">+    u8 sar_byte(u8 d, u8 s);</span><br><span style="color: hsl(120, 100%, 40%);">+      u16 sar_word(u16 d, u8 s);</span><br><span style="color: hsl(120, 100%, 40%);">+    u32 sar_long(u32 d, u8 s);</span><br><span style="color: hsl(120, 100%, 40%);">+    u16 shld_word(u16 d, u16 fill, u8 s);</span><br><span style="color: hsl(120, 100%, 40%);">+ u32 shld_long(u32 d, u32 fill, u8 s);</span><br><span style="color: hsl(120, 100%, 40%);">+ u16 shrd_word(u16 d, u16 fill, u8 s);</span><br><span style="color: hsl(120, 100%, 40%);">+ u32 shrd_long(u32 d, u32 fill, u8 s);</span><br><span style="color: hsl(120, 100%, 40%);">+ u8 sbb_byte(u8 d, u8 s);</span><br><span style="color: hsl(120, 100%, 40%);">+      u16 sbb_word(u16 d, u16 s);</span><br><span style="color: hsl(120, 100%, 40%);">+   u32 sbb_long(u32 d, u32 s);</span><br><span style="color: hsl(120, 100%, 40%);">+   u8 sub_byte(u8 d, u8 s);</span><br><span style="color: hsl(120, 100%, 40%);">+      u16 sub_word(u16 d, u16 s);</span><br><span style="color: hsl(120, 100%, 40%);">+   u32 sub_long(u32 d, u32 s);</span><br><span style="color: hsl(120, 100%, 40%);">+   void test_byte(u8 d, u8 s);</span><br><span style="color: hsl(120, 100%, 40%);">+   void test_word(u16 d, u16 s);</span><br><span style="color: hsl(120, 100%, 40%);">+ void test_long(u32 d, u32 s);</span><br><span style="color: hsl(120, 100%, 40%);">+ u8 xor_byte(u8 d, u8 s);</span><br><span style="color: hsl(120, 100%, 40%);">+      u16 xor_word(u16 d, u16 s);</span><br><span style="color: hsl(120, 100%, 40%);">+   u32 xor_long(u32 d, u32 s);</span><br><span style="color: hsl(120, 100%, 40%);">+   void imul_byte(u8 s);</span><br><span style="color: hsl(120, 100%, 40%);">+ void imul_word(u16 s);</span><br><span style="color: hsl(120, 100%, 40%);">+        void imul_long(u32 s);</span><br><span style="color: hsl(120, 100%, 40%);">+        void imul_long_direct(u32 *res_lo, u32 *res_hi, u32 d, u32 s);</span><br><span style="color: hsl(120, 100%, 40%);">+        void mul_byte(u8 s);</span><br><span style="color: hsl(120, 100%, 40%);">+  void mul_word(u16 s);</span><br><span style="color: hsl(120, 100%, 40%);">+ void mul_long(u32 s);</span><br><span style="color: hsl(120, 100%, 40%);">+ void idiv_byte(u8 s);</span><br><span style="color: hsl(120, 100%, 40%);">+ void idiv_word(u16 s);</span><br><span style="color: hsl(120, 100%, 40%);">+        void idiv_long(u32 s);</span><br><span style="color: hsl(120, 100%, 40%);">+        void div_byte(u8 s);</span><br><span style="color: hsl(120, 100%, 40%);">+  void div_word(u16 s);</span><br><span style="color: hsl(120, 100%, 40%);">+ void div_long(u32 s);</span><br><span style="color: hsl(120, 100%, 40%);">+ void ins(int size);</span><br><span style="color: hsl(120, 100%, 40%);">+   void outs(int size);</span><br><span style="color: hsl(120, 100%, 40%);">+  u16 mem_access_word(int addr);</span><br><span style="color: hsl(120, 100%, 40%);">+        void push_word(u16 w);</span><br><span style="color: hsl(120, 100%, 40%);">+        void push_long(u32 w);</span><br><span style="color: hsl(120, 100%, 40%);">+        u16 pop_word(void);</span><br><span style="color: hsl(120, 100%, 40%);">+   u32 pop_long(void);</span><br><span style="color: hsl(120, 100%, 40%);">+   void x86emu_cpuid(void);</span><br><span> </span><br><span> #if  defined(__HAVE_INLINE_ASSEMBLER__) && !defined(PRIM_OPS_NO_REDEFINE_ASM)</span><br><span> </span><br><span style="color: hsl(0, 100%, 40%);">-#define        aaa_word(d)             aaa_word_asm(&M.x86.R_EFLG,d)</span><br><span style="color: hsl(0, 100%, 40%);">-#define aas_word(d)            aas_word_asm(&M.x86.R_EFLG,d)</span><br><span style="color: hsl(0, 100%, 40%);">-#define aad_word(d)            aad_word_asm(&M.x86.R_EFLG,d)</span><br><span style="color: hsl(0, 100%, 40%);">-#define aam_word(d)            aam_word_asm(&M.x86.R_EFLG,d)</span><br><span style="color: hsl(0, 100%, 40%);">-#define adc_byte(d,s)  adc_byte_asm(&M.x86.R_EFLG,d,s)</span><br><span style="color: hsl(0, 100%, 40%);">-#define adc_word(d,s)        adc_word_asm(&M.x86.R_EFLG,d,s)</span><br><span style="color: hsl(0, 100%, 40%);">-#define adc_long(d,s)        adc_long_asm(&M.x86.R_EFLG,d,s)</span><br><span style="color: hsl(0, 100%, 40%);">-#define add_byte(d,s)        add_byte_asm(&M.x86.R_EFLG,d,s)</span><br><span style="color: hsl(0, 100%, 40%);">-#define add_word(d,s)        add_word_asm(&M.x86.R_EFLG,d,s)</span><br><span style="color: hsl(0, 100%, 40%);">-#define add_long(d,s)        add_long_asm(&M.x86.R_EFLG,d,s)</span><br><span style="color: hsl(0, 100%, 40%);">-#define and_byte(d,s)        and_byte_asm(&M.x86.R_EFLG,d,s)</span><br><span style="color: hsl(0, 100%, 40%);">-#define and_word(d,s)        and_word_asm(&M.x86.R_EFLG,d,s)</span><br><span style="color: hsl(0, 100%, 40%);">-#define and_long(d,s)        and_long_asm(&M.x86.R_EFLG,d,s)</span><br><span style="color: hsl(0, 100%, 40%);">-#define cmp_byte(d,s)        cmp_byte_asm(&M.x86.R_EFLG,d,s)</span><br><span style="color: hsl(0, 100%, 40%);">-#define cmp_word(d,s)        cmp_word_asm(&M.x86.R_EFLG,d,s)</span><br><span style="color: hsl(0, 100%, 40%);">-#define cmp_long(d,s)        cmp_long_asm(&M.x86.R_EFLG,d,s)</span><br><span style="color: hsl(0, 100%, 40%);">-#define daa_byte(d)          daa_byte_asm(&M.x86.R_EFLG,d)</span><br><span style="color: hsl(0, 100%, 40%);">-#define das_byte(d)            das_byte_asm(&M.x86.R_EFLG,d)</span><br><span style="color: hsl(0, 100%, 40%);">-#define dec_byte(d)            dec_byte_asm(&M.x86.R_EFLG,d)</span><br><span style="color: hsl(0, 100%, 40%);">-#define dec_word(d)            dec_word_asm(&M.x86.R_EFLG,d)</span><br><span style="color: hsl(0, 100%, 40%);">-#define dec_long(d)            dec_long_asm(&M.x86.R_EFLG,d)</span><br><span style="color: hsl(0, 100%, 40%);">-#define inc_byte(d)            inc_byte_asm(&M.x86.R_EFLG,d)</span><br><span style="color: hsl(0, 100%, 40%);">-#define inc_word(d)            inc_word_asm(&M.x86.R_EFLG,d)</span><br><span style="color: hsl(0, 100%, 40%);">-#define inc_long(d)            inc_long_asm(&M.x86.R_EFLG,d)</span><br><span style="color: hsl(0, 100%, 40%);">-#define or_byte(d,s)   or_byte_asm(&M.x86.R_EFLG,d,s)</span><br><span style="color: hsl(0, 100%, 40%);">-#define or_word(d,s)  or_word_asm(&M.x86.R_EFLG,d,s)</span><br><span style="color: hsl(0, 100%, 40%);">-#define or_long(d,s)  or_long_asm(&M.x86.R_EFLG,d,s)</span><br><span style="color: hsl(0, 100%, 40%);">-#define neg_byte(s)           neg_byte_asm(&M.x86.R_EFLG,s)</span><br><span style="color: hsl(0, 100%, 40%);">-#define neg_word(s)            neg_word_asm(&M.x86.R_EFLG,s)</span><br><span style="color: hsl(0, 100%, 40%);">-#define neg_long(s)            neg_long_asm(&M.x86.R_EFLG,s)</span><br><span style="color: hsl(0, 100%, 40%);">-#define not_byte(s)            not_byte_asm(&M.x86.R_EFLG,s)</span><br><span style="color: hsl(0, 100%, 40%);">-#define not_word(s)            not_word_asm(&M.x86.R_EFLG,s)</span><br><span style="color: hsl(0, 100%, 40%);">-#define not_long(s)            not_long_asm(&M.x86.R_EFLG,s)</span><br><span style="color: hsl(0, 100%, 40%);">-#define rcl_byte(d,s)  rcl_byte_asm(&M.x86.R_EFLG,d,s)</span><br><span style="color: hsl(0, 100%, 40%);">-#define rcl_word(d,s)        rcl_word_asm(&M.x86.R_EFLG,d,s)</span><br><span style="color: hsl(0, 100%, 40%);">-#define rcl_long(d,s)        rcl_long_asm(&M.x86.R_EFLG,d,s)</span><br><span style="color: hsl(0, 100%, 40%);">-#define rcr_byte(d,s)        rcr_byte_asm(&M.x86.R_EFLG,d,s)</span><br><span style="color: hsl(0, 100%, 40%);">-#define rcr_word(d,s)        rcr_word_asm(&M.x86.R_EFLG,d,s)</span><br><span style="color: hsl(0, 100%, 40%);">-#define rcr_long(d,s)        rcr_long_asm(&M.x86.R_EFLG,d,s)</span><br><span style="color: hsl(0, 100%, 40%);">-#define rol_byte(d,s)        rol_byte_asm(&M.x86.R_EFLG,d,s)</span><br><span style="color: hsl(0, 100%, 40%);">-#define rol_word(d,s)        rol_word_asm(&M.x86.R_EFLG,d,s)</span><br><span style="color: hsl(0, 100%, 40%);">-#define rol_long(d,s)        rol_long_asm(&M.x86.R_EFLG,d,s)</span><br><span style="color: hsl(0, 100%, 40%);">-#define ror_byte(d,s)        ror_byte_asm(&M.x86.R_EFLG,d,s)</span><br><span style="color: hsl(0, 100%, 40%);">-#define ror_word(d,s)        ror_word_asm(&M.x86.R_EFLG,d,s)</span><br><span style="color: hsl(0, 100%, 40%);">-#define ror_long(d,s)        ror_long_asm(&M.x86.R_EFLG,d,s)</span><br><span style="color: hsl(0, 100%, 40%);">-#define shl_byte(d,s)        shl_byte_asm(&M.x86.R_EFLG,d,s)</span><br><span style="color: hsl(0, 100%, 40%);">-#define shl_word(d,s)        shl_word_asm(&M.x86.R_EFLG,d,s)</span><br><span style="color: hsl(0, 100%, 40%);">-#define shl_long(d,s)        shl_long_asm(&M.x86.R_EFLG,d,s)</span><br><span style="color: hsl(0, 100%, 40%);">-#define shr_byte(d,s)        shr_byte_asm(&M.x86.R_EFLG,d,s)</span><br><span style="color: hsl(0, 100%, 40%);">-#define shr_word(d,s)        shr_word_asm(&M.x86.R_EFLG,d,s)</span><br><span style="color: hsl(0, 100%, 40%);">-#define shr_long(d,s)        shr_long_asm(&M.x86.R_EFLG,d,s)</span><br><span style="color: hsl(0, 100%, 40%);">-#define sar_byte(d,s)        sar_byte_asm(&M.x86.R_EFLG,d,s)</span><br><span style="color: hsl(0, 100%, 40%);">-#define sar_word(d,s)        sar_word_asm(&M.x86.R_EFLG,d,s)</span><br><span style="color: hsl(0, 100%, 40%);">-#define sar_long(d,s)        sar_long_asm(&M.x86.R_EFLG,d,s)</span><br><span style="color: hsl(0, 100%, 40%);">-#define shld_word(d,fill,s)  shld_word_asm(&M.x86.R_EFLG,d,fill,s)</span><br><span style="color: hsl(0, 100%, 40%);">-#define shld_long(d,fill,s)    shld_long_asm(&M.x86.R_EFLG,d,fill,s)</span><br><span style="color: hsl(0, 100%, 40%);">-#define shrd_word(d,fill,s)    shrd_word_asm(&M.x86.R_EFLG,d,fill,s)</span><br><span style="color: hsl(0, 100%, 40%);">-#define shrd_long(d,fill,s)    shrd_long_asm(&M.x86.R_EFLG,d,fill,s)</span><br><span style="color: hsl(0, 100%, 40%);">-#define sbb_byte(d,s)  sbb_byte_asm(&M.x86.R_EFLG,d,s)</span><br><span style="color: hsl(0, 100%, 40%);">-#define sbb_word(d,s)        sbb_word_asm(&M.x86.R_EFLG,d,s)</span><br><span style="color: hsl(0, 100%, 40%);">-#define sbb_long(d,s)        sbb_long_asm(&M.x86.R_EFLG,d,s)</span><br><span style="color: hsl(0, 100%, 40%);">-#define sub_byte(d,s)        sub_byte_asm(&M.x86.R_EFLG,d,s)</span><br><span style="color: hsl(0, 100%, 40%);">-#define sub_word(d,s)        sub_word_asm(&M.x86.R_EFLG,d,s)</span><br><span style="color: hsl(0, 100%, 40%);">-#define sub_long(d,s)        sub_long_asm(&M.x86.R_EFLG,d,s)</span><br><span style="color: hsl(0, 100%, 40%);">-#define test_byte(d,s)       test_byte_asm(&M.x86.R_EFLG,d,s)</span><br><span style="color: hsl(0, 100%, 40%);">-#define test_word(d,s)      test_word_asm(&M.x86.R_EFLG,d,s)</span><br><span style="color: hsl(0, 100%, 40%);">-#define test_long(d,s)      test_long_asm(&M.x86.R_EFLG,d,s)</span><br><span style="color: hsl(0, 100%, 40%);">-#define xor_byte(d,s)       xor_byte_asm(&M.x86.R_EFLG,d,s)</span><br><span style="color: hsl(0, 100%, 40%);">-#define xor_word(d,s)        xor_word_asm(&M.x86.R_EFLG,d,s)</span><br><span style="color: hsl(0, 100%, 40%);">-#define xor_long(d,s)        xor_long_asm(&M.x86.R_EFLG,d,s)</span><br><span style="color: hsl(0, 100%, 40%);">-#define imul_byte(s) imul_byte_asm(&M.x86.R_EFLG,&M.x86.R_AX,M.x86.R_AL,s)</span><br><span style="color: hsl(0, 100%, 40%);">-#define imul_word(s)       imul_word_asm(&M.x86.R_EFLG,&M.x86.R_AX,&M.x86.R_DX,M.x86.R_AX,s)</span><br><span style="color: hsl(0, 100%, 40%);">-#define imul_long(s)       imul_long_asm(&M.x86.R_EFLG,&M.x86.R_EAX,&M.x86.R_EDX,M.x86.R_EAX,s)</span><br><span style="color: hsl(0, 100%, 40%);">-#define imul_long_direct(res_lo,res_hi,d,s)     imul_long_asm(&M.x86.R_EFLG,res_lo,res_hi,d,s)</span><br><span style="color: hsl(0, 100%, 40%);">-#define mul_byte(s)           mul_byte_asm(&M.x86.R_EFLG,&M.x86.R_AX,M.x86.R_AL,s)</span><br><span style="color: hsl(0, 100%, 40%);">-#define mul_word(s)         mul_word_asm(&M.x86.R_EFLG,&M.x86.R_AX,&M.x86.R_DX,M.x86.R_AX,s)</span><br><span style="color: hsl(0, 100%, 40%);">-#define mul_long(s)         mul_long_asm(&M.x86.R_EFLG,&M.x86.R_EAX,&M.x86.R_EDX,M.x86.R_EAX,s)</span><br><span style="color: hsl(0, 100%, 40%);">-#define idiv_byte(s)     idiv_byte_asm(&M.x86.R_EFLG,&M.x86.R_AL,&M.x86.R_AH,M.x86.R_AX,s)</span><br><span style="color: hsl(0, 100%, 40%);">-#define idiv_word(s)       idiv_word_asm(&M.x86.R_EFLG,&M.x86.R_AX,&M.x86.R_DX,M.x86.R_AX,M.x86.R_DX,s)</span><br><span style="color: hsl(0, 100%, 40%);">-#define idiv_long(s)    idiv_long_asm(&M.x86.R_EFLG,&M.x86.R_EAX,&M.x86.R_EDX,M.x86.R_EAX,M.x86.R_EDX,s)</span><br><span style="color: hsl(0, 100%, 40%);">-#define div_byte(s)         div_byte_asm(&M.x86.R_EFLG,&M.x86.R_AL,&M.x86.R_AH,M.x86.R_AX,s)</span><br><span style="color: hsl(0, 100%, 40%);">-#define div_word(s)         div_word_asm(&M.x86.R_EFLG,&M.x86.R_AX,&M.x86.R_DX,M.x86.R_AX,M.x86.R_DX,s)</span><br><span style="color: hsl(0, 100%, 40%);">-#define div_long(s)              div_long_asm(&M.x86.R_EFLG,&M.x86.R_EAX,&M.x86.R_EDX,M.x86.R_EAX,M.x86.R_EDX,s)</span><br><span style="color: hsl(120, 100%, 40%);">+#define    aaa_word(d)             aaa_word_asm(&M.x86.R_EFLG, d)</span><br><span style="color: hsl(120, 100%, 40%);">+#define aas_word(d)         aas_word_asm(&M.x86.R_EFLG, d)</span><br><span style="color: hsl(120, 100%, 40%);">+#define aad_word(d)         aad_word_asm(&M.x86.R_EFLG, d)</span><br><span style="color: hsl(120, 100%, 40%);">+#define aam_word(d)         aam_word_asm(&M.x86.R_EFLG, d)</span><br><span style="color: hsl(120, 100%, 40%);">+#define adc_byte(d, s)      adc_byte_asm(&M.x86.R_EFLG, d, s)</span><br><span style="color: hsl(120, 100%, 40%);">+#define adc_word(d, s)   adc_word_asm(&M.x86.R_EFLG, d, s)</span><br><span style="color: hsl(120, 100%, 40%);">+#define adc_long(d, s)   adc_long_asm(&M.x86.R_EFLG, d, s)</span><br><span style="color: hsl(120, 100%, 40%);">+#define add_byte(d, s)   add_byte_asm(&M.x86.R_EFLG, d, s)</span><br><span style="color: hsl(120, 100%, 40%);">+#define add_word(d, s)   add_word_asm(&M.x86.R_EFLG, d, s)</span><br><span style="color: hsl(120, 100%, 40%);">+#define add_long(d, s)   add_long_asm(&M.x86.R_EFLG, d, s)</span><br><span style="color: hsl(120, 100%, 40%);">+#define and_byte(d, s)   and_byte_asm(&M.x86.R_EFLG, d, s)</span><br><span style="color: hsl(120, 100%, 40%);">+#define and_word(d, s)   and_word_asm(&M.x86.R_EFLG, d, s)</span><br><span style="color: hsl(120, 100%, 40%);">+#define and_long(d, s)   and_long_asm(&M.x86.R_EFLG, d, s)</span><br><span style="color: hsl(120, 100%, 40%);">+#define cmp_byte(d, s)   cmp_byte_asm(&M.x86.R_EFLG, d, s)</span><br><span style="color: hsl(120, 100%, 40%);">+#define cmp_word(d, s)   cmp_word_asm(&M.x86.R_EFLG, d, s)</span><br><span style="color: hsl(120, 100%, 40%);">+#define cmp_long(d, s)   cmp_long_asm(&M.x86.R_EFLG, d, s)</span><br><span style="color: hsl(120, 100%, 40%);">+#define daa_byte(d)              daa_byte_asm(&M.x86.R_EFLG, d)</span><br><span style="color: hsl(120, 100%, 40%);">+#define das_byte(d)         das_byte_asm(&M.x86.R_EFLG, d)</span><br><span style="color: hsl(120, 100%, 40%);">+#define dec_byte(d)         dec_byte_asm(&M.x86.R_EFLG, d)</span><br><span style="color: hsl(120, 100%, 40%);">+#define dec_word(d)         dec_word_asm(&M.x86.R_EFLG, d)</span><br><span style="color: hsl(120, 100%, 40%);">+#define dec_long(d)         dec_long_asm(&M.x86.R_EFLG, d)</span><br><span style="color: hsl(120, 100%, 40%);">+#define inc_byte(d)         inc_byte_asm(&M.x86.R_EFLG, d)</span><br><span style="color: hsl(120, 100%, 40%);">+#define inc_word(d)         inc_word_asm(&M.x86.R_EFLG, d)</span><br><span style="color: hsl(120, 100%, 40%);">+#define inc_long(d)         inc_long_asm(&M.x86.R_EFLG, d)</span><br><span style="color: hsl(120, 100%, 40%);">+#define or_byte(d, s)       or_byte_asm(&M.x86.R_EFLG, d, s)</span><br><span style="color: hsl(120, 100%, 40%);">+#define or_word(d, s)     or_word_asm(&M.x86.R_EFLG, d, s)</span><br><span style="color: hsl(120, 100%, 40%);">+#define or_long(d, s)     or_long_asm(&M.x86.R_EFLG, d, s)</span><br><span style="color: hsl(120, 100%, 40%);">+#define neg_byte(s)               neg_byte_asm(&M.x86.R_EFLG, s)</span><br><span style="color: hsl(120, 100%, 40%);">+#define neg_word(s)         neg_word_asm(&M.x86.R_EFLG, s)</span><br><span style="color: hsl(120, 100%, 40%);">+#define neg_long(s)         neg_long_asm(&M.x86.R_EFLG, s)</span><br><span style="color: hsl(120, 100%, 40%);">+#define not_byte(s)         not_byte_asm(&M.x86.R_EFLG, s)</span><br><span style="color: hsl(120, 100%, 40%);">+#define not_word(s)         not_word_asm(&M.x86.R_EFLG, s)</span><br><span style="color: hsl(120, 100%, 40%);">+#define not_long(s)         not_long_asm(&M.x86.R_EFLG, s)</span><br><span style="color: hsl(120, 100%, 40%);">+#define rcl_byte(d, s)      rcl_byte_asm(&M.x86.R_EFLG, d, s)</span><br><span style="color: hsl(120, 100%, 40%);">+#define rcl_word(d, s)   rcl_word_asm(&M.x86.R_EFLG, d, s)</span><br><span style="color: hsl(120, 100%, 40%);">+#define rcl_long(d, s)   rcl_long_asm(&M.x86.R_EFLG, d, s)</span><br><span style="color: hsl(120, 100%, 40%);">+#define rcr_byte(d, s)   rcr_byte_asm(&M.x86.R_EFLG, d, s)</span><br><span style="color: hsl(120, 100%, 40%);">+#define rcr_word(d, s)   rcr_word_asm(&M.x86.R_EFLG, d, s)</span><br><span style="color: hsl(120, 100%, 40%);">+#define rcr_long(d, s)   rcr_long_asm(&M.x86.R_EFLG, d, s)</span><br><span style="color: hsl(120, 100%, 40%);">+#define rol_byte(d, s)   rol_byte_asm(&M.x86.R_EFLG, d, s)</span><br><span style="color: hsl(120, 100%, 40%);">+#define rol_word(d, s)   rol_word_asm(&M.x86.R_EFLG, d, s)</span><br><span style="color: hsl(120, 100%, 40%);">+#define rol_long(d, s)   rol_long_asm(&M.x86.R_EFLG, d, s)</span><br><span style="color: hsl(120, 100%, 40%);">+#define ror_byte(d, s)   ror_byte_asm(&M.x86.R_EFLG, d, s)</span><br><span style="color: hsl(120, 100%, 40%);">+#define ror_word(d, s)   ror_word_asm(&M.x86.R_EFLG, d, s)</span><br><span style="color: hsl(120, 100%, 40%);">+#define ror_long(d, s)   ror_long_asm(&M.x86.R_EFLG, d, s)</span><br><span style="color: hsl(120, 100%, 40%);">+#define shl_byte(d, s)   shl_byte_asm(&M.x86.R_EFLG, d, s)</span><br><span style="color: hsl(120, 100%, 40%);">+#define shl_word(d, s)   shl_word_asm(&M.x86.R_EFLG, d, s)</span><br><span style="color: hsl(120, 100%, 40%);">+#define shl_long(d, s)   shl_long_asm(&M.x86.R_EFLG, d, s)</span><br><span style="color: hsl(120, 100%, 40%);">+#define shr_byte(d, s)   shr_byte_asm(&M.x86.R_EFLG, d, s)</span><br><span style="color: hsl(120, 100%, 40%);">+#define shr_word(d, s)   shr_word_asm(&M.x86.R_EFLG, d, s)</span><br><span style="color: hsl(120, 100%, 40%);">+#define shr_long(d, s)   shr_long_asm(&M.x86.R_EFLG, d, s)</span><br><span style="color: hsl(120, 100%, 40%);">+#define sar_byte(d, s)   sar_byte_asm(&M.x86.R_EFLG, d, s)</span><br><span style="color: hsl(120, 100%, 40%);">+#define sar_word(d, s)   sar_word_asm(&M.x86.R_EFLG, d, s)</span><br><span style="color: hsl(120, 100%, 40%);">+#define sar_long(d, s)   sar_long_asm(&M.x86.R_EFLG, d, s)</span><br><span style="color: hsl(120, 100%, 40%);">+#define shld_word(d, fill, s)    shld_word_asm(&M.x86.R_EFLG, d, fill, s)</span><br><span style="color: hsl(120, 100%, 40%);">+#define shld_long(d, fill, s)     shld_long_asm(&M.x86.R_EFLG, d, fill, s)</span><br><span style="color: hsl(120, 100%, 40%);">+#define shrd_word(d, fill, s)     shrd_word_asm(&M.x86.R_EFLG, d, fill, s)</span><br><span style="color: hsl(120, 100%, 40%);">+#define shrd_long(d, fill, s)     shrd_long_asm(&M.x86.R_EFLG, d, fill, s)</span><br><span style="color: hsl(120, 100%, 40%);">+#define sbb_byte(d, s)    sbb_byte_asm(&M.x86.R_EFLG, d, s)</span><br><span style="color: hsl(120, 100%, 40%);">+#define sbb_word(d, s)   sbb_word_asm(&M.x86.R_EFLG, d, s)</span><br><span style="color: hsl(120, 100%, 40%);">+#define sbb_long(d, s)   sbb_long_asm(&M.x86.R_EFLG, d, s)</span><br><span style="color: hsl(120, 100%, 40%);">+#define sub_byte(d, s)   sub_byte_asm(&M.x86.R_EFLG, d, s)</span><br><span style="color: hsl(120, 100%, 40%);">+#define sub_word(d, s)   sub_word_asm(&M.x86.R_EFLG, d, s)</span><br><span style="color: hsl(120, 100%, 40%);">+#define sub_long(d, s)   sub_long_asm(&M.x86.R_EFLG, d, s)</span><br><span style="color: hsl(120, 100%, 40%);">+#define test_byte(d, s)  test_byte_asm(&M.x86.R_EFLG, d, s)</span><br><span style="color: hsl(120, 100%, 40%);">+#define test_word(d, s) test_word_asm(&M.x86.R_EFLG, d, s)</span><br><span style="color: hsl(120, 100%, 40%);">+#define test_long(d, s) test_long_asm(&M.x86.R_EFLG, d, s)</span><br><span style="color: hsl(120, 100%, 40%);">+#define xor_byte(d, s)  xor_byte_asm(&M.x86.R_EFLG, d, s)</span><br><span style="color: hsl(120, 100%, 40%);">+#define xor_word(d, s)   xor_word_asm(&M.x86.R_EFLG, d, s)</span><br><span style="color: hsl(120, 100%, 40%);">+#define xor_long(d, s)   xor_long_asm(&M.x86.R_EFLG, d, s)</span><br><span style="color: hsl(120, 100%, 40%);">+#define imul_byte(s)     imul_byte_asm(&M.x86.R_EFLG, &M.x86.R_AX, M.x86.R_AL, s)</span><br><span style="color: hsl(120, 100%, 40%);">+#define imul_word(s)  imul_word_asm(&M.x86.R_EFLG, &M.x86.R_AX, &M.x86.R_DX, M.x86.R_AX, s)</span><br><span style="color: hsl(120, 100%, 40%);">+#define imul_long(s) imul_long_asm(&M.x86.R_EFLG, &M.x86.R_EAX, &M.x86.R_EDX, M.x86.R_EAX, s)</span><br><span style="color: hsl(120, 100%, 40%);">+#define imul_long_direct(res_lo, res_hi, d, s)    imul_long_asm(&M.x86.R_EFLG, res_lo, res_hi, d, s)</span><br><span style="color: hsl(120, 100%, 40%);">+#define mul_byte(s)             mul_byte_asm(&M.x86.R_EFLG, &M.x86.R_AX, M.x86.R_AL, s)</span><br><span style="color: hsl(120, 100%, 40%);">+#define mul_word(s)            mul_word_asm(&M.x86.R_EFLG, &M.x86.R_AX, &M.x86.R_DX, M.x86.R_AX, s)</span><br><span style="color: hsl(120, 100%, 40%);">+#define mul_long(s)           mul_long_asm(&M.x86.R_EFLG, &M.x86.R_EAX, &M.x86.R_EDX, M.x86.R_EAX, s)</span><br><span style="color: hsl(120, 100%, 40%);">+#define idiv_byte(s)       idiv_byte_asm(&M.x86.R_EFLG, &M.x86.R_AL, &M.x86.R_AH, M.x86.R_AX, s)</span><br><span style="color: hsl(120, 100%, 40%);">+#define idiv_word(s) idiv_word_asm(&M.x86.R_EFLG, &M.x86.R_AX, &M.x86.R_DX, M.x86.R_AX, M.x86.R_DX, s)</span><br><span style="color: hsl(120, 100%, 40%);">+#define idiv_long(s)     idiv_long_asm(&M.x86.R_EFLG, &M.x86.R_EAX, &M.x86.R_EDX, M.x86.R_EAX, M.x86.R_EDX, s)</span><br><span style="color: hsl(120, 100%, 40%);">+#define div_byte(s)          div_byte_asm(&M.x86.R_EFLG, &M.x86.R_AL, &M.x86.R_AH, M.x86.R_AX, s)</span><br><span style="color: hsl(120, 100%, 40%);">+#define div_word(s)           div_word_asm(&M.x86.R_EFLG, &M.x86.R_AX, &M.x86.R_DX, M.x86.R_AX, M.x86.R_DX, s)</span><br><span style="color: hsl(120, 100%, 40%);">+#define div_long(s)               div_long_asm(&M.x86.R_EFLG, &M.x86.R_EAX, &M.x86.R_EDX, M.x86.R_EAX, M.x86.R_EDX, s)</span><br><span> </span><br><span> #endif</span><br><span> </span><br><span style="color: hsl(0, 100%, 40%);">-#ifdef  __cplusplus</span><br><span style="color: hsl(0, 100%, 40%);">-}                                          /* End of "C" linkage for C++         */</span><br><span style="color: hsl(120, 100%, 40%);">+#ifdef __cplusplus</span><br><span style="color: hsl(120, 100%, 40%);">+} /* End of "C" linkage for C++           */</span><br><span> #endif</span><br><span style="color: hsl(0, 100%, 40%);">-</span><br><span> #endif /* __X86EMU_PRIM_OPS_H */</span><br><span>diff --git a/src/device/oprom/x86emu/x86emui.h b/src/device/oprom/x86emu/x86emui.h</span><br><span>index 741153c..956fe75 100644</span><br><span>--- a/src/device/oprom/x86emu/x86emui.h</span><br><span>+++ b/src/device/oprom/x86emu/x86emui.h</span><br><span>@@ -1,10 +1,10 @@</span><br><span> /****************************************************************************</span><br><span> *</span><br><span style="color: hsl(0, 100%, 40%);">-*                                                Realmode X86 Emulator Library</span><br><span style="color: hsl(120, 100%, 40%);">+*                        Realmode X86 Emulator Library</span><br><span> *</span><br><span style="color: hsl(0, 100%, 40%);">-*             Copyright (C) 1996-1999 SciTech Software, Inc.</span><br><span style="color: hsl(0, 100%, 40%);">-*                                      Copyright (C) David Mosberger-Tang</span><br><span style="color: hsl(0, 100%, 40%);">-*                                           Copyright (C) 1999 Egbert Eich</span><br><span style="color: hsl(120, 100%, 40%);">+*            Copyright (C) 1996-1999 SciTech Software, Inc.</span><br><span style="color: hsl(120, 100%, 40%);">+*               Copyright (C) David Mosberger-Tang</span><br><span style="color: hsl(120, 100%, 40%);">+*           Copyright (C) 1999 Egbert Eich</span><br><span> *</span><br><span> *  ========================================================================</span><br><span> *</span><br><span>@@ -28,13 +28,13 @@</span><br><span> *</span><br><span> *  ========================================================================</span><br><span> *</span><br><span style="color: hsl(0, 100%, 40%);">-* Language:               ANSI C</span><br><span style="color: hsl(120, 100%, 40%);">+* Language:     ANSI C</span><br><span> * Environment:        Any</span><br><span style="color: hsl(0, 100%, 40%);">-* Developer:    Kendall Bennett</span><br><span style="color: hsl(120, 100%, 40%);">+* Developer:        Kendall Bennett</span><br><span> *</span><br><span style="color: hsl(0, 100%, 40%);">-* Description:  Header file for system specific functions. These functions</span><br><span style="color: hsl(0, 100%, 40%);">-*                         are always compiled and linked in the OS dependent libraries,</span><br><span style="color: hsl(0, 100%, 40%);">-*                          and never in a binary portable driver.</span><br><span style="color: hsl(120, 100%, 40%);">+* Description:  Header file for system specific functions. These functions</span><br><span style="color: hsl(120, 100%, 40%);">+*           are always compiled and linked in the OS dependent libraries,</span><br><span style="color: hsl(120, 100%, 40%);">+*                and never in a binary portable driver.</span><br><span> *</span><br><span> ****************************************************************************/</span><br><span> </span><br><span>@@ -57,7 +57,7 @@</span><br><span> #ifdef __cplusplus</span><br><span> #define   X86EMU_UNUSED(v)</span><br><span> #else</span><br><span style="color: hsl(0, 100%, 40%);">-#define        X86EMU_UNUSED(v)        v __attribute__((unused))</span><br><span style="color: hsl(120, 100%, 40%);">+#define      X86EMU_UNUSED(v) v __attribute__((unused))</span><br><span> #endif</span><br><span> </span><br><span> #include "x86emu/x86emu.h"</span><br><span>@@ -76,26 +76,25 @@</span><br><span> #endif</span><br><span> /*--------------------------- Inline Functions ----------------------------*/</span><br><span> </span><br><span style="color: hsl(0, 100%, 40%);">-#ifdef  __cplusplus</span><br><span style="color: hsl(0, 100%, 40%);">-extern "C" {                                  /* Use "C" linkage when in C++ mode */</span><br><span style="color: hsl(120, 100%, 40%);">+#ifdef __cplusplus</span><br><span style="color: hsl(120, 100%, 40%);">+extern "C" {            /* Use "C" linkage when in C++ mode */</span><br><span> #endif</span><br><span> </span><br><span style="color: hsl(0, 100%, 40%);">-extern u8         (X86APIP sys_rdb)(u32 addr);</span><br><span style="color: hsl(0, 100%, 40%);">-extern u16  (X86APIP sys_rdw)(u32 addr);</span><br><span style="color: hsl(0, 100%, 40%);">-extern u32  (X86APIP sys_rdl)(u32 addr);</span><br><span style="color: hsl(0, 100%, 40%);">-extern void (X86APIP sys_wrb)(u32 addr,u8 val);</span><br><span style="color: hsl(0, 100%, 40%);">-extern void (X86APIP sys_wrw)(u32 addr,u16 val);</span><br><span style="color: hsl(0, 100%, 40%);">-extern void (X86APIP sys_wrl)(u32 addr,u32 val);</span><br><span style="color: hsl(120, 100%, 40%);">+   extern u8(X86APIP sys_rdb) (u32 addr);</span><br><span style="color: hsl(120, 100%, 40%);">+        extern u16(X86APIP sys_rdw) (u32 addr);</span><br><span style="color: hsl(120, 100%, 40%);">+       extern u32(X86APIP sys_rdl) (u32 addr);</span><br><span style="color: hsl(120, 100%, 40%);">+       extern void (X86APIP sys_wrb) (u32 addr, u8 val);</span><br><span style="color: hsl(120, 100%, 40%);">+     extern void (X86APIP sys_wrw) (u32 addr, u16 val);</span><br><span style="color: hsl(120, 100%, 40%);">+    extern void (X86APIP sys_wrl) (u32 addr, u32 val);</span><br><span> </span><br><span style="color: hsl(0, 100%, 40%);">-extern u8         (X86APIP sys_inb)(X86EMU_pioAddr addr);</span><br><span style="color: hsl(0, 100%, 40%);">-extern u16       (X86APIP sys_inw)(X86EMU_pioAddr addr);</span><br><span style="color: hsl(0, 100%, 40%);">-extern u32       (X86APIP sys_inl)(X86EMU_pioAddr addr);</span><br><span style="color: hsl(0, 100%, 40%);">-extern void (X86APIP sys_outb)(X86EMU_pioAddr addr,u8 val);</span><br><span style="color: hsl(0, 100%, 40%);">-extern void (X86APIP sys_outw)(X86EMU_pioAddr addr,u16 val);</span><br><span style="color: hsl(0, 100%, 40%);">-extern void       (X86APIP sys_outl)(X86EMU_pioAddr addr,u32 val);</span><br><span style="color: hsl(120, 100%, 40%);">+      extern u8(X86APIP sys_inb) (X86EMU_pioAddr addr);</span><br><span style="color: hsl(120, 100%, 40%);">+     extern u16(X86APIP sys_inw) (X86EMU_pioAddr addr);</span><br><span style="color: hsl(120, 100%, 40%);">+    extern u32(X86APIP sys_inl) (X86EMU_pioAddr addr);</span><br><span style="color: hsl(120, 100%, 40%);">+    extern void (X86APIP sys_outb) (X86EMU_pioAddr addr, u8 val);</span><br><span style="color: hsl(120, 100%, 40%);">+ extern void (X86APIP sys_outw) (X86EMU_pioAddr addr, u16 val);</span><br><span style="color: hsl(120, 100%, 40%);">+        extern void (X86APIP sys_outl) (X86EMU_pioAddr addr, u32 val);</span><br><span> </span><br><span style="color: hsl(0, 100%, 40%);">-#ifdef  __cplusplus</span><br><span style="color: hsl(0, 100%, 40%);">-}                                          /* End of "C" linkage for C++         */</span><br><span style="color: hsl(120, 100%, 40%);">+#ifdef __cplusplus</span><br><span style="color: hsl(120, 100%, 40%);">+} /* End of "C" linkage for C++           */</span><br><span> #endif</span><br><span style="color: hsl(0, 100%, 40%);">-</span><br><span> #endif /* __X86EMU_X86EMUI_H */</span><br><span></span><br></pre><p>To view, visit <a href="https://review.coreboot.org/26364">change 26364</a>. To unsubscribe, or for help writing mail filters, visit <a href="https://review.coreboot.org/settings">settings</a>.</p><div itemscope itemtype="http://schema.org/EmailMessage"><div itemscope itemprop="action" itemtype="http://schema.org/ViewAction"><link itemprop="url" href="https://review.coreboot.org/26364"/><meta itemprop="name" content="View Change"/></div></div>

<div style="display:none"> Gerrit-Project: coreboot </div>
<div style="display:none"> Gerrit-Branch: master </div>
<div style="display:none"> Gerrit-MessageType: newchange </div>
<div style="display:none"> Gerrit-Change-Id: Ief5cc4178095bb617f770e6c078770a8f1af0133 </div>
<div style="display:none"> Gerrit-Change-Number: 26364 </div>
<div style="display:none"> Gerrit-PatchSet: 1 </div>
<div style="display:none"> Gerrit-Owner: Elyes HAOUAS <ehaouas@noos.fr> </div>