Author: aandrejevic Date: Sat Sep 28 18:56:58 2013 New Revision: 60441
URL: http://svn.reactos.org/svn/reactos?rev=60441&view=rev Log: [SOFT386] Stubplement opcode group handlers.
Added: branches/ntvdm/lib/soft386/opgroups.c (with props) branches/ntvdm/lib/soft386/opgroups.h (with props) Modified: branches/ntvdm/lib/soft386/CMakeLists.txt branches/ntvdm/lib/soft386/opcodes.c
Modified: branches/ntvdm/lib/soft386/CMakeLists.txt URL: http://svn.reactos.org/svn/reactos/branches/ntvdm/lib/soft386/CMakeLists.txt... ============================================================================== --- branches/ntvdm/lib/soft386/CMakeLists.txt [iso-8859-1] (original) +++ branches/ntvdm/lib/soft386/CMakeLists.txt [iso-8859-1] Sat Sep 28 18:56:58 2013 @@ -4,6 +4,7 @@ list(APPEND SOURCE soft386.c opcodes.c + opgroups.c common.c)
add_library(soft386 ${SOURCE})
Modified: branches/ntvdm/lib/soft386/opcodes.c URL: http://svn.reactos.org/svn/reactos/branches/ntvdm/lib/soft386/opcodes.c?rev=... ============================================================================== --- branches/ntvdm/lib/soft386/opcodes.c [iso-8859-1] (original) +++ branches/ntvdm/lib/soft386/opcodes.c [iso-8859-1] Sat Sep 28 18:56:58 2013 @@ -18,6 +18,7 @@
#include <soft386.h> #include "opcodes.h" +#include "opgroups.h" #include "common.h"
/* PUBLIC VARIABLES ***********************************************************/ @@ -153,10 +154,10 @@ Soft386OpcodeShortConditionalJmp, Soft386OpcodeShortConditionalJmp, Soft386OpcodeShortConditionalJmp, - NULL, // TODO: OPCODE 0x80 NOT SUPPORTED - NULL, // TODO: OPCODE 0x81 NOT SUPPORTED - NULL, // TODO: OPCODE 0x82 NOT SUPPORTED - NULL, // TODO: OPCODE 0x83 NOT SUPPORTED + Soft386OpcodeGroup80, + Soft386OpcodeGroup81, + Soft386OpcodeGroup82, + Soft386OpcodeGroup83, Soft386OpcodeTestByteModrm, Soft386OpcodeTestModrm, Soft386OpcodeXchgByteModrm, @@ -168,7 +169,7 @@ Soft386OpcodeMovStoreSeg, Soft386OpcodeLea, Soft386OpcodeMovLoadSeg, - NULL, // TODO: OPCODE 0x8F NOT SUPPORTED + Soft386OpcodeGroup8F, Soft386OpcodeNop, Soft386OpcodeExchangeEax, Soft386OpcodeExchangeEax, @@ -217,14 +218,14 @@ Soft386OpcodeMovRegImm, Soft386OpcodeMovRegImm, Soft386OpcodeMovRegImm, - NULL, // TODO: OPCODE 0xC0 NOT SUPPORTED - NULL, // TODO: OPCODE 0xC1 NOT SUPPORTED + Soft386OpcodeGroupC0, + Soft386OpcodeGroupC1, Soft386OpcodeRet, Soft386OpcodeRet, Soft386OpcodeLdsLes, Soft386OpcodeLdsLes, - NULL, // TODO: OPCODE 0xC6 NOT SUPPORTED - NULL, // TODO: OPCODE 0xC7 NOT SUPPORTED + Soft386OpcodeGroupC6, + Soft386OpcodeGroupC7, Soft386OpcodeEnter, Soft386OpcodeLeave, Soft386OpcodeRetFarImm, @@ -233,10 +234,10 @@ Soft386OpcodeInt, Soft386OpcodeInt, Soft386OpcodeIret, - NULL, // TODO: OPCODE 0xD0 NOT SUPPORTED - NULL, // TODO: OPCODE 0xD1 NOT SUPPORTED - NULL, // TODO: OPCODE 0xD2 NOT SUPPORTED - NULL, // TODO: OPCODE 0xD3 NOT SUPPORTED + Soft386OpcodeGroupD0, + Soft386OpcodeGroupD1, + Soft386OpcodeGroupD2, + Soft386OpcodeGroupD3, Soft386OpcodeAam, Soft386OpcodeAad, NULL, // TODO: OPCODE 0xD6 NOT SUPPORTED @@ -271,16 +272,16 @@ Soft386OpcodePrefix, Soft386OpcodeHalt, Soft386OpcodeComplCarry, - NULL, // TODO: OPCODE 0xF6 NOT SUPPORTED - NULL, // TODO: OPCODE 0xF7 NOT SUPPORTED + Soft386OpcodeGroupF6, + Soft386OpcodeGroupF7, Soft386OpcodeClearCarry, Soft386OpcodeSetCarry, Soft386OpcodeClearInt, Soft386OpcodeSetInt, Soft386OpcodeClearDir, Soft386OpcodeSetDir, - NULL, // TODO: OPCODE 0xFE NOT SUPPORTED - NULL, // TODO: OPCODE 0xFF NOT SUPPORTED + Soft386OpcodeGroupFE, + Soft386OpcodeGroupFF, };
/* PUBLIC FUNCTIONS ***********************************************************/
Added: branches/ntvdm/lib/soft386/opgroups.c URL: http://svn.reactos.org/svn/reactos/branches/ntvdm/lib/soft386/opgroups.c?rev... ============================================================================== --- branches/ntvdm/lib/soft386/opgroups.c (added) +++ branches/ntvdm/lib/soft386/opgroups.c [iso-8859-1] Sat Sep 28 18:56:58 2013 @@ -0,0 +1,127 @@ +/* + * COPYRIGHT: GPL - See COPYING in the top level directory + * PROJECT: 386/486 CPU Emulation Library + * FILE: opgroups.c + * PURPOSE: Opcode group handlers. + * PROGRAMMERS: Aleksandar Andrejevic <theflash AT sdf DOT lonestar DOT org> + */ + +/* INCLUDES *******************************************************************/ + +// #define WIN32_NO_STATUS +// #define _INC_WINDOWS +#include <windef.h> + +// #define NDEBUG +#include <debug.h> + +#include <soft386.h> +#include "opcodes.h" +#include "common.h" + +/* PUBLIC FUNCTIONS ***********************************************************/ + +SOFT386_OPCODE_HANDLER(Soft386OpcodeGroup80) +{ + UNIMPLEMENTED; + return FALSE; // TODO: NOT IMPLEMENTED +} + +SOFT386_OPCODE_HANDLER(Soft386OpcodeGroup81) +{ + UNIMPLEMENTED; + return FALSE; // TODO: NOT IMPLEMENTED +} + +SOFT386_OPCODE_HANDLER(Soft386OpcodeGroup82) +{ + UNIMPLEMENTED; + return FALSE; // TODO: NOT IMPLEMENTED +} + +SOFT386_OPCODE_HANDLER(Soft386OpcodeGroup83) +{ + UNIMPLEMENTED; + return FALSE; // TODO: NOT IMPLEMENTED +} + +SOFT386_OPCODE_HANDLER(Soft386OpcodeGroup8F) +{ + UNIMPLEMENTED; + return FALSE; // TODO: NOT IMPLEMENTED +} + +SOFT386_OPCODE_HANDLER(Soft386OpcodeGroupC0) +{ + UNIMPLEMENTED; + return FALSE; // TODO: NOT IMPLEMENTED +} + +SOFT386_OPCODE_HANDLER(Soft386OpcodeGroupC1) +{ + UNIMPLEMENTED; + return FALSE; // TODO: NOT IMPLEMENTED +} + +SOFT386_OPCODE_HANDLER(Soft386OpcodeGroupC6) +{ + UNIMPLEMENTED; + return FALSE; // TODO: NOT IMPLEMENTED +} + +SOFT386_OPCODE_HANDLER(Soft386OpcodeGroupC7) +{ + UNIMPLEMENTED; + return FALSE; // TODO: NOT IMPLEMENTED +} + +SOFT386_OPCODE_HANDLER(Soft386OpcodeGroupD0) +{ + UNIMPLEMENTED; + return FALSE; // TODO: NOT IMPLEMENTED +} + +SOFT386_OPCODE_HANDLER(Soft386OpcodeGroupD1) +{ + UNIMPLEMENTED; + return FALSE; // TODO: NOT IMPLEMENTED +} + +SOFT386_OPCODE_HANDLER(Soft386OpcodeGroupD2) +{ + UNIMPLEMENTED; + return FALSE; // TODO: NOT IMPLEMENTED +} + +SOFT386_OPCODE_HANDLER(Soft386OpcodeGroupD3) +{ + UNIMPLEMENTED; + return FALSE; // TODO: NOT IMPLEMENTED +} + +SOFT386_OPCODE_HANDLER(Soft386OpcodeGroupF6) +{ + UNIMPLEMENTED; + return FALSE; // TODO: NOT IMPLEMENTED +} + +SOFT386_OPCODE_HANDLER(Soft386OpcodeGroupF7) +{ + UNIMPLEMENTED; + return FALSE; // TODO: NOT IMPLEMENTED +} + +SOFT386_OPCODE_HANDLER(Soft386OpcodeGroupFE) +{ + UNIMPLEMENTED; + return FALSE; // TODO: NOT IMPLEMENTED +} + +SOFT386_OPCODE_HANDLER(Soft386OpcodeGroupFF) +{ + UNIMPLEMENTED; + return FALSE; // TODO: NOT IMPLEMENTED +} + +/* EOF */ +
Propchange: branches/ntvdm/lib/soft386/opgroups.c ------------------------------------------------------------------------------ svn:eol-style = native
Added: branches/ntvdm/lib/soft386/opgroups.h URL: http://svn.reactos.org/svn/reactos/branches/ntvdm/lib/soft386/opgroups.h?rev... ============================================================================== --- branches/ntvdm/lib/soft386/opgroups.h (added) +++ branches/ntvdm/lib/soft386/opgroups.h [iso-8859-1] Sat Sep 28 18:56:58 2013 @@ -0,0 +1,35 @@ +/* + * COPYRIGHT: GPL - See COPYING in the top level directory + * PROJECT: 386/486 CPU Emulation Library + * FILE: opgroups.h + * PURPOSE: Opcode group handlers. (header file) + * PROGRAMMERS: Aleksandar Andrejevic <theflash AT sdf DOT lonestar DOT org> + */ + +#ifndef _OPGROUPS_H_ +#define _OPGROUPS_H_ + +/* DEFINES ********************************************************************/ + +SOFT386_OPCODE_HANDLER(Soft386OpcodeGroup80); +SOFT386_OPCODE_HANDLER(Soft386OpcodeGroup81); +SOFT386_OPCODE_HANDLER(Soft386OpcodeGroup82); +SOFT386_OPCODE_HANDLER(Soft386OpcodeGroup83); +SOFT386_OPCODE_HANDLER(Soft386OpcodeGroup8F); +SOFT386_OPCODE_HANDLER(Soft386OpcodeGroupC0); +SOFT386_OPCODE_HANDLER(Soft386OpcodeGroupC1); +SOFT386_OPCODE_HANDLER(Soft386OpcodeGroupC6); +SOFT386_OPCODE_HANDLER(Soft386OpcodeGroupC7); +SOFT386_OPCODE_HANDLER(Soft386OpcodeGroupD0); +SOFT386_OPCODE_HANDLER(Soft386OpcodeGroupD1); +SOFT386_OPCODE_HANDLER(Soft386OpcodeGroupD2); +SOFT386_OPCODE_HANDLER(Soft386OpcodeGroupD3); +SOFT386_OPCODE_HANDLER(Soft386OpcodeGroupF6); +SOFT386_OPCODE_HANDLER(Soft386OpcodeGroupF7); +SOFT386_OPCODE_HANDLER(Soft386OpcodeGroupFE); +SOFT386_OPCODE_HANDLER(Soft386OpcodeGroupFF); + +#endif // _OPGROUPS_H_ + +/* EOF */ +
Propchange: branches/ntvdm/lib/soft386/opgroups.h ------------------------------------------------------------------------------ svn:eol-style = native